コード例 #1
0
        //^ [NotDelayed]
        internal LocalVariableSignatureConverter(
            PEFileToObjectModel peFileToObjectModel,
            MethodBody owningMethodBody,
            MemoryReader signatureMemoryReader
            )
            : base(peFileToObjectModel, signatureMemoryReader, owningMethodBody.MethodDefinition)
        {
            _owningMethodBody = owningMethodBody;
            //^ this.LocalVariables = ILReader.EmptyLocalVariables;
            //^ this.SignatureMemoryReader = signatureMemoryReader;
            //^ base;
            byte firstByte = this.SignatureMemoryReader.ReadByte();

            if (!SignatureHeader.IsLocalVarSignature(firstByte))
            {
                //  MDError
            }
            int locVarCount = this.SignatureMemoryReader.ReadCompressedUInt32();

            LocalVariableDefinition[] locVarArr = new LocalVariableDefinition[locVarCount];
            for (int i = 0; i < locVarCount; ++i)
            {
                locVarArr[i] = this.GetLocalVariable((uint)i);
            }
            //^ NonNullType.AssertInitialized(locVarArr);
            this.LocalVariables = new EnumerableArrayWrapper <LocalVariableDefinition, ILocalDefinition>(locVarArr, Dummy.LocalVariable);
        }
コード例 #2
0
 internal LocalVariableSignatureConverter(
   PEFileToObjectModel peFileToObjectModel,
   MethodBody owningMethodBody,
   MemoryReader signatureMemoryReader
 )
   : base(peFileToObjectModel, signatureMemoryReader, owningMethodBody.MethodDefinition) {
   this.OwningMethodBody = owningMethodBody;
   byte firstByte = this.SignatureMemoryReader.ReadByte();
   if (!SignatureHeader.IsLocalVarSignature(firstByte)) {
     //  MDError
   }
   int locVarCount = this.SignatureMemoryReader.ReadCompressedUInt32();
   LocalVariableDefinition[] locVarArr = new LocalVariableDefinition[locVarCount];
   for (int i = 0; i < locVarCount; ++i) {
     locVarArr[i] = this.GetLocalVariable((uint)i);
   }
   this.LocalVariables = locVarArr;
 }
コード例 #3
0
ファイル: ILReader.cs プロジェクト: harib/Afterthought
     //^ [NotDelayed]
     internal LocalVariableSignatureConverter(
   PEFileToObjectModel peFileToObjectModel,
   MethodBody owningMethodBody,
   MemoryReader signatureMemoryReader
 )
         : base(peFileToObjectModel, signatureMemoryReader, owningMethodBody.MethodDefinition)
     {
         this.OwningMethodBody = owningMethodBody;
           //^ this.LocalVariables = ILReader.EmptyLocalVariables;
           //^ this.SignatureMemoryReader = signatureMemoryReader;
           //^ base;
           byte firstByte = this.SignatureMemoryReader.ReadByte();
           if (!SignatureHeader.IsLocalVarSignature(firstByte)) {
         //  MDError
           }
           int locVarCount = this.SignatureMemoryReader.ReadCompressedUInt32();
           LocalVariableDefinition[] locVarArr = new LocalVariableDefinition[locVarCount];
           for (int i = 0; i < locVarCount; ++i) {
         locVarArr[i] = this.GetLocalVariable((uint)i);
           }
           //^ NonNullType.AssertInitialized(locVarArr);
           this.LocalVariables = new EnumerableArrayWrapper<LocalVariableDefinition, ILocalDefinition>(locVarArr, Dummy.LocalVariable);
     }