public IBoundExpression Resolve()
        {
            IBoundExpression boundExpression = null;
            string           name            = ExpressionName.GetName(_expression.name());

            boundExpression = ResolveEnclosingModule(name);
            if (boundExpression != null)
            {
                return(boundExpression);
            }
            boundExpression = ResolveEnclosingProject(name);
            if (boundExpression != null)
            {
                return(boundExpression);
            }
            boundExpression = ResolveOtherModuleInEnclosingProject(name);
            if (boundExpression != null)
            {
                return(boundExpression);
            }
            boundExpression = ResolveReferencedProject(name);
            if (boundExpression != null)
            {
                return(boundExpression);
            }
            boundExpression = ResolveModuleInReferencedProject(name);
            return(boundExpression);
        }
 private string GetUnrestrictedName()
 {
     if (_memberAccessExpression != null)
     {
         return(ExpressionName.GetName(_memberAccessExpression.unrestrictedName()));
     }
     return(ExpressionName.GetName(_memberAccessExpr.unrestrictedName()));
 }