private bool ReadValuePair(StringReader p, ObjectExpr obj) { var saved = p.Position; string pairName; if (ReadIdent(p, out pairName) || p.AnyQuoted(out pairName)) { if (p.ThisText(":")) { ExprPiece pairValue; ReqVal(p, out pairValue); (obj.Pairs ?? (obj.Pairs = new Dictionary<string, ExprPiece>())).Add(pairName, pairValue); return true; } p.Position = saved; } return false; }
private bool ReadStringValue(StringReader p, out ExprPiece value) { string s; if (p.AnyQuoted(out s)) { value = new LiteralConst { Literal = s }; return true; } value = null; return false; }