Esempio n. 1
0
 /// <summary>
 /// Do a deep lookup in this scope. This includes super scopes but not lexical parents.
 /// </summary>
 /// <remarks>
 /// <para>If this scope does not have an ILookupController, this is equivalent to
 /// just calling <see cref="LookupSymbolInThisScopeOnly"/> </para>
 /// <para>else this calls <see cref="ILookupController.SmartLookup"/></para>
 /// </remarks>
 /// <param name="strName">String name to search for</param>
 /// <returns>A symbol added under this name. Null if not found.</returns>
 public SymEntry LookupSymbol(string strName)
 {
     // @todo - we do this when looking for namespaces during import.
     // If it's not there, we add it.
     // It would be nice to enable this assert though...
     //Debug.Assert(m_fIsLocked, "Don't lookup a symbol in an unlocked scope");
     if (m_pController == null)
     {
         return(this.LookupSymbolInThisScopeOnly(strName));
     }
     else
     {
         return(m_pController.SmartLookup(strName, this));
     }
 }