Exemplo n.º 1
0
Arquivo: AST.cs Projeto: chenzuo/blue
 // Resolve the events
 public override void ResolveMember(
     TypeEntry symDefiningClass, 
     ISemanticResolver s,
     ICLRtypeProvider provider        
     )
 {
     m_tType.ResolveType(s);
     
     m_symbol = new EventExpEntry(symDefiningClass, this);
     s.GetCurrentContext().AddSymbol(m_symbol);
     
     // If an event has no handlers
     if (m_addMethod == null && m_addMethod == null)
     {
         FixDefaultHandlers(symDefiningClass, s, provider);        
     }
     
     
     Debug.Assert(m_addMethod != null && m_removeMethod != null);
     Debug.Assert(m_addMethod.Symbol == null); // shouldn't have resolved handlers yet
     Debug.Assert(m_removeMethod.Symbol == null); 
     
     // The handlers should be treated just like normal methods..
     ClassDecl c = symDefiningClass.Node;
     c.AddMethodToList(m_addMethod);
     c.AddMethodToList(m_removeMethod);
     
            
 }
Exemplo n.º 2
0
 public EventExp(
     EventExpEntry symbol,
     Exp expInstance // null for statics
     )
 {
     Debug.Assert(symbol != null);
     m_symbol        = symbol;
     m_expInstance   = expInstance;
 }