private void ReadMethodBody() { this.MoveTo(this.method.RVA); byte b = base.ReadByte(); switch (b & 3) { case 2: this.body.code_size = b >> 2; this.body.MaxStackSize = 8; this.ReadCode(); break; case 3: this.position--; this.ReadFatMethod(); break; default: throw new InvalidOperationException(); } ISymbolReader symbol_reader = this.reader.module.symbol_reader; if (symbol_reader != null) { Collection <Instruction> instructions = this.body.Instructions; symbol_reader.Read(this.body, (int offset) => CodeReader.GetInstruction(instructions, offset)); } }
private Instruction GetInstruction(int offset) { return(CodeReader.GetInstruction(this.body.Instructions, offset)); }