F# Compiler Guide

FSharp.Compiler.AbstractIL Namespace

Modules Description


The "unlinked" view of .NET metadata and code. Central to the Abstract IL library


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.