示例#1
0
        ////////////////////////////////////////////////////////////////////////////////
        // Construct a compiler. All the real work is done in the Init() routine. This
        // primary initializes all the sub-components.

        public LangCompiler(CController pCtrl, NameManager pNameMgr)
        {
            Debug.Assert(pCtrl != null);

            pController         = pCtrl;
            globalSymbolContext = new GlobalSymbolContext(pNameMgr);
            m_userStringBuilder = new UserStringBuilder(globalSymbolContext);
            m_errorContext      = new ErrorHandling(m_userStringBuilder, this, pCtrl.GetErrorFactory());
            m_symbolLoader      = new SymbolLoader(globalSymbolContext, null, m_errorContext);
        }
示例#2
0
 public SymbolLoader(
     GlobalSymbolContext globalSymbols,
     UserStringBuilder userStringBuilder,
     ErrorHandling errorContext
     )
 {
     _nameManager        = globalSymbols.GetNameManager();
     PredefinedMembers   = new PredefinedMembers(this);
     ErrorContext        = errorContext;
     GlobalSymbolContext = globalSymbols;
     Debug.Assert(GlobalSymbolContext != null);
 }