Libraries.Language.Compile.Translate.ComparisonOpcode Documentation

Inherits from: Libraries.Language.Compile.Translate.BinaryOpcode, Libraries.Language.Object, Libraries.Language.Compile.Translate.QuorumOpcode

Summary

Variable Summary Table

VariablesDescription
boolean isTextCompare
boolean isRightUndefined
boolean isLeftUndefined
integer textCompareValue
boolean isTextEquality

Actions Summary Table

ActionsDescription
CalculateBytecodeOffset(Libraries.Language.Compile.Symbol.Variable variable)
Compare(Libraries.Language.Object object)This action compares two object hash codes and returns an integer.
Equals(Libraries.Language.Object object)This action determines if two objects are equal based on their hash code values.
Evaluate(Libraries.Language.Compile.Interpreter.Runtime runtime)
GetBytecodeOffset()
GetHashCode()This action gets the hash code for an object.
GetIsIfExpression()
GetJavaLeftOpcode()types have been convert
GetJavaLeftOpcode2()if it's true, push true and ba
GetJavaOpcode()types have been convert
GetJavaRightOpcode()types have been convert
GetJavaRightOpcode2()if it's false, push false and ba
GetLeftOpcode()
GetLocation()
GetMethodWriter()
GetOperation()
GetRightOpcode()
GetTemplateCopy()if there is a second one, do that as we
GetType()
SetBytecodeWriteOffset(integer offset)
SetBytecodeWriteOffsetToAllChildren(integer offset)
SetIsIfExpression(boolean isInIf)
SetJavaLeftOpcode(integer op)
SetJavaLeftOpcode2(integer op)
SetJavaOpcode(integer op)
SetJavaRightOpcode(integer op)
SetJavaRightOpcode2(integer op)
SetLeftOpcode(Libraries.Language.Compile.Translate.QuorumOpcode op)
SetLocation(Libraries.Language.Compile.Location loc)
SetMethodWriter(Libraries.Language.Compile.Translate.JavaBytecodeMethodWriter writer)
SetMethodWriterToAllChildren(Libraries.Language.Compile.Translate.JavaBytecodeMethodWriter writer)
SetOperation(Libraries.Language.Compile.Symbol.Operation op)
SetRightOpcode(Libraries.Language.Compile.Translate.QuorumOpcode op)
SetType(Libraries.Language.Compile.Symbol.Type type)
VisitLineNumber()
Write()
WriteJavaScript()types have been convert
WriteLeft()
WriteRight()if there is a second one, do that as we

Actions Documentation

CalculateBytecodeOffset(Libraries.Language.Compile.Symbol.Variable variable)

Parameters

Return

integer

Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Example Code

Object o
        Object t
        integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smalle

Parameters

Return

integer: The Compare result, Smaller, Equal, or Larger.

Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Example Code

use Libraries.Language.Object
        use Libraries.Language.Types.Text
        Object o
        Text t
        boolean result = o:Equals(

Parameters

Return

boolean: True if the hash codes are equal and false if they are not equal.

Evaluate(Libraries.Language.Compile.Interpreter.Runtime runtime)

Parameters

GetBytecodeOffset()

Return

integer

GetHashCode()

This action gets the hash code for an object.

Example Code

Object o
        integer hash = o:GetHashCode

Return

integer: The integer hash code of the object.

GetIsIfExpression()

Return

boolean

GetJavaLeftOpcode()

types have been convert

Return

integer:

GetJavaLeftOpcode2()

if it's true, push true and ba

Return

integer:

GetJavaOpcode()

types have been convert

Return

integer:

GetJavaRightOpcode()

types have been convert

Return

integer:

GetJavaRightOpcode2()

if it's false, push false and ba

Return

integer:

GetLeftOpcode()

Return

Libraries.Language.Compile.Translate.QuorumOpcode

GetLocation()

Return

Libraries.Language.Compile.Location

GetMethodWriter()

Return

Libraries.Language.Compile.Translate.JavaBytecodeMethodWriter

GetOperation()

Return

Libraries.Language.Compile.Symbol.Operation

GetRightOpcode()

Return

Libraries.Language.Compile.Translate.QuorumOpcode

GetTemplateCopy()

if there is a second one, do that as we

Return

Libraries.Language.Compile.Translate.QuorumOpcode:

GetType()

Return

Libraries.Language.Compile.Symbol.Type

SetBytecodeWriteOffset(integer offset)

Parameters

SetBytecodeWriteOffsetToAllChildren(integer offset)

Parameters

SetIsIfExpression(boolean isInIf)

Parameters

SetJavaLeftOpcode(integer op)

Parameters

SetJavaLeftOpcode2(integer op)

Parameters

SetJavaOpcode(integer op)

Parameters

SetJavaRightOpcode(integer op)

Parameters

SetJavaRightOpcode2(integer op)

Parameters

SetLeftOpcode(Libraries.Language.Compile.Translate.QuorumOpcode op)

Parameters

SetLocation(Libraries.Language.Compile.Location loc)

Parameters

SetMethodWriter(Libraries.Language.Compile.Translate.JavaBytecodeMethodWriter writer)

Parameters

SetMethodWriterToAllChildren(Libraries.Language.Compile.Translate.JavaBytecodeMethodWriter writer)

Parameters

SetOperation(Libraries.Language.Compile.Symbol.Operation op)

Parameters

SetRightOpcode(Libraries.Language.Compile.Translate.QuorumOpcode op)

Parameters

SetType(Libraries.Language.Compile.Symbol.Type type)

Parameters

VisitLineNumber()

Write()

WriteJavaScript()

types have been convert

Return

text:

WriteLeft()

WriteRight()

if there is a second one, do that as we