ArrayValue

Overview

ArrayValue is an in-code array construct: [a,b,c]. This value is used in method calls or plain assignments. While it does not have a type of its own, it checks the result type to find out what the type should be, and checks the members against it. To force an array value to be a specific value, you can use the UnaryValue to cast it, it will take on that type then.

Location


 

constructor

Creates a new instance of this class

 

constructor

 

ArrayValue()

 

init()

 

ArrayValue()

 

Sub New()

constructor (Value)

Creates a new instance of this class

 

constructor(aItem: Value)

 

ArrayValue(Value aItem)

 

init(_ aItem: Value)

 

ArrayValue(Value aItem)

 

Sub New(aItem As Value)

Parameters:

  • aItem: First value

constructor (Value, Value)

Creates a new instance of this class

 

constructor(aItem1: Value; aItem2: Value)

 

ArrayValue(Value aItem1, Value aItem2)

 

init(_ aItem1: Value, _ aItem2: Value)

 

ArrayValue(Value aItem1, Value aItem2)

 

Sub New(aItem1 As Value, aItem2 As Value)

Parameters:

  • aItem1: First value
  • aItem2: Second value

constructor (array of Value)

Creates a new instance of this class

 

constructor(params aItems: array of Value)

 

ArrayValue(params Value[] aItems)

 

init(_ aItems: Value...)

 

ArrayValue(Value[]... aItems)

 

Sub New(ParamArray aItems As Value())

Parameters:

  • aItems: Values to add

Add

Adds a new item

 

method Add(aValue: Value): Int32

 

Int32 Add(Value aValue)

 

func Add(_ aValue: Value) -> Int32

 

Int32 Add(Value aValue)

 

Function Add(aValue As Value) As Int32

Parameters:

  • aValue: Value to add

Binary    (declared in Value)

Creates a binary value

 

method Binary(aOp: BinaryOperator; aOther: Value): Value

 

Value Binary(BinaryOperator aOp, Value aOther)

 

func Binary(_ aOp: BinaryOperator, _ aOther: Value) -> Value

 

Value Binary(BinaryOperator aOp, Value aOther)

 

Function Binary(aOp As BinaryOperator, aOther As Value) As Value

Parameters:

  • aOp: Operator
  • aOther: Right side value

Count

Returns the number of items in this collection

 

property Count: Int32 read;

 

Int32 Count { get; }

 

var Count: Int32 { get{} }

 

Int32 Count { __get; }

 

ReadOnly Property Count() As Int32

GetEnumerator

 

method GetEnumerator: IEnumerator<Value>

 

IEnumerator<Value> GetEnumerator()

 

func GetEnumerator() -> IEnumerator<Value>

 

IEnumerator<Value> GetEnumerator()

 

Function GetEnumerator() As IEnumerator<Value>

Identifier (String): Value    (declared in Value)

creates an identifier value

 

method Identifier(aName: String): Value

 

Value Identifier(String aName)

 

func Identifier(_ aName: String) -> Value

 

Value Identifier(String aName)

 

Function Identifier(aName As String) As Value

Parameters:

  • aName: Name of the value

Identifier (String, array of IType): Value    (declared in Value)

creates an identifier value

 

method Identifier(aName: String; aArgs: array of IType): Value

 

Value Identifier(String aName, IType[] aArgs)

 

func Identifier(_ aName: String, _ aArgs: IType...) -> Value

 

Value Identifier(String aName, IType[] aArgs)

 

Function Identifier(aName As String, aArgs As IType()) As Value

Parameters:

  • aName: Name of the value
  • aArgs: Generic arguments.

Item

Get/set the value at a given index

 

property Item[i: Int32]: Value read write;

 

Value Item[Int32 i] { get; set; }

 

subscript Item(_ i: Int32) -> Value { get{} set{} }

 

Value Item[Int32 i] { __get; __set; }

 

Property Item(i As Int32) As Value

Kind

Value kind; use this for a fast way of determining what kind of sub class a Value object is

 

property Kind: ValueKind read;

 

ValueKind Kind { get; }

 

var Kind: ValueKind { get{} }

 

ValueKind Kind { __get; }

 

ReadOnly Property Kind() As ValueKind

Length    (declared in Value)

Creates a length value

 

method Length: Value

 

Value Length()

 

func Length() -> Value

 

Value Length()

 

Function Length() As Value

NotNil    (declared in Value)

Creates a not nil value

 

method NotNil: Value

 

Value NotNil()

 

func NotNil() -> Value

 

Value NotNil()

 

Function NotNil() As Value

Position    (declared in Value)

Position this value is defined at (if not set, it will be at the aspects position)

 

property Position: IPosition read write;

 

IPosition Position { get; set; }

 

var Position: IPosition { get{} set{} }

 

IPosition Position { __get; __set; }

 

Property Position() As IPosition

