public Exp expr() { var e = xor_expr(); if (e == null) return e; while (PeekAndDiscard(TokenType.OP_BAR)) { var r = xor_expr(); if (r == null) Unexpected(); e = new BinExp (Op.BitOr, e, r, filename, e.Start, r.End); } return e; }
public void Parse_DottedName() { var parser = new Parser("foo.py", Lex("foo.bar.baz,")); var exp = parser.expr(); Assert.AreEqual("foo.bar.baz", exp.ToString()); }