3 types derived from Value
ILCompiler.Compiler (3)
Compiler\TypePreinit.cs (3)
2305private abstract class BaseValueTypeValue : Value 3064private abstract class ByRefValueBase : Value, INativeIntConvertibleValue 3164private 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>(); 133Status status = nestedPreinit.TryScanMethod(type.GetStaticConstructor(), null, recursionProtect, ref instructionCounter, out Value _); 156private Status TryScanMethod(MethodDesc method, Value[] parameters, Stack<MethodDesc> recursionProtect, ref int instructionCounter, out Value returnValue) 168private Status TryScanMethod(MethodIL methodIL, Value[] parameters, Stack<MethodDesc> recursionProtect, ref int instructionCounter, out Value returnValue) 195Value[] locals = new Value[localTypes.Length]; 382Value value = stack.PopIntoLocation(field.FieldType); 410Value fieldValue; 457if (fieldValue == null || !fieldValue.TryCreateByRef(out Value byRefValue)) 508Value[] methodParams = new Value[numParams]; 521Value retVal; 589Value[] ctorParameters = new Value[ctorSig.Length + 1]; 597Value instance; 724Value value = stack.PopIntoLocation(field.FieldType); 763Value fieldValue = loadableInstance.GetField(field); 1094Value[] storage = opcode is ILOpcode.ldloca or ILOpcode.ldloca_s ? locals : parameters; 1100Value localValue = storage[index]; 1101if (localValue == null || !localValue.TryCreateByRef(out Value byrefValue)) 1390|| !Value.TryCompareEquality(value1.Value, value2.Value, out compareResult)) 1591Value value = stack.PopIntoLocation(elementType); 1653if (!arrayInstance.TryLoadElement(index, out Value value)) 1685Value value = stack.PopIntoLocation(type); 1703&& objInst.TryUnboxAny(type, out Value unboxed)) 1740&& byRefVal.TryLoad(type, out Value dereferenced)) 1772Value val = opcode switch 1880private bool TryHandleIntrinsicCall(MethodDesc method, Value[] parameters, out Value retVal) 2040public void Push(StackValueKind kind, Value val) 2050public void PushFromLocation(TypeDesc locationType, Value value) 2094public Value PopIntoLocation(TypeDesc locationType) 2238bool TrySetField(FieldDesc field, Value value); 2239Value GetField(FieldDesc field); 2258bool TryAssign(Value value); 2263public abstract bool TryCompareEquality(Value value, out bool result); 2265public static bool TryCompareEquality(Value value1, Value value2, out bool result) 2280public virtual bool TryCreateByRef(out Value value) 2302public virtual Value Clone() => ThrowInvalidProgram<Value>(); 2328public override Value Clone() 2333public override bool TryCreateByRef(out Value value) 2339bool IAssignableValue.TryAssign(Value value) 2356public override bool TryCompareEquality(Value value, out bool result) 2470public override bool TryCompareEquality(Value value, out bool result) 2503public override bool TryCreateByRef(out Value value) 2517public override bool TryCompareEquality(Value value, out bool result) 2534bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) 2557Value IHasInstanceFields.GetField(FieldDesc field) 2638public override bool TryCompareEquality(Value value, out bool result) 2661public override bool TryCreateByRef(out Value value) 2667public override Value Clone() 2672bool IAssignableValue.TryAssign(Value value) 2694public override bool TryCompareEquality(Value value, out bool result) 2711public override bool TryStore(Value value) 2728public override bool TryLoad(TypeDesc type, out Value value) 2744public override Value Clone() => this; // The reference is immutable 2761bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) 2770Value IHasInstanceFields.GetField(FieldDesc field) 2813public override bool TryCompareEquality(Value value, out bool result) 2848public override bool TryCompareEquality(Value value, out bool result) 2921public override bool TryCompareEquality(Value value, out bool result) 2938public override Value Clone() 2943public override bool TryCreateByRef(out Value value) 2958public override bool TryCompareEquality(Value value, out bool result) 2975public bool TrySetField(FieldDesc field, Value value) 3002public Value GetField(FieldDesc field) 3038public override bool TryCompareEquality(Value value, out bool result) 3061public override Value Clone() => this; // Immutable 3066public virtual bool TryStore(Value value) => false; 3067public virtual bool TryLoad(TypeDesc type, out Value value) 3088public override bool TryCompareEquality(Value value, out bool result) 3101Value IHasInstanceFields.GetField(FieldDesc field) => new FieldAccessor(PointedToBytes, PointedToOffset).GetField(field); 3102bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) => new FieldAccessor(PointedToBytes, PointedToOffset).TrySetField(field, value); 3120public override bool TryStore(Value value) 3134public override bool TryLoad(TypeDesc type, out Value value) 3149public override Value Clone() => this; // Immutable 3170public override bool TryCompareEquality(Value value, out bool result) 3349public bool TryStoreElement(int index, Value value) 3362public bool TryLoadElement(int index, out Value value) 3503Value IHasInstanceFields.GetField(FieldDesc field) => new FieldAccessor(_value).GetField(field); 3504bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) => false; 3521public static bool TryBox(DefType type, Value value, AllocationSite allocationSite, out ObjectInstance result) 3537public bool TryUnboxAny(TypeDesc type, out Value value) 3553Value IHasInstanceFields.GetField(FieldDesc field) => new FieldAccessor(_data).GetField(field); 3554bool IHasInstanceFields.TrySetField(FieldDesc field, Value value) => new FieldAccessor(_data).TrySetField(field, value); 3605public bool TrySetField(FieldDesc field, Value value) 3659public readonly Value Value; 3661public StackEntry(StackValueKind valueKind, Value value) 3695private readonly Dictionary<FieldDesc, Value> _fieldValues; 3698public NestedPreinitResult(Dictionary<FieldDesc, Value> fieldValues, int baseInstructionCounter) 3701public bool TryGetFieldValue(TypePreinit context, FieldDesc field, out Value value) 3703Value fieldValue = _fieldValues[field];