Method | Description | |
---|---|---|
Add ( ) : void |
Pops two values from the stack, adds them together, then pushes the result to the stack.
|
|
BeginCatchBlock ( |
Begins a catch block. BeginExceptionBlock() must have already been called.
|
|
BeginExceptionBlock ( ) : void |
Begins a try-catch-finally block. After issuing this instruction any following instructions are conceptually within the try block.
|
|
BeginFaultBlock ( ) : void |
Begins a fault block. BeginExceptionBlock() must have already been called.
|
|
BeginFilterBlock ( ) : void |
Begins a filter block. BeginExceptionBlock() must have already been called.
|
|
BeginFinallyBlock ( ) : void |
Begins a finally block. BeginExceptionBlock() must have already been called.
|
|
BitwiseAnd ( ) : void |
Pops two values from the stack, ANDs them together, then pushes the result to the stack.
|
|
BitwiseNot ( ) : void |
Pops a value from the stack, inverts it, then pushes the result to the stack.
|
|
BitwiseOr ( ) : void |
Pops two values from the stack, ORs them together, then pushes the result to the stack.
|
|
BitwiseXor ( ) : void |
Pops two values from the stack, XORs them together, then pushes the result to the stack.
|
|
Box ( PrimitiveType type ) : void |
Pops a value from the stack, converts it to an object reference, then pushes it back onto the stack.
|
|
Box ( |
Pops a value from the stack, converts it to an object reference, then pushes it back onto the stack.
|
|
Branch ( ILLabel label ) : void |
Unconditionally branches to the given label.
|
|
BranchIfEqual ( ILLabel label ) : void |
Branches to the given label if the two values on the top of the stack are equal.
|
|
BranchIfFalse ( ILLabel label ) : void |
Branches to the given label if the value on the top of the stack is zero, false or null.
|
|
BranchIfGreaterThan ( ILLabel label ) : void |
Branches to the given label if the first value on the stack is greater than the second value on the stack.
|
|
BranchIfGreaterThanOrEqual ( ILLabel label ) : void |
Branches to the given label if the first value on the stack is greater than or equal to the second value on the stack.
|
|
BranchIfGreaterThanOrEqualUnsigned ( ILLabel label ) : void |
Branches to the given label if the first value on the stack is greater than or equal to the second value on the stack. If the operands are integers then they are treated as if they are unsigned. If the operands are floating point numbers then a NaN value will trigger a branch.
|
|
BranchIfGreaterThanUnsigned ( ILLabel label ) : void |
Branches to the given label if the first value on the stack is greater than the second value on the stack. If the operands are integers then they are treated as if they are unsigned. If the operands are floating point numbers then a NaN value will trigger a branch.
|
|
BranchIfLessThan ( ILLabel label ) : void |
Branches to the given label if the first value on the stack is less than the second value on the stack.
|
|
BranchIfLessThanOrEqual ( ILLabel label ) : void |
Branches to the given label if the first value on the stack is less than or equal to the second value on the stack.
|
|
BranchIfLessThanOrEqualUnsigned ( ILLabel label ) : void |
Branches to the given label if the first value on the stack is less than or equal to the second value on the stack. If the operands are integers then they are treated as if they are unsigned. If the operands are floating point numbers then a NaN value will trigger a branch.
|
|
BranchIfLessThanUnsigned ( ILLabel label ) : void |
Branches to the given label if the first value on the stack is less than the second value on the stack. If the operands are integers then they are treated as if they are unsigned. If the operands are floating point numbers then a NaN value will trigger a branch.
|
|
BranchIfNotEqual ( ILLabel label ) : void |
Branches to the given label if the two values on the top of the stack are not equal.
|
|
BranchIfNotNull ( ILLabel label ) : void |
Branches to the given label if the value on the top of the stack is non-zero, true or non-null.
|
|
BranchIfNotZero ( ILLabel label ) : void |
Branches to the given label if the value on the top of the stack is non-zero, true or non-null.
|
|
BranchIfNull ( ILLabel label ) : void |
Branches to the given label if the value on the top of the stack is zero, false or null.
|
|
BranchIfTrue ( ILLabel label ) : void |
Branches to the given label if the value on the top of the stack is non-zero, true or non-null.
|
|
BranchIfZero ( ILLabel label ) : void |
Branches to the given label if the value on the top of the stack is zero, false or null.
|
|
Breakpoint ( ) : void |
Triggers a breakpoint in an attached debugger.
|
|
Call ( System method ) : void |
Pops the method arguments off the stack, calls the given method, then pushes the result to the stack (if there was one). Identical to CallStatic() if the method is a static method (or is declared on a value type) or CallVirtual() otherwise.
|
|
CallStatic ( System method ) : void |
Pops the method arguments off the stack, calls the given method, then pushes the result to the stack (if there was one). This operation can be used to call instance methods, but virtual overrides will not be called and a null check will not be performed at the callsite.
|
|
CallVirtual ( System method ) : void |
Pops the method arguments off the stack, calls the given method, then pushes the result to the stack (if there was one). This operation cannot be used to call static methods. Virtual overrides are obeyed and a null check is performed.
|
|
CastClass ( |
Pops an object off the stack, checks that the object inherits from or implements the given type, and pushes the object onto the stack if the check was successful or throws an InvalidCastException if the check failed.
|
|
CompareEqual ( ) : void |
Pops two values from the stack, compares, then pushes
|
|
CompareGreaterThan ( ) : void |
Pops two values from the stack, compares, then pushes
|
|
CompareGreaterThanUnsigned ( ) : void |
Pops two values from the stack, compares, then pushes
|
|
CompareLessThan ( ) : void |
Pops two values from the stack, compares, then pushes
|
|
CompareLessThanUnsigned ( ) : void |
Pops two values from the stack, compares, then pushes
|
|
Complete ( ) : void |
Gets or sets a value which indicates whether diagnostics are enabled. Better error messages are provided in some cases if this property is set to Emits a return statement and finalizes the generated code. Do not emit any more instructions after calling this method.
|
|
ConvertToDouble ( ) : void |
Pops a value from the stack, converts it to a double, then pushes it back onto the stack.
|
|
ConvertToInt64 ( ) : void |
Pops a value from the stack, converts it to a signed 64-bit integer, then pushes it back onto the stack.
|
|
ConvertToInteger ( ) : void |
Pops a value from the stack, converts it to a signed integer, then pushes it back onto the stack.
|
|
ConvertToUnsignedInt64 ( ) : void |
Pops a value from the stack, converts it to an unsigned 64-bit integer, then pushes it back onto the stack.
|
|
ConvertToUnsignedInteger ( ) : void |
Pops a value from the stack, converts it to an unsigned integer, then pushes it back onto the stack.
|
|
ConvertUnsignedToDouble ( ) : void |
Pops an unsigned integer from the stack, converts it to a double, then pushes it back onto the stack.
|
|
CreateLabel ( ) : ILLabel |
Creates a label without setting its position.
|
|
CreateTemporaryVariable ( PrimitiveType type ) : |
Retrieves a temporary variable with the given type, reusing a previous variable if possible.
|
|
CreateTemporaryVariable ( |
Retrieves a temporary variable with the given type, reusing a previous variable if possible.
|
|
DeclareVariable ( PrimitiveType type, string name = null ) : |
Declares a new local variable.
|
|
DeclareVariable ( |
Declares a new local variable.
|
|
DefineLabelPosition ( ) : ILLabel |
Creates a label and sets its position.
|
|
DefineLabelPosition ( ILLabel label ) : void |
Defines the position of the given label.
|
|
Divide ( ) : void |
Pops two values from the stack, divides the first by the second, then pushes the result to the stack.
|
|
Duplicate ( ) : void |
Duplicates the value on the top of the stack.
|
|
EndExceptionBlock ( ) : void |
Ends a try-catch-finally block.
|
|
EndFault ( ) : void |
This instruction can be used from within a fault block to resume the exception handling process. It is the only valid way of leaving a fault block.
|
|
EndFilter ( ) : void |
This instruction can be used from within a filter block to indicate whether the exception will be handled. It pops an integer from the stack which should be
|
|
EndFinally ( ) : void |
This instruction can be used from within a finally block to resume the exception handling process. It is the only valid way of leaving a finally block.
|
|
InitObject ( |
Pops a managed or native pointer off the stack and initializes the referenced type with zeros.
|
|
IsInstance ( |
Pops an object off the stack, checks that the object inherits from or implements the given type, and pushes either the object (if the check was successful) or
|
|
Leave ( ILLabel label ) : void |
Unconditionally branches to the given label. Unlike the regular branch instruction, this instruction can exit out of try, filter and catch blocks.
|
|
LoadAddressOfVariable ( |
Pushes the address of the given variable onto the stack.
|
|
LoadArgument ( int argumentIndex ) : void |
Pushes the value of the method argument with the given index onto the stack.
|
|
LoadArrayElement ( PrimitiveType type ) : void |
Pops the array and index off the stack and pushes the element value onto the stack.
|
|
LoadArrayElement ( |
Pops the array and index off the stack and pushes the element value onto the stack.
|
|
LoadArrayLength ( ) : void |
Pops an array off the stack and pushes the length of the array onto the stack.
|
|
LoadBoolean ( bool value ) : void |
Pushes a constant value onto the stack.
|
|
LoadDouble ( double value ) : void |
Pushes a constant value onto the stack.
|
|
LoadField ( System field ) : void |
Pushes the value of the given field onto the stack.
|
|
LoadInt32 ( int value ) : void |
Pushes a constant value onto the stack.
|
|
LoadInt32 ( uint value ) : void |
Pushes an unsigned constant value onto the stack.
|
|
LoadInt64 ( long value ) : void |
Pushes a 64-bit constant value onto the stack.
|
|
LoadInt64 ( ulong value ) : void |
Pushes an unsigned 64-bit constant value onto the stack.
|
|
LoadMethodPointer ( System method ) : void |
Pushes a pointer to the native code implementing the given method onto the evaluation stack. This method is identical to LoadStaticMethodPointer() if the method is a static method (or is declared on a value type) or LoadVirtualMethodPointer() otherwise.
|
|
LoadNull ( ) : void |
Pushes
|
|
LoadStaticMethodPointer ( System method ) : void |
Pushes a pointer to the native code implementing the given method onto the evaluation stack. The virtual qualifier will be ignored, if present.
|
|
LoadString ( string value ) : void |
Pushes a constant value onto the stack.
|
|
LoadStringOrNull ( string value ) : void |
Pushes a constant value onto the stack.
|
|
LoadToken ( System method ) : void |
Pushes a RuntimeMethodHandle corresponding to the given method onto the evaluation stack.
|
|
LoadToken ( |
Pushes a RuntimeTypeHandle corresponding to the given type onto the evaluation stack.
|
|
LoadVariable ( |
Pushes the value of the given variable onto the stack.
|
|
LoadVirtualMethodPointer ( System method ) : void |
Pushes a pointer to the native code implementing the given method onto the evaluation stack. This method cannot be used to retrieve a pointer to a static method.
|
|
MarkSequencePoint ( System document, Jurassic.Compiler.SourceCodeSpan span ) : void |
Marks a sequence point in the Microsoft intermediate language (MSIL) stream.
|
|
MarkSequencePoint ( System document, int startLine, int startColumn, int endLine, int endColumn ) : void |
Marks a sequence point in the Microsoft intermediate language (MSIL) stream.
|
|
Multiply ( ) : void |
Pops two values from the stack, multiplies them together, then pushes the result to the stack.
|
|
Negate ( ) : void |
Pops a value from the stack, negates it, then pushes it back onto the stack.
|
|
NewArray ( |
Pops the size of the array off the stack and pushes a new array of the given type onto the stack.
|
|
NewObject ( System constructor ) : void |
Pops the constructor arguments off the stack and creates a new instance of the object.
|
|
NoOperation ( ) : void |
Does nothing.
|
|
Pop ( ) : void |
Pops the value from the top of the stack.
|
|
ReleaseTemporaryVariable ( |
Indicates that the given temporary variable is no longer needed.
|
|
Remainder ( ) : void |
Pops two values from the stack, divides the first by the second, then pushes the remainder to the stack.
|
|
Return ( ) : void |
Returns from the current method. A value is popped from the stack and used as the return value.
|
|
ShiftLeft ( ) : void |
Pops two values from the stack, shifts the first to the left, then pushes the result to the stack.
|
|
ShiftRight ( ) : void |
Pops two values from the stack, shifts the first to the right, then pushes the result to the stack. The sign bit is preserved.
|
|
ShiftRightUnsigned ( ) : void |
Pops two values from the stack, shifts the first to the right, then pushes the result to the stack. The sign bit is not preserved.
|
|
StoreArgument ( int argumentIndex ) : void |
Pops a value from the stack and stores it in the method argument with the given index.
|
|
StoreArrayElement ( PrimitiveType type ) : void |
Pops the array, index and value off the stack and stores the value in the array.
|
|
StoreArrayElement ( |
Pops the array, index and value off the stack and stores the value in the array.
|
|
StoreField ( System field ) : void |
Pops a value off the stack and stores it in the given field.
|
|
StoreVariable ( |
Pops the value from the top of the stack and stores it in the given local variable.
|
|
Subtract ( ) : void |
Pops two values from the stack, subtracts the second from the first, then pushes the result to the stack.
|
|
Switch ( ILLabel labels ) : void |
Creates a jump table. A value is popped from the stack - this value indicates the index of the label in the labels array to jump to.
|
|
Throw ( ) : void |
Pops an exception object off the stack and throws the exception.
|
|
Unbox ( PrimitiveType type ) : void |
Pops an object reference (representing a boxed value) from the stack, extracts the address, then pushes that address onto the stack.
|
|
Unbox ( |
Pops an object reference (representing a boxed value) from the stack, extracts the address, then pushes that address onto the stack.
|
|
UnboxAny ( PrimitiveType type ) : void |
Pops an object reference (representing a boxed value) from the stack, extracts the value, then pushes the value onto the stack.
|
|
UnboxAny ( |
Pops an object reference (representing a boxed value) from the stack, extracts the value, then pushes the value onto the stack.
|
public abstract BeginCatchBlock ( |
||
exceptionType | The type of exception to handle. | |
return | void |
public abstract BeginExceptionBlock ( ) : void | ||
return | void |
public Box ( PrimitiveType type ) : void | ||
type | PrimitiveType | The type of value to box. This should be a value type. |
return | void |
public abstract Box ( |
||
type | The type of value to box. This should be a value type. | |
return | void |
public abstract Branch ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfEqual ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public BranchIfFalse ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfGreaterThan ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfGreaterThanOrEqual ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfGreaterThanOrEqualUnsigned ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfGreaterThanUnsigned ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfLessThan ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfLessThanOrEqual ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfLessThanOrEqualUnsigned ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfLessThanUnsigned ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfNotEqual ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public BranchIfNotNull ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfNotZero ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public BranchIfNull ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public BranchIfTrue ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract BranchIfZero ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public Call ( System method ) : void | ||
method | System | The method to call. |
return | void |
public abstract CallStatic ( System method ) : void | ||
method | System | The method to call. |
return | void |
public abstract CallVirtual ( System method ) : void | ||
method | System | The method to call. |
return | void |
public abstract CastClass ( |
||
type | The type of the class the object inherits from or the interface the /// object implements. | |
return | void |
public abstract CompareGreaterThan ( ) : void | ||
return | void |
public abstract CompareGreaterThanUnsigned ( ) : void | ||
return | void |
public abstract CompareLessThanUnsigned ( ) : void | ||
return | void |
public abstract ConvertToUnsignedInt64 ( ) : void | ||
return | void |
public abstract ConvertToUnsignedInteger ( ) : void | ||
return | void |
public abstract ConvertUnsignedToDouble ( ) : void | ||
return | void |
public CreateTemporaryVariable ( PrimitiveType type ) : |
||
type | PrimitiveType | The type of variable to create. |
return |
public CreateTemporaryVariable ( |
||
type | The type of variable to create. | |
return |
public DeclareVariable ( PrimitiveType type, string name = null ) : |
||
type | PrimitiveType | The type of the local variable. |
name | string | The name of the local variable. Can be |
return |
public abstract DeclareVariable ( |
||
type | The type of the local variable. | |
name | string | The name of the local variable. Can be |
return |
public abstract DefineLabelPosition ( ILLabel label ) : void | ||
label | ILLabel | The label to define. |
return | void |
public abstract InitObject ( |
||
type | The type the pointer on the top of the stack is pointing to. | |
return | void |
public abstract IsInstance ( |
||
type | The type of the class the object inherits from or the interface the /// object implements. | |
return | void |
public abstract Leave ( ILLabel label ) : void | ||
label | ILLabel | The label to branch to. |
return | void |
public abstract LoadAddressOfVariable ( |
||
variable | The variable whose address will be pushed. | |
return | void |
public abstract LoadArgument ( int argumentIndex ) : void | ||
argumentIndex | int | The index of the argument to push onto the stack. |
return | void |
public LoadArrayElement ( PrimitiveType type ) : void | ||
type | PrimitiveType | The element type. |
return | void |
public abstract LoadArrayElement ( |
||
type | The element type. | |
return | void |
public LoadBoolean ( bool value ) : void | ||
value | bool | The boolean to push onto the stack. |
return | void |
public abstract LoadDouble ( double value ) : void | ||
value | double | The number to push onto the stack. |
return | void |
public abstract LoadField ( System field ) : void | ||
field | System | The field whose value will be pushed. |
return | void |
public abstract LoadInt32 ( int value ) : void | ||
value | int | The integer to push onto the stack. |
return | void |
public LoadInt32 ( uint value ) : void | ||
value | uint | The integer to push onto the stack. |
return | void |
public abstract LoadInt64 ( long value ) : void | ||
value | long | The 64-bit integer to push onto the stack. |
return | void |
public LoadInt64 ( ulong value ) : void | ||
value | ulong | The 64-bit integer to push onto the stack. |
return | void |
public LoadMethodPointer ( System method ) : void | ||
method | System | The method to retrieve a pointer for. |
return | void |
public abstract LoadStaticMethodPointer ( System method ) : void | ||
method | System | The method to retrieve a pointer for. |
return | void |
public abstract LoadString ( string value ) : void | ||
value | string | The string to push onto the stack. |
return | void |
public LoadStringOrNull ( string value ) : void | ||
value | string | The string to push onto the stack. Can be |
return | void |
public abstract LoadToken ( System method ) : void | ||
method | System | The method to convert to a RuntimeMethodHandle. |
return | void |
public abstract LoadToken ( |
||
type | The type to convert to a RuntimeTypeHandle. | |
return | void |
public abstract LoadVariable ( |
||
variable | The variable whose value will be pushed. | |
return | void |
public abstract LoadVirtualMethodPointer ( System method ) : void | ||
method | System | The method to retrieve a pointer for. |
return | void |
public MarkSequencePoint ( System document, Jurassic.Compiler.SourceCodeSpan span ) : void | ||
document | System | The document for which the sequence point is being defined. |
span | Jurassic.Compiler.SourceCodeSpan | The start and end positions which define the sequence point. |
return | void |
public abstract MarkSequencePoint ( System document, int startLine, int startColumn, int endLine, int endColumn ) : void | ||
document | System | The document for which the sequence point is being defined. |
startLine | int | The line where the sequence point begins. |
startColumn | int | The column in the line where the sequence point begins. |
endLine | int | The line where the sequence point ends. |
endColumn | int | The column in the line where the sequence point ends. |
return | void |
public abstract NewArray ( |
||
type | The element type. | |
return | void |
public abstract NewObject ( System constructor ) : void | ||
constructor | System | The constructor that is used to initialize the object. |
return | void |
public ReleaseTemporaryVariable ( |
||
temporaryVariable | The temporary variable created using CreateTemporaryVariable(). | |
return | void |
public abstract ShiftRightUnsigned ( ) : void | ||
return | void |
public abstract StoreArgument ( int argumentIndex ) : void | ||
argumentIndex | int | The index of the argument to store into. |
return | void |
public StoreArrayElement ( PrimitiveType type ) : void | ||
type | PrimitiveType | The element type. |
return | void |
public abstract StoreArrayElement ( |
||
type | The element type. | |
return | void |
public abstract StoreField ( System field ) : void | ||
field | System | The field to modify. |
return | void |
public abstract StoreVariable ( |
||
variable | The variable to store the value. | |
return | void |
public abstract Switch ( ILLabel labels ) : void | ||
labels | ILLabel | A array of labels. |
return | void |
public Unbox ( PrimitiveType type ) : void | ||
type | PrimitiveType | The type of the boxed value. This should be a value type. |
return | void |
public abstract Unbox ( |
||
type | The type of the boxed value. This should be a value type. | |
return | void |
public UnboxAny ( PrimitiveType type ) : void | ||
type | PrimitiveType | The type of the boxed value. This should be a value type. |
return | void |
public abstract UnboxAny ( |
||
type | The type of the boxed value. This should be a value type. | |
return | void |