<PackageReference Include="Microsoft.CSharp" Version="4.7.0" />

GlobalSymbolContext

using Microsoft.CSharp.RuntimeBinder.Syntax; namespace Microsoft.CSharp.RuntimeBinder.Semantics { internal class GlobalSymbolContext { private PredefinedTypes _predefTypes; private NameManager _nameManager; public TypeManager TypeManager { get; set; } public BSYMMGR GlobalSymbols { get; set; } public GlobalSymbolContext(NameManager namemgr) { TypeManager = new TypeManager(); GlobalSymbols = new BSYMMGR(namemgr, TypeManager); _predefTypes = new PredefinedTypes(GlobalSymbols); TypeManager.Init(GlobalSymbols, _predefTypes); GlobalSymbols.Init(); _nameManager = namemgr; } public TypeManager GetTypes() { return TypeManager; } public BSYMMGR GetGlobalSymbols() { return GlobalSymbols; } public NameManager GetNameManager() { return _nameManager; } public PredefinedTypes GetPredefTypes() { return _predefTypes; } public SymFactory GetGlobalSymbolFactory() { return GetGlobalSymbols().GetSymFactory(); } public MiscSymFactory GetGlobalMiscSymFactory() { return GetGlobalSymbols().GetMiscSymFactory(); } } }