Пример #1
0
        private Expression Resolve(string Token)
        {
            Expression resolve = context.LookupName(Token).SingleOrDefault();

            if (!ReferenceEquals(resolve, null))
            {
                return(resolve);
            }
            else
            {
                return(Variable.New(Token));
            }
        }
Пример #2
0
        protected override Expression VisitVariable(Variable V)
        {
            IEnumerable <Expression> lookup = ns.LookupName(V.Name);

            switch (lookup.Count())
            {
            case 0: return(V);

            case 1: return(lookup.Single());

            default: throw new UnresolvedName(V.Name);
            }
        }