Exemple #1
0
        public LinkedModule Compile(SourceModule sourceModule)
        {
            Contract.Requires(sourceModule != null);

            // package up our inputs to the linker
            LinkContext linkContext = new LinkContext();

            linkContext.AddModule(sourceModule);

            // load any imports that haven't already been loaded
            linkContext.LoadImports();

            // link
            Linker linker = new Linker();

            linker.Link(linkContext);

            // return the result
            return(linkContext.LinkedModule);
        }