Class RuntimeRequiredOriginalStorage<TOriginal>
Stores an original value that is always available.
public sealed class RuntimeRequiredOriginalStorage<TOriginal> : IRuntimeOriginalStorageEmitter<TOriginal>
Type Parameters
TOriginal
- Inheritance
-
RuntimeRequiredOriginalStorage<TOriginal>
- Implements
-
IRuntimeOriginalStorageEmitter<TOriginal>
- Inherited Members
- Extension Methods
Properties
Instance
Gets the shared storage emitter.
public static RuntimeRequiredOriginalStorage<TOriginal> Instance { get; }
Property Value
- RuntimeRequiredOriginalStorage<TOriginal>
Methods
DefineField(TypeBuilder)
Defines the original value field.
public FieldBuilder DefineField(TypeBuilder type)
Parameters
typeTypeBuilder
Returns
EmitLoadTarget(ILGenerator, FieldBuilder)
Emits a load of the original target.
public void EmitLoadTarget(ILGenerator il, FieldBuilder field)
Parameters
ilILGeneratorfieldFieldBuilder
EmitLoadValue(ILGenerator, FieldBuilder)
Emits a load of the original value.
public void EmitLoadValue(ILGenerator il, FieldBuilder field)
Parameters
ilILGeneratorfieldFieldBuilder
EmitStoreFromArgument(ILGenerator, FieldBuilder, int)
Emits storage from a method argument.
public void EmitStoreFromArgument(ILGenerator il, FieldBuilder field, int argument)
Parameters
ilILGeneratorfieldFieldBuilderargumentint
EmitTryGetOriginal(ILGenerator, FieldBuilder)
Emits typed original access.
public void EmitTryGetOriginal(ILGenerator il, FieldBuilder field)
Parameters
ilILGeneratorfieldFieldBuilder