public override bool Walk(NameExpression node) { if (node.Name != null) { _binder.DefineName(node.Name); } return(false); }
private void WalkTuple(TupleExpression tuple) { foreach (var innerNode in tuple.Items) { if (innerNode is NameExpression name) { _binder.DefineName(name.Name); name.AddVariableReference(_binder.GlobalScope, _binder.BindReferences, _binder.Reference(name.Name)); } else if (innerNode is TupleExpression expression) { WalkTuple(expression); } } }