예제 #1
0
        public ExecutionContext(ImmutableStack <string> callStack, MethodUniqueSignature signature, MethodDef method,
                                bool enableStaticFields, bool markInputArguments)
        {
            this.method             = method;
            this.enableStaticFields = enableStaticFields;
            CallStack = callStack;
            Signature = signature;

            staticEntity = new SymbolicReference();
            Static       = new SymbolicSlot(staticEntity);

            var countArguments = method.GetParameterCount();

            Arguments        = new ArgumentContext(signature, countArguments, markInputArguments);
            InstructionCount = method.HasBody ? (double)method.Body.Instructions.Count : 0;
        }