Libraries.Language.Compile.Translate.ActionCallOpcode Documentation

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

Actions Documentation

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

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.

Parameters

Return

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

Example

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

Equals(Libraries.Language.Object object)

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

Parameters

Return

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

Example

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

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

GetBytecodeOffset()

Return

integer

GetClassToMakeParentCallOn()

GetHashCode()

This action gets the hash code for an object.

Return

integer: The integer hash code of the object.

Example

Object o
integer hash = o:GetHashCode()

GetIsIfExpression()

Return

boolean

GetParameterTypes()

GetParameters()

GetPushOnMe()

Return

boolean

GetVariableToMakeParentCallOn()

IsActionCall()

Return

boolean

IsChainedCall()

Return

boolean

IsField()

Return

boolean

IsInFieldBlock()

Return

boolean

IsParentCall()

Return

boolean

IsSoloObjectCall()

Return

boolean

LoadHiddenMe()

SetActionCallResolution(Libraries.Language.Compile.Symbol.ActionCallResolution resolution)

SetAutoBoxOpcode(Libraries.Language.Compile.Translate.QuorumOpcode opcode)

SetBytecodeWriteOffset(integer offset)

Parameters

  • integer offset

SetBytecodeWriteOffsetToAllChildren(integer offset)

Parameters

  • integer offset

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

SetCallingClass(Libraries.Language.Compile.Symbol.Class cl)

SetChainedCall(boolean chained)

Parameters

  • boolean chained

SetClassToMakeParentCallOn(Libraries.Language.Compile.Symbol.Class clazz)

SetField(Libraries.Language.Compile.Symbol.Variable field)

SetFieldHolder(Libraries.Language.Compile.Symbol.Class fieldHolder)

SetIsActionCall(boolean act)

Parameters

  • boolean act

SetIsField(boolean field)

Parameters

  • boolean field

SetIsIfExpression(boolean isInIf)

Parameters

  • boolean isInIf

SetIsInFieldBlock(boolean block)

Parameters

  • boolean block

SetIsParentCall(boolean isParent)

Parameters

  • boolean isParent

SetIsSoloObjectCall(boolean call)

Parameters

  • boolean call

SetLocation(Libraries.Language.Compile.Location loc)

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

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

SetParameterTypes(Libraries.Containers.Array<Libraries.Language.Compile.Symbol.Type> array)

SetParameters(Libraries.Containers.Array<Libraries.Language.Compile.Translate.QuorumOpcode> array)

SetParentToCallOn(Libraries.Language.Compile.Symbol.Class clazz)

SetPushOnMe(boolean this)

Parameters

  • boolean this

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

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

VisitLineNumber()

Write()

owner, name, description

WriteBlockOrPassIfEmpty(text value)

Parameters

  • text value

Return

text

WriteJavaScript()

Return

text

WriteParentVariable()

WritePython()

Return

text