Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Linq.Expressions.Interpreter.InstructionList Class Referencesealed

Classes

class  DebugView
 

Public Member Functions

void Emit (Instruction instruction)
 
void UnEmit ()
 
InstructionArray ToArray ()
 
void EmitLoad (object value)
 
void EmitLoad (bool value)
 
void EmitLoad (object value, Type type)
 
void EmitDup ()
 
void EmitPop ()
 
void EmitLoadLocal (int index)
 
void EmitLoadLocalBoxed (int index)
 
void EmitLoadLocalFromClosure (int index)
 
void EmitLoadLocalFromClosureBoxed (int index)
 
void EmitAssignLocal (int index)
 
void EmitStoreLocal (int index)
 
void EmitAssignLocalBoxed (int index)
 
void EmitStoreLocalBoxed (int index)
 
void EmitAssignLocalToClosure (int index)
 
void EmitStoreLocalToClosure (int index)
 
void EmitInitializeLocal (int index, Type type)
 
void EmitNewRuntimeVariables (int count)
 
void EmitGetArrayItem ()
 
void EmitSetArrayItem ()
 
void EmitNewArray (Type elementType)
 
void EmitNewArrayBounds (Type elementType, int rank)
 
void EmitNewArrayInit (Type elementType, int elementCount)
 
void EmitAdd (Type type, bool @checked)
 
void EmitSub (Type type, bool @checked)
 
void EmitMul (Type type, bool @checked)
 
void EmitDiv (Type type)
 
void EmitModulo (Type type)
 
void EmitExclusiveOr (Type type)
 
void EmitAnd (Type type)
 
void EmitOr (Type type)
 
void EmitLeftShift (Type type)
 
void EmitRightShift (Type type)
 
void EmitEqual (Type type, bool liftedToNull=false)
 
void EmitNotEqual (Type type, bool liftedToNull=false)
 
void EmitLessThan (Type type, bool liftedToNull)
 
void EmitLessThanOrEqual (Type type, bool liftedToNull)
 
void EmitGreaterThan (Type type, bool liftedToNull)
 
void EmitGreaterThanOrEqual (Type type, bool liftedToNull)
 
void EmitNumericConvertChecked (TypeCode from, TypeCode to, bool isLiftedToNull)
 
void EmitNumericConvertUnchecked (TypeCode from, TypeCode to, bool isLiftedToNull)
 
void EmitConvertToUnderlying (TypeCode to, bool isLiftedToNull)
 
void EmitCast (Type toType)
 
void EmitCastToEnum (Type toType)
 
void EmitCastReferenceToEnum (Type toType)
 
void EmitNot (Type type)
 
void EmitDefaultValue (Type type)
 
void EmitNew (ConstructorInfo constructorInfo, ParameterInfo[] parameters)
 
void EmitByRefNew (ConstructorInfo constructorInfo, ParameterInfo[] parameters, ByRefUpdater[] updaters)
 
void EmitTypeEquals ()
 
void EmitArrayLength ()
 
void EmitNegate (Type type)
 
void EmitNegateChecked (Type type)
 
void EmitIncrement (Type type)
 
void EmitDecrement (Type type)
 
void EmitTypeIs (Type type)
 
void EmitTypeAs (Type type)
 
void EmitLoadField (FieldInfo field)
 
void EmitStoreField (FieldInfo field)
 
void EmitCall (MethodInfo method)
 
void EmitCall (MethodInfo method, ParameterInfo[] parameters)
 
void EmitByRefCall (MethodInfo method, ParameterInfo[] parameters, ByRefUpdater[] byrefArgs)
 
void EmitNullableCall (MethodInfo method, ParameterInfo[] parameters)
 
BranchLabel MakeLabel ()
 
int MarkRuntimeLabel ()
 
void MarkLabel (BranchLabel label)
 
void EmitGoto (BranchLabel label, bool hasResult, bool hasValue, bool labelTargetGetsValue)
 
void EmitBranch (BranchLabel label)
 
void EmitBranch (BranchLabel label, bool hasResult, bool hasValue)
 
void EmitCoalescingBranch (BranchLabel leftNotNull)
 
void EmitBranchTrue (BranchLabel elseLabel)
 
void EmitBranchFalse (BranchLabel elseLabel)
 
void EmitThrow ()
 
void EmitThrowVoid ()
 
void EmitRethrow ()
 
void EmitRethrowVoid ()
 
void EmitEnterTryFinally (BranchLabel finallyStartLabel)
 
void EmitEnterTryCatch ()
 
EnterTryFaultInstruction EmitEnterTryFault (BranchLabel tryEnd)
 
void EmitEnterFinally (BranchLabel finallyStartLabel)
 
void EmitLeaveFinally ()
 
void EmitEnterFault (BranchLabel faultStartLabel)
 
void EmitLeaveFault ()
 
void EmitEnterExceptionFilter ()
 
void EmitLeaveExceptionFilter ()
 
void EmitEnterExceptionHandlerNonVoid ()
 
void EmitEnterExceptionHandlerVoid ()
 
void EmitLeaveExceptionHandler (bool hasValue, BranchLabel tryExpressionEndLabel)
 
void EmitIntSwitch< T > (Dictionary< T, int > cases)
 
void EmitStringSwitch (Dictionary< string, int > cases, StrongBox< int > nullCase)
 

Package Functions

Instruction GetInstruction (int index)
 
void SwitchToBoxed (int index, int instructionIndex)
 
void EmitInitializeParameter (int index)
 
void EmitCreateDelegate (LightDelegateCreator creator)
 
void FixupBranch (int branchIndex, int offset)
 

Static Package Functions

static Instruction LoadLocalBoxed (int index)
 
static Instruction AssignLocalBoxed (int index)
 
static Instruction StoreLocalBoxed (int index)
 
static Instruction Parameter (int index)
 
static Instruction ParameterBox (int index)
 
static Instruction InitReference (int index)
 
static Instruction InitImmutableRefBox (int index)
 

Properties

int Count [get]
 
int CurrentStackDepth [get]
 
int CurrentContinuationsDepth [get]
 

Private Member Functions

void UpdateStackDepth (Instruction instruction)
 
Instruction GetLoadField (FieldInfo field)
 
RuntimeLabel[] BuildRuntimeLabels ()
 
int EnsureLabelIndex (BranchLabel label)
 
void EmitBranch (OffsetInstruction instruction, BranchLabel label)
 

Private Attributes

readonly List< Instruction_instructions = new List<Instruction>()
 
List< object > _objects
 
int _currentStackDepth
 
int _maxStackDepth
 
int _currentContinuationsDepth
 
int _maxContinuationDepth
 
int _runtimeLabelCount
 
List< BranchLabel_labels
 

Static Private Attributes

static Instruction s_null
 
static Instruction s_true
 
static Instruction s_false
 
static Instruction[] s_Ints
 
static Instruction[] s_loadObjectCached
 
static Instruction[] s_loadLocal
 
static Instruction[] s_loadLocalBoxed
 
static Instruction[] s_loadLocalFromClosure
 
static Instruction[] s_loadLocalFromClosureBoxed
 
static Instruction[] s_assignLocal
 
static Instruction[] s_storeLocal
 
static Instruction[] s_assignLocalBoxed
 
static Instruction[] s_storeLocalBoxed
 
static Instruction[] s_assignLocalToClosure
 
static readonly Dictionary< FieldInfo, Instructions_loadFields = new Dictionary<FieldInfo, Instruction>()
 
static readonly RuntimeLabel[] s_emptyRuntimeLabels
 

Detailed Description

Definition at line 10 of file InstructionList.cs.


The documentation for this class was generated from the following file: