示例#1
0
        public static PhpCompilation Create(
            string assemblyName,
            IEnumerable <PhpSyntaxTree> syntaxTrees     = null,
            IEnumerable <MetadataReference> references  = null,
            IEnumerable <ResourceDescription> resources = null,
            PhpCompilationOptions options = null)
        {
            Debug.Assert(options != null);

            var compilation = new PhpCompilation(
                assemblyName,
                options,
                ValidateReferences <CompilationReference>(references),
                false);

            compilation.SynthesizedResources = resources;

            compilation.CheckAssemblyName(compilation.DeclarationDiagnostics);

            compilation.SourceSymbolCollection.AddSyntaxTreeRange(syntaxTrees);

            //
            return(compilation);
        }