3 types derived from Value
ILCompiler.Compiler (3)
Compiler\TypePreinit.cs (3)
2332private abstract class BaseValueTypeValue : Value 3091private abstract class ByRefValueBase : Value, INativeIntConvertibleValue 3191private abstract class ReferenceTypeValue : Value
97 references to Value
ILCompiler.Compiler (97)
Compiler\TypePreinit.cs (97)
42private readonly Dictionary<FieldDesc, Value> _fieldValues = new Dictionary<FieldDesc, Value>(); 134Status status = nestedPreinit.TryScanMethod(type.GetStaticConstructor(), null, recursionProtect, ref instructionCounter, out Value _); 167private Status TryScanMethod(MethodDesc method, Value[] parameters, Stack<MethodDesc> recursionProtect, ref int instructionCounter, out Value returnValue) 179private Status TryScanMethod(MethodIL methodIL, Value[] parameters, Stack<MethodDesc> recursionProtect, ref int instructionCounter, out Value returnValue) 206Value[] locals = new Value[localTypes.Length]; 393Value value = stack.PopIntoLocation(field.FieldType); 421Value fieldValue; 468if (fieldValue == null || !fieldValue.TryCreateByRef(out Value byRefValue)) 519Value[] methodParams = new Value[numParams]; 532Value retVal; 600Value[] ctorParameters = new Value[ctorSig.Length + 1]; 608Value instance; 735Value value = stack.PopIntoLocation(field.FieldType); 774Value fieldValue = loadableInstance.GetField(field); 1121Value[] storage = opcode is ILOpcode.ldloca or ILOpcode.ldloca_s ? locals : parameters; 1127Value localValue = storage[index]; 1128if (localValue == null || !localValue.TryCreateByRef(out Value byrefValue)) 1417|| !Value.TryCompareEquality(value1.Value, value2.Value, out compareResult)) 1618Value value = stack.PopIntoLocation(elementType); 1680if (!arrayInstance.TryLoadElement(index, out Value value)) 1712Value value = stack.PopIntoLocation(type); 1730&& objInst.TryUnboxAny(type, out Value unboxed)) 1767&& byRefVal.TryLoad(type, out Value dereferenced)) 1799Value val = opcode switch 1907private bool TryHandleIntrinsicCall(MethodDesc method, Value[] parameters, out Value retVal) 2067public void Push(StackValueKind kind, Value val) 2077public void PushFromLocation(TypeDesc locationType, Value value) 2121public Value PopIntoLocation(TypeDesc locationType) 2265bool TrySetField(FieldDesc field, Value value); 2266Value GetField(FieldDesc field); 2285bool TryAssign(Value value); 2290public abstract bool TryCompareEquality(Value value, out bool result); 2292public static bool TryCompareEquality(Value value1, Value value2, out bool result) 2307public virtual bool TryCreateByRef(out Value value) 2329public virtual Value Clone() => ThrowInvalidProgram<Value>(); 2355public override Value Clone() 2360public override bool TryCreateByRef(out Value value) 2366bool IAssignableValue.TryAssign(Value value) 2383public override bool TryCompareEquality(Value value, out bool result) 2497public override bool TryCompareEquality(Value value, out bool result) 2530public override bool TryCreateByRef(out Value value) 2544public override bool TryCompareEquality(Value value, out bool result) 2561bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) 2584Value IHasInstanceFields.GetField(FieldDesc field) 2665public override bool TryCompareEquality(Value value, out bool result) 2688public override bool TryCreateByRef(out Value value) 2694public override Value Clone() 2699bool IAssignableValue.TryAssign(Value value) 2721public override bool TryCompareEquality(Value value, out bool result) 2738public override bool TryStore(Value value) 2755public override bool TryLoad(TypeDesc type, out Value value) 2771public override Value Clone() => this; // The reference is immutable 2788bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) 2797Value IHasInstanceFields.GetField(FieldDesc field) 2840public override bool TryCompareEquality(Value value, out bool result) 2875public override bool TryCompareEquality(Value value, out bool result) 2948public override bool TryCompareEquality(Value value, out bool result) 2965public override Value Clone() 2970public override bool TryCreateByRef(out Value value) 2985public override bool TryCompareEquality(Value value, out bool result) 3002public bool TrySetField(FieldDesc field, Value value) 3029public Value GetField(FieldDesc field) 3065public override bool TryCompareEquality(Value value, out bool result) 3088public override Value Clone() => this; // Immutable 3093public virtual bool TryStore(Value value) => false; 3094public virtual bool TryLoad(TypeDesc type, out Value value) 3115public override bool TryCompareEquality(Value value, out bool result) 3128Value IHasInstanceFields.GetField(FieldDesc field) => new FieldAccessor(PointedToBytes, PointedToOffset).GetField(field); 3129bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) => new FieldAccessor(PointedToBytes, PointedToOffset).TrySetField(field, value); 3147public override bool TryStore(Value value) 3161public override bool TryLoad(TypeDesc type, out Value value) 3176public override Value Clone() => this; // Immutable 3197public override bool TryCompareEquality(Value value, out bool result) 3386public bool TryStoreElement(int index, Value value) 3399public bool TryLoadElement(int index, out Value value) 3543Value IHasInstanceFields.GetField(FieldDesc field) => new FieldAccessor(_value).GetField(field); 3544bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) => false; 3561public static bool TryBox(DefType type, Value value, AllocationSite allocationSite, out ObjectInstance result) 3577public bool TryUnboxAny(TypeDesc type, out Value value) 3593Value IHasInstanceFields.GetField(FieldDesc field) => new FieldAccessor(_data).GetField(field); 3594bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) => new FieldAccessor(_data).TrySetField(field, value); 3664public bool TrySetField(FieldDesc field, Value value) 3718public readonly Value Value; 3720public StackEntry(StackValueKind valueKind, Value value) 3754private readonly Dictionary<FieldDesc, Value> _fieldValues; 3757public NestedPreinitResult(Dictionary<FieldDesc, Value> fieldValues, int baseInstructionCounter) 3760public bool TryGetFieldValue(TypePreinit context, FieldDesc field, out Value value) 3762Value fieldValue = _fieldValues[field];