Proc (String, array of IType, array of Value): Value    (declared in Value)

Creates a call value

 

method Proc(aName: String; aGP: array of IType; params aArgs: array of Value): Value

 

Value Proc(String aName, IType[] aGP, params Value[] aArgs)

 

func Proc(_ aName: String, _ aGP: IType..., _ aArgs: Value...) -> Value

 

Value Proc(String aName, IType[] aGP, Value[]... aArgs)

 

Function Proc(aName As String, aGP As IType(), ParamArray aArgs As Value()) As Value

Parameters:

  • aName: Method name
  • aGP: Generic parameters to pass
  • aArgs: Arguments for this call

Proc (String, array of Value): Value    (declared in Value)

Creates a call value

 

method Proc(aName: String; params aArgs: array of Value): Value

 

Value Proc(String aName, params Value[] aArgs)

 

func Proc(_ aName: String, _ aArgs: Value...) -> Value

 

Value Proc(String aName, Value[]... aArgs)

 

Function Proc(aName As String, ParamArray aArgs As Value()) As Value

Parameters:

  • aName: Method name
  • aArgs: Arguments for this call

Remove

Removes an item

 

method Remove(aValue: Value)

 

void Remove(Value aValue)

 

func Remove(_ aValue: Value)

 

void Remove(Value aValue)

 

Sub Remove(aValue As Value)

Parameters:

  • aValue: value to remove

RemoveAt

Removes an item

 

method RemoveAt(no: Int32)

 

void RemoveAt(Int32 no)

 

func RemoveAt(_ no: Int32)

 

void RemoveAt(Int32 no)

 

Sub RemoveAt(no As Int32)

Parameters:

  • no: index

SubArray    (declared in Value)

Creates an array/property element access value

 

method SubArray(params aArgs: array of Value): Value

 

Value SubArray(params Value[] aArgs)

 

func SubArray(_ aArgs: Value...) -> Value

 

Value SubArray(Value[]... aArgs)

 

Function SubArray(ParamArray aArgs As Value()) As Value

Parameters:

  • aArgs: Arguments for element access

ToString

Returns the string value of this value

 

method ToString: String

 

String ToString()

 

func ToString() -> String

 

String ToString()

 

Function ToString() As String

Unary    (declared in Value)

Creates a unary value

 

method Unary(aOp: UnaryOperator): Value

 

Value Unary(UnaryOperator aOp)

 

func Unary(_ aOp: UnaryOperator) -> Value

 

Value Unary(UnaryOperator aOp)

 

Function Unary(aOp As UnaryOperator) As Value

Parameters:

  • aOp: Operator

 

Count

Returns the number of items in this collection

 

property Count: Int32 read;

 

Int32 Count { get; }

 

var Count: Int32 { get{} }

 

Int32 Count { __get; }

 

ReadOnly Property Count() As Int32

Item

Get/set the value at a given index

 

property Item[i: Int32]: Value read write;

 

Value Item[Int32 i] { get; set; }

 

subscript Item(_ i: Int32) -> Value { get{} set{} }

 

Value Item[Int32 i] { __get; __set; }

 

Property Item(i As Int32) As Value

Kind

Value kind; use this for a fast way of determining what kind of sub class a Value object is

 

property Kind: ValueKind read;

 

ValueKind Kind { get; }

 

var Kind: ValueKind { get{} }

 

ValueKind Kind { __get; }

 

ReadOnly Property Kind() As ValueKind

Position    (declared in Value)

Position this value is defined at (if not set, it will be at the aspects position)

 

property Position: IPosition read write;

 

IPosition Position { get; set; }

 

var Position: IPosition { get{} set{} }

 

IPosition Position { __get; __set; }

 

Property Position() As IPosition

 

constructor

Creates a new instance of this class

 

constructor

 

ArrayValue()

 

init()

 

ArrayValue()

 

Sub New()

constructor (Value)

Creates a new instance of this class

 

constructor(aItem: Value)

 

ArrayValue(Value aItem)

 

init(_ aItem: Value)

 

ArrayValue(Value aItem)

 

Sub New(aItem As Value)

Parameters:

  • aItem: First value

constructor (Value, Value)

Creates a new instance of this class

 

constructor(aItem1: Value; aItem2: Value)

 

ArrayValue(Value aItem1, Value aItem2)

 

init(_ aItem1: Value, _ aItem2: Value)

 

ArrayValue(Value aItem1, Value aItem2)

 

Sub New(aItem1 As Value, aItem2 As Value)

Parameters:

  • aItem1: First value
  • aItem2: Second value

constructor (array of Value)

Creates a new instance of this class

 

constructor(params aItems: array of Value)

 

ArrayValue(params Value[] aItems)

 

init(_ aItems: Value...)

 

ArrayValue(Value[]... aItems)

 

Sub New(ParamArray aItems As Value())

Parameters:

  • aItems: Values to add

Add

Adds a new item

 

method Add(aValue: Value): Int32

 

Int32 Add(Value aValue)

 

func Add(_ aValue: Value) -> Int32

 

Int32 Add(Value aValue)

 

Function Add(aValue As Value) As Int32

Parameters:

  • aValue: Value to add

Binary    (declared in Value)

Creates a binary value

 

method Binary(aOp: BinaryOperator; aOther: Value): Value

 

Value Binary(BinaryOperator aOp, Value aOther)

 

func Binary(_ aOp: BinaryOperator, _ aOther: Value) -> Value

 

Value Binary(BinaryOperator aOp, Value aOther)

 

Function Binary(aOp As BinaryOperator, aOther As Value) As Value

Parameters:

  • aOp: Operator
  • aOther: Right side value

GetEnumerator

 

method GetEnumerator: IEnumerator<Value>

 

IEnumerator<Value> GetEnumerator()

 

func GetEnumerator() -> IEnumerator<Value>

 

IEnumerator<Value> GetEnumerator()

 

Function GetEnumerator() As IEnumerator<Value>

Identifier (String): Value    (declared in Value)

creates an identifier value

 

method Identifier(aName: String): Value

 

Value Identifier(String aName)

 

func Identifier(_ aName: String) -> Value

 

Value Identifier(String aName)

 

Function Identifier(aName As String) As Value

Parameters:

  • aName: Name of the value

Identifier (String, array of IType): Value    (declared in Value)

creates an identifier value

 

method Identifier(aName: String; aArgs: array of IType): Value

 

Value Identifier(String aName, IType[] aArgs)

 

func Identifier(_ aName: String, _ aArgs: IType...) -> Value

 

Value Identifier(String aName, IType[] aArgs)

 

Function Identifier(aName As String, aArgs As IType()) As Value

Parameters:

  • aName: Name of the value
  • aArgs: Generic arguments.

Length    (declared in Value)

Creates a length value

 

method Length: Value

 

Value Length()

 

func Length() -> Value

 

Value Length()

 

Function Length() As Value

NotNil    (declared in Value)

Creates a not nil value

 

method NotNil: Value

 

Value NotNil()

 

func NotNil() -> Value

 

Value NotNil()

 

Function NotNil() As Value

Proc (String, array of IType, array of Value): Value    (declared in Value)

Creates a call value

 

method Proc(aName: String; aGP: array of IType; params aArgs: array of Value): Value

 

Value Proc(String aName, IType[] aGP, params Value[] aArgs)

 

func Proc(_ aName: String, _ aGP: IType..., _ aArgs: Value...) -> Value

 

Value Proc(String aName, IType[] aGP, Value[]... aArgs)

 

Function Proc(aName As String, aGP As IType(), ParamArray aArgs As Value()) As Value

Parameters:

  • aName: Method name
  • aGP: Generic parameters to pass
  • aArgs: Arguments for this call

Proc (String, array of Value): Value    (declared in Value)

Creates a call value

 

method Proc(aName: String; params aArgs: array of Value): Value

 

Value Proc(String aName, params Value[] aArgs)

 

func Proc(_ aName: String, _ aArgs: Value...) -> Value

 

Value Proc(String aName, Value[]... aArgs)

 

Function Proc(aName As String, ParamArray aArgs As Value()) As Value

Parameters:

  • aName: Method name
  • aArgs: Arguments for this call

Remove

Removes an item

 

method Remove(aValue: Value)

 

void Remove(Value aValue)

 

func Remove(_ aValue: Value)

 

void Remove(Value aValue)

 

Sub Remove(aValue As Value)

Parameters:

  • aValue: value to remove

RemoveAt

Removes an item

 

method RemoveAt(no: Int32)

 

void RemoveAt(Int32 no)

 

func RemoveAt(_ no: Int32)

 

void RemoveAt(Int32 no)

 

Sub RemoveAt(no As Int32)

Parameters:

  • no: index

SubArray    (declared in Value)

Creates an array/property element access value

 

method SubArray(params aArgs: array of Value): Value

 

Value SubArray(params Value[] aArgs)

 

func SubArray(_ aArgs: Value...) -> Value

 

Value SubArray(Value[]... aArgs)

 

Function SubArray(ParamArray aArgs As Value()) As Value

Parameters:

  • aArgs: Arguments for element access

ToString

Returns the string value of this value

 

method ToString: String

 

String ToString()

 

func ToString() -> String

 

String ToString()

 

Function ToString() As String

Unary    (declared in Value)

Creates a unary value

 

method Unary(aOp: UnaryOperator): Value

 

Value Unary(UnaryOperator aOp)

 

func Unary(_ aOp: UnaryOperator) -> Value

 

Value Unary(UnaryOperator aOp)

 

Function Unary(aOp As UnaryOperator) As Value

Parameters:

  • aOp: Operator