Table of Contents

Class EzrMethodWrapper

Namespace
EzrSquared.Runtime.Types.Wrappers.Members.Methods
Assembly
ezrSquared-lib.dll

Class to automatically wrap C# methods so that they can be used in ezrĀ².

public class EzrMethodWrapper : EzrMethodBaseWrapper<MethodInfo>, IEzrObject
Inheritance
object
EzrWrapper<MethodInfo>
EzrMethodWrapper
Implements
Inherited Members

Constructors

EzrMethodWrapper(Delegate, Context, Position, Position, bool)

Creates a new EzrMethodWrapper from a delegate.

public EzrMethodWrapper(Delegate sharpFunction, Context parentContext, Position startPosition, Position endPosition, bool skipValidation = false)

Parameters

sharpFunction Delegate

The method to wrap.

parentContext Context

The context in which this object was created.

startPosition Position

The starting position of the object.

endPosition Position

The ending position of the object.

skipValidation bool

Skip method signature validation?

EzrMethodWrapper(MethodInfo, object?, Context, Position, Position, bool)

Class to automatically wrap C# methods so that they can be used in ezrĀ².

public EzrMethodWrapper(MethodInfo sharpFunction, object? instance, Context parentContext, Position startPosition, Position endPosition, bool skipValidation = false)

Parameters

sharpFunction MethodInfo

The method to wrap.

instance object

The object which contains the method, null if static.

parentContext Context

The context in which this object was created.

startPosition Position

The starting position of the object.

endPosition Position

The ending position of the object.

skipValidation bool

Skip method signature validation?

Properties

Tag

The tag of the type of this object, similar to C# namespace naming conventions.

public override string Tag { get; protected internal set; }

Property Value

string

TypeName

The name of the type of this object, in plain text, all lowercase. Spaces are allowed.

public override string TypeName { get; protected internal set; }

Property Value

string

Methods

Execute(Reference[], Interpreter, RuntimeResult)

Executes the current object, like a function.

public override void Execute(Reference[] arguments, Interpreter interpreter, RuntimeResult result)

Parameters

arguments Reference[]

The arguments of the execution.

interpreter Interpreter

The interpreter to be used in execution.

result RuntimeResult

Runtime result for carrying the result and any errors.

ToString(RuntimeResult)

Evaluates the current object as a string value.

public override string ToString(RuntimeResult result)

Parameters

result RuntimeResult

Runtime result for carrying any errors.

Returns

string

The evaluated value.