public override bool Walk(SublistParameter node) { node.PythonVariable = _binder.DefineParameter(node.Name); // we walk the node by hand to avoid walking the default values. WalkTuple(node.Tuple); return(false); }
public override bool Walk(SublistParameter node) { return(true); }
// parameter ::= // identifier | "(" sublist ")" private Parameter ParseParameter(int position, HashSet<string> names) { Token t = PeekToken(); Parameter parameter = null; switch (t.Kind) { case TokenKind.LeftParenthesis: // sublist NextToken(); Expression ret = ParseSublist(names); Eat(TokenKind.RightParenthesis); TupleExpression tret = ret as TupleExpression; NameExpression nameRet; if (tret != null) { parameter = new SublistParameter(position, tret); } else if ((nameRet = ret as NameExpression) != null) { parameter = new Parameter(nameRet.Name); } else { ReportSyntaxError(_lookahead); } if (parameter != null) { parameter.SetLoc(_globalParent, ret.IndexSpan); } break; case TokenKind.Name: // identifier NextToken(); string name = FixName((string)t.Value); parameter = new Parameter(name); CompleteParameterName(parameter, name, names); break; default: ReportSyntaxError(_lookahead); break; } return parameter; }
public override bool Walk(SublistParameter node) { node.PythonVariable = _binder.DefineParameter(node.Name); node.Parent = _binder._currentScope; // we walk the node by hand to avoid walking the default values. WalkTuple(node.Tuple); return false; }
// SublistParameter public override bool Walk(SublistParameter node) { node.Parent = _currentScope; return(base.Walk(node)); }
public override bool Walk(SublistParameter node) { CommonWalk(node); return true; }
public override void PostWalk(SublistParameter node) { CommonPostWalk(node); }
// parameter ::= // identifier | "(" sublist ")" Parameter ParseParameter(int position, Dictionary<SymbolId, object> names) { Token t = PeekToken(); Parameter parameter = null; switch (t.Kind) { case TokenKind.LeftParenthesis: // sublist NextToken(); Expression ret = ParseSublist(names); Eat(TokenKind.RightParenthesis); TupleExpression tret = ret as TupleExpression; if (tret != null) { parameter = new SublistParameter(position, tret); } else { parameter = new Parameter(((NameExpression)ret).Name); } parameter.SetLoc(ret.Span); break; case TokenKind.Name: // identifier NextToken(); SymbolId name = FixName((SymbolId)t.Value); parameter = new Parameter(name); CompleteParameterName(parameter, name, names); break; default: ReportSyntaxError(_lookahead); break; } return parameter; }
public override bool Walk(SublistParameter node) { return true; }
public override bool Walk(SublistParameter node) { node.Variable = _binder.DefineParameter(node.Name); return true; }
// SublistParameter public override bool Walk(SublistParameter node) { node.Parent = _currentScope; return base.Walk(node); }
public void Visit(PyAst.SublistParameter node) => throw CreateNotImplementedEx();