{ "property-basics": [ { "expr": "foo.bar", "contexts": { "foo": { "bar": "baz" } }, "result": { "kind": "String", "value": "baz" } }, { "expr": "foo.Bar", "contexts": { "foo": { "Bar": "baz" } }, "result": { "kind": "String", "value": "baz" } }, { "expr": "foo.b", "contexts": { "foo": { "b": "baz" } }, "result": { "kind": "String", "value": "baz" } }, { "expr": "foo._", "contexts": { "foo": { "_": "baz" } }, "result": { "kind": "String", "value": "baz" } }, { "expr": "foo._bar", "contexts": { "foo": { "_bar": "baz" } }, "result": { "kind": "String", "value": "baz" } }, { "expr": "foo.b_ar", "contexts": { "foo": { "b_ar": "baz" } }, "result": { "kind": "String", "value": "baz" } }, { "expr": "foo.b-ar", "contexts": { "foo": { "b-ar": "baz" } }, "result": { "kind": "String", "value": "baz" } }, { "expr": "fromJson('{\"one\": \"one val\"}').one", "result": { "kind": "String", "value": "one val" } }, { "expr": "(fromJson('{\"one\": \"one val\"}')).one", "result": { "kind": "String", "value": "one val" } }, { "expr": "foo[*]", "contexts": { "foo": { "one": "one val", "two": "two val" } }, "result": { "kind": "Array", "value": ["one val", "two val"] } } ], "property-case-insensitive": [ { "expr": "foo.bar", "contexts": { "foo": { "BAR": "baz" } }, "result": { "kind": "String", "value": "baz" } }, { "expr": "foo.BAR", "contexts": { "foo": { "bar": "baz" } }, "result": { "kind": "String", "value": "baz" } } ], "property-matches-const": [ { "expr": "foo.true", "contexts": { "foo": { "true": "it's true" } }, "result": { "kind": "String", "value": "it's true" } }, { "expr": "foo.false", "contexts": { "foo": { "false": "it's false" } }, "result": { "kind": "String", "value": "it's false" } }, { "expr": "foo.Infinity", "contexts": { "foo": { "Infinity": "it's Infinity" } }, "result": { "kind": "String", "value": "it's Infinity" } }, { "expr": "foo.NaN", "contexts": { "foo": { "NaN": "it's NaN" } }, "result": { "kind": "String", "value": "it's NaN" } }, { "expr": "foo.null", "contexts": { "foo": { "null": "it's null" } }, "result": { "kind": "String", "value": "it's null" } }, { "expr": "foo.format", "contexts": { "foo": { "format": "it's format" } }, "result": { "kind": "String", "value": "it's format" } } ], "property-errors": [ { "expr": "foo.b@r", "contexts": { "foo": { "b@r": "baz" } }, "err": { "kind": "lexing", "value": "Unexpected symbol: 'b@r'. Located at position 5 within expression: foo.b@r" } }, { "expr": "foo.1", "contexts": { "foo": {} }, "err": { "kind": "parsing", "value": "Unexpected symbol: '1'. Located at position 5 within expression: foo.1" } }, { "expr": "fromjson('').1", "err": { "kind": "parsing", "value": "Unexpected symbol: '1'. Located at position 14 within expression: fromjson('').1" } }, { "expr": "foo[1].2", "contexts": { "foo": {} }, "err": { "kind": "parsing", "value": "Unexpected symbol: '2'. Located at position 8 within expression: foo[1].2" } } ] }