public ScriptBuilder(AssemblyLoader assemblyLoader = null) { if (assemblyLoader == null) { assemblyLoader = new InteractiveAssemblyLoader(); } _assemblyNamePrefix = s_globalAssemblyNamePrefix + "#" + Interlocked.Increment(ref s_engineIdDispenser); _collectibleCodeManager = new CollectibleCodeManager(assemblyLoader, _assemblyNamePrefix); _uncollectibleCodeManager = new UncollectibleCodeManager(assemblyLoader, _assemblyNamePrefix); }
internal CommonScriptEngine(MetadataFileProvider metadataFileProvider, IAssemblyLoader assemblyLoader) { if (metadataFileProvider == null) { metadataFileProvider = MetadataFileProvider.Default; } if (assemblyLoader == null) { assemblyLoader = new AssemblyLoader(); } var initialReferences = new List <MetadataReference>() { metadataFileProvider.GetReference(typeof(object).Assembly.Location, MetadataReferenceProperties.Assembly), metadataFileProvider.GetReference(typeof(Session).Assembly.Location, MetadataReferenceProperties.Assembly), }; this.assemblyNamePrefix = globalAssemblyNamePrefix + "#" + Interlocked.Increment(ref engineIdDispenser); this.metadataFileProvider = metadataFileProvider; this.collectibleCodeManager = new CollectibleCodeManager(assemblyLoader, assemblyNamePrefix); this.uncollectibleCodeManager = new UncollectibleCodeManager(assemblyLoader, assemblyNamePrefix); string initialBaseDirectory; try { initialBaseDirectory = Directory.GetCurrentDirectory(); } catch { initialBaseDirectory = null; } this.fileResolver = CreateFileResolver(DefaultReferenceSearchPaths, initialBaseDirectory); this.importedNamespaces = new List <string>(); this.references = initialReferences; }
public ScriptBuilder(AssemblyLoader assemblyLoader = null) { if (assemblyLoader == null) { assemblyLoader = new InteractiveAssemblyLoader(); } _assemblyNamePrefix = s_globalAssemblyNamePrefix + "#" + Interlocked.Increment(ref s_engineIdDispenser).ToString(); _collectibleCodeManager = new CollectibleCodeManager(assemblyLoader, _assemblyNamePrefix); _uncollectibleCodeManager = new UncollectibleCodeManager(assemblyLoader, _assemblyNamePrefix); }