Beispiel #1
0
        public Void VisitAssignExpr(Expr.Assign expr)
        {
            Resolve(expr.value);
            ResolveLocal(expr, expr.name);

            return(null);
        }
Beispiel #2
0
        public object VisitAssignExpr(Expr.Assign expr)
        {
            object value = Evaluate(expr.value);

            try
            {
                int distance = locals[expr];

                environment.AssignAt(distance, expr.name, value);
            }
            catch
            {
                globals.Assign(expr.name, value);
            }

            return(value);
        }