AnonymousMethodValue

Overview

The AnonymousMethodValue class represents an anonymous method or lambda expression.

Location


 

constructor

Create a new instance of this class

 

constructor

 

AnonymousMethodValue()

 

init()

 

AnonymousMethodValue()

 

Sub New()

constructor (Statement, IType, array of AnonymousMethodParameter)

Constructor that initializes properties of this class

 

constructor(aBody: Statement; aResult: IType; params aParameters: array of AnonymousMethodParameter)

 

AnonymousMethodValue(Statement aBody, IType aResult, params AnonymousMethodParameter[] aParameters)

 

init(_ aBody: Statement, _ aResult: IType, _ aParameters: AnonymousMethodParameter...)

 

AnonymousMethodValue(Statement aBody, IType aResult, AnonymousMethodParameter[]... aParameters)

 

Sub New(aBody As Statement, aResult As IType, ParamArray aParameters As AnonymousMethodParameter())

Parameters:

  • aBody: body of the anonymous
  • aResult: Result type
  • aParameters: parameter types/names

constructor (Statement, array of AnonymousMethodParameter)

Constructor that initializes properties of this class

 

constructor(aBody: Statement; params aParameters: array of AnonymousMethodParameter)

 

AnonymousMethodValue(Statement aBody, params AnonymousMethodParameter[] aParameters)

 

init(_ aBody: Statement, _ aParameters: AnonymousMethodParameter...)

 

AnonymousMethodValue(Statement aBody, AnonymousMethodParameter[]... aParameters)

 

Sub New(aBody As Statement, ParamArray aParameters As AnonymousMethodParameter())

Parameters:

  • aBody: body of the anonymous
  • aParameters: parameter types/names

constructor (Value, IType, array of AnonymousMethodParameter)

Constructor that initializes properties of this class. The body is wrapped in an ExitStatement

 

constructor(aBody: Value; aResult: IType; params aParameters: array of AnonymousMethodParameter)

 

AnonymousMethodValue(Value aBody, IType aResult, params AnonymousMethodParameter[] aParameters)

 

init(_ aBody: Value, _ aResult: IType, _ aParameters: AnonymousMethodParameter...)

 

AnonymousMethodValue(Value aBody, IType aResult, AnonymousMethodParameter[]... aParameters)

 

Sub New(aBody As Value, aResult As IType, ParamArray aParameters As AnonymousMethodParameter())

Parameters:

  • aBody: body of the anonymous
  • aResult: Result type
  • aParameters: parameter types/names

constructor (Value, array of AnonymousMethodParameter)

Constructor that initializes properties of this class. The body is wrapped in an ExitStatement

 

constructor(aBody: Value; params aParameters: array of AnonymousMethodParameter)

 

AnonymousMethodValue(Value aBody, params AnonymousMethodParameter[] aParameters)

 

init(_ aBody: Value, _ aParameters: AnonymousMethodParameter...)

 

AnonymousMethodValue(Value aBody, AnonymousMethodParameter[]... aParameters)

 

Sub New(aBody As Value, ParamArray aParameters As AnonymousMethodParameter())

Parameters:

  • aBody: body of the anonymous
  • aParameters: parameter types/names

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

Body

The body for this anonymous method. For single expression lambdas, this will contain an expression wrapped in an ExitStatement

 

property Body: Statement read write;

 

Statement Body { get; set; }

 

var Body: Statement { get{} set{} }

 

Statement Body { __get; __set; }

 

Property Body() As Statement

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.

Kind

Always returns ValueKind.AnonymousMethod

 

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

Parameters

Parameters for this lambda

 

property Parameters: List<AnonymousMethodParameter> read;

 

List<AnonymousMethodParameter> Parameters { get; }

 

var Parameters: List<AnonymousMethodParameter> { get{} }

 

List<AnonymousMethodParameter> Parameters { __get; }

 

ReadOnly Property Parameters() As List<AnonymousMethodParameter>

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

Result

Result type of the body of the expression. Could be nil, if so, it is infered from the expression

 

property Result: IType read write;

 

IType Result { get; set; }

 

var Result: IType { get{} set{} }

 

IType Result { __get; __set; }

 

Property Result() As IType

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

 

Body

