Header menu logo F# Compiler Guide

ILBinaryReader Module

 Binary reader.  Read a .NET binary and concert it to Abstract IL data
 structures.
 
 NOTE:
   - The metadata in the loaded modules will be relative to 
     those modules, e.g. ILScopeRef.Local will mean "local to 
     that module".  You must use [rescopeILType] etc. if you want to include 
     (i.e. copy) the metadata into your own module. 

   - PDB (debug info) reading/folding:
     The PDB reader is invoked if you give a PDB path 
     This indicates if you want to search for PDB files and have the 
     reader fold them in.  You cannot currently name the pdb file 
     directly - you can only name the path.  Giving "None" says 
     "do not read the PDB file even if one exists". 
 
     The debug info appears primarily as I_seqpoint annotations in 
     the instruction streams.  Unfortunately the PDB information does
     not, for example, tell you how to map back from a class definition
     to a source code line number - you will need to explicitly search
     for a sequence point in the code for one of the methods of the 
     class.  That is not particularly satisfactory, and it may be
     a good idea to build a small library which extracts the information
     you need.

Types and nested modules

Type/Module Description

Shim

The public API hook for changing the IL assembly reader, used by Resharper

ILModuleReader

Represents a reader of the metadata of a .NET binary. May also give some values (e.g. IL code) from the PE file if it was provided.

ILReaderOptions

ILReaderTryGetMetadataSnapshot

MetadataOnlyFlag

ReduceMemoryFlag

Type something to start searching.