/// <summary> /// Negates a value and pushes the result onto the evaluation stack. /// </summary> public FluentIlGenerator Neg() { IlGenerator.Emit(OpCodes.Neg); return(this); }
/// <summary> /// Transfers control from the�fault�or�finally�clause of an exception block back to the Common Language /// Infrastructure (CLI) exception handler. /// </summary> public FluentIlGenerator Endfinally() { IlGenerator.Emit(OpCodes.Endfinally); return(this); }
/// <summary> /// Transfers control to a target instruction if the first value is greater than or equal to the second value. /// </summary> public FluentIlGenerator Bge(Label label) { IlGenerator.Emit(OpCodes.Bge, label); return(this); }
/// <summary> /// Implements a jump table. /// </summary> public FluentIlGenerator Switch(params Label[] labels) { IlGenerator.Emit(OpCodes.Switch, labels); return(this); }
/// <summary> /// Transfers control to a target instruction (short form) if�value�is�true, not null, or non-zero. /// </summary> public FluentIlGenerator Brtrue_S(Label label) { IlGenerator.Emit(OpCodes.Brtrue_S, label); return(this); }
/// <summary> /// Stores a object reference value at a supplied address. /// </summary> public FluentIlGenerator Stind_Ref() { IlGenerator.Emit(OpCodes.Stind_Ref); return(this); }
/// <summary> /// Exits current method and jumps to specified method. /// </summary> public FluentIlGenerator Jmp(MethodInfo methodInfo) { IlGenerator.Emit(OpCodes.Jmp, methodInfo); return(this); }
/// <summary> /// Pushes the supplied�int8�value onto the evaluation stack as an�int32, short form. /// </summary> public FluentIlGenerator Ldc_I4_S(sbyte value) { IlGenerator.Emit(OpCodes.Ldc_I4_S, value); return this; }
/// <summary> /// Pushes a supplied value of type�int64�onto the evaluation stack as an�int64. /// </summary> public FluentIlGenerator Ldc_I8(long value) { IlGenerator.Emit(OpCodes.Ldc_I8, value); return this; }
/// <summary> /// Subtracts one unsigned integer value from another, performs an overflow check, and pushes the result onto the /// evaluation stack. /// </summary> public FluentIlGenerator Sub_Ovf_Un() { IlGenerator.Emit(OpCodes.Sub_Ovf_Un); return(this); }
/// <summary> /// Adds two values and pushes the result onto the evaluation stack. /// </summary> public FluentIlGenerator Add() { IlGenerator.Emit(OpCodes.Add); return(this); }
/// <summary> /// Subtracts one value from another and pushes the result onto the evaluation stack. /// </summary> public FluentIlGenerator Sub() { IlGenerator.Emit(OpCodes.Sub); return(this); }
/// <summary> /// Divides two unsigned values and pushes the remainder onto the evaluation stack. /// </summary> public FluentIlGenerator Rem_Un() { IlGenerator.Emit(OpCodes.Rem_Un); return(this); }
/// <summary> /// Shifts an integer value (in sign) to the right by a specified number of bits, pushing the result onto the /// evaluation stack. /// </summary> public FluentIlGenerator Shr() { IlGenerator.Emit(OpCodes.Shr); return(this); }
/// <summary> /// Pushes a supplied value of type�int32�onto the evaluation stack as an�int32. /// </summary> public FluentIlGenerator Ldc_I4(int value) { IlGenerator.Emit(OpCodes.Ldc_I4, value); return this; }
/// <summary> /// Pushes a supplied value of type�float32�onto the evaluation stack as type�F�(float). /// </summary> public FluentIlGenerator Ldc_R4(float value) { IlGenerator.Emit(OpCodes.Ldc_R4, value); return this; }
/// <summary> /// Pushes the integer value of 1 onto the evaluation stack as an�int32. /// </summary> public FluentIlGenerator Ldc_I4_1() { IlGenerator.Emit(OpCodes.Ldc_I4_1); return this; }
/// <summary> /// Pushes a supplied value of type�float64�onto the evaluation stack as type�F�(float). /// </summary> public FluentIlGenerator Ldc_R8(double value) { IlGenerator.Emit(OpCodes.Ldc_R8, value); return this; }
/// <summary> /// Loads a value of type�native int�as a�native int�onto the evaluation stack indirectly. /// </summary> public FluentIlGenerator Ldind_I() { IlGenerator.Emit(OpCodes.Ldind_I); return(this); }
/// <summary> /// Creates a new object or a new instance of a value type, pushing an object reference (type�O) onto the /// evaluation stack. /// </summary> public FluentIlGenerator Newobj(ConstructorInfo ctorInfo) { IlGenerator.Emit(OpCodes.Newobj, ctorInfo); return this; }
/// <summary> /// Transfers control to a target instruction when two unsigned integer values or unordered float values are not /// equal. /// </summary> public FluentIlGenerator Bne_Un(Label label) { IlGenerator.Emit(OpCodes.Bne_Un, label); return(this); }
/// <summary> /// Copies a value of a specified type from the evaluation stack into a supplied memory address. /// </summary> public FluentIlGenerator Stobj(Type type) { IlGenerator.Emit(OpCodes.Stobj, type); return this; }
/// <summary> /// Signals the Common Language Infrastructure (CLI) to inform the debugger that a break point has been tripped. /// </summary> public FluentIlGenerator Break() { IlGenerator.Emit(OpCodes.Break); return(this); }
/// <summary> /// Tests whether an object reference (type�O) is a new instance of a particular class. /// </summary> public FluentIlGenerator Isinst(Type type) { IlGenerator.Emit(OpCodes.Isinst, type); return this; }
/// <summary> /// Transfers control from the�filter�clause of an exception back to the Common Language Infrastructure (CLI) /// exception handler. /// </summary> public FluentIlGenerator Endfilter() { IlGenerator.Emit(OpCodes.Endfilter); return(this); }
/// <summary> /// Pushes a null reference (type�O) onto the evaluation stack. /// </summary> public FluentIlGenerator Ldnull() { IlGenerator.Emit(OpCodes.Ldnull); return this; }
/// <summary> /// Exits a protected region of code, unconditionally transferring control to a target instruction (short form). /// </summary> public FluentIlGenerator Leave_S(Label label) { IlGenerator.Emit(OpCodes.Leave_S, label); return(this); }
/// <summary> /// Pushes a new object reference to a string literal stored in the metadata. /// </summary> public FluentIlGenerator Ldstr(string value) { IlGenerator.Emit(OpCodes.Ldstr, value); return this; }
/// <summary> /// Loads the element with type�unsigned int32�at a specified array index onto the top of the evaluation stack as /// an�int32. /// </summary> public FluentIlGenerator Ldelem_U4() { IlGenerator.Emit(OpCodes.Ldelem_U4); return(this); }
/// <summary> /// Multiplies two integer values, performs an overflow check, and pushes the result onto the evaluation stack. /// </summary> public FluentIlGenerator Mul_Ovf() { IlGenerator.Emit(OpCodes.Mul_Ovf); return(this); }