The body for this anonymous method. For single expression lambdas, this will contain an expression wrapped in an ExitStatement

 

property Body: Statement read write;

 

Statement Body { get; set; }

 

var Body: Statement { get{} set{} }

 

Statement Body { __get; __set; }

 

Property Body() As Statement

Kind

Always returns ValueKind.AnonymousMethod

 

property Kind: ValueKind read;

 

ValueKind Kind { get; }

 

var Kind: ValueKind { get{} }

 

ValueKind Kind { __get; }

 

ReadOnly Property Kind() As ValueKind

Parameters

Parameters for this lambda

 

property Parameters: List<AnonymousMethodParameter> read;

 

List<AnonymousMethodParameter> Parameters { get; }

 

var Parameters: List<AnonymousMethodParameter> { get{} }

 

List<AnonymousMethodParameter> Parameters { __get; }

 

ReadOnly Property Parameters() As List<AnonymousMethodParameter>

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

Result

Result type of the body of the expression. Could be nil, if so, it is infered from the expression

 

property Result: IType read write;

 

IType Result { get; set; }

 

var Result: IType { get{} set{} }

 

IType Result { __get; __set; }

 

Property Result() As IType

 

constructor

Create a new instance of this class

 

constructor

 

AnonymousMethodValue()

 

init()

 

AnonymousMethodValue()

 

Sub New()

constructor (Statement, IType, array of AnonymousMethodParameter)

Constructor that initializes properties of this class

 

constructor(aBody: Statement; aResult: IType; params aParameters: array of AnonymousMethodParameter)

 

AnonymousMethodValue(Statement aBody, IType aResult, params AnonymousMethodParameter[] aParameters)

 

init(_ aBody: Statement, _ aResult: IType, _ aParameters: AnonymousMethodParameter...)

 

AnonymousMethodValue(Statement aBody, IType aResult, AnonymousMethodParameter[]... aParameters)

 

Sub New(aBody As Statement, aResult As IType, ParamArray aParameters As AnonymousMethodParameter())

Parameters:

  • aBody: body of the anonymous
  • aResult: Result type
  • aParameters: parameter types/names

constructor (Statement, array of AnonymousMethodParameter)

Constructor that initializes properties of this class

 

constructor(aBody: Statement; params aParameters: array of AnonymousMethodParameter)

 

AnonymousMethodValue(Statement aBody, params AnonymousMethodParameter[] aParameters)

 

init(_ aBody: Statement, _ aParameters: AnonymousMethodParameter...)

 

AnonymousMethodValue(Statement aBody, AnonymousMethodParameter[]... aParameters)

 

Sub New(aBody As Statement, ParamArray aParameters As AnonymousMethodParameter())

Parameters:

  • aBody: body of the anonymous
  • aParameters: parameter types/names

constructor (Value, IType, array of AnonymousMethodParameter)

Constructor that initializes properties of this class. The body is wrapped in an ExitStatement

 

constructor(aBody: Value; aResult: IType; params aParameters: array of AnonymousMethodParameter)

 

AnonymousMethodValue(Value aBody, IType aResult, params AnonymousMethodParameter[] aParameters)

 

init(_ aBody: Value, _ aResult: IType, _ aParameters: AnonymousMethodParameter...)

 

AnonymousMethodValue(Value aBody, IType aResult, AnonymousMethodParameter[]... aParameters)

 

Sub New(aBody As Value, aResult As IType, ParamArray aParameters As AnonymousMethodParameter())

Parameters:

  • aBody: body of the anonymous
  • aResult: Result type
  • aParameters: parameter types/names

constructor (Value, array of AnonymousMethodParameter)

Constructor that initializes properties of this class. The body is wrapped in an ExitStatement

 

constructor(aBody: Value; params aParameters: array of AnonymousMethodParameter)

 

AnonymousMethodValue(Value aBody, params AnonymousMethodParameter[] aParameters)

 

init(_ aBody: Value, _ aParameters: AnonymousMethodParameter...)

 

AnonymousMethodValue(Value aBody, AnonymousMethodParameter[]... aParameters)

 

Sub New(aBody As Value, ParamArray aParameters As AnonymousMethodParameter())

Parameters:

  • aBody: body of the anonymous
  • aParameters: parameter types/names

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

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

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