A JEXL parser and evaluator.
Project description
# PyJEXL
A Python-based JEXL parser and evaluator.
## Limitations and Differences from JEXL
- JavaScript-style implicit type conversions aren't supported, but may be added
in the future. Instead, Python type semantics are used.
- Property access is only supported for mapping objects currently.
- Several odd edge-cases in JEXL are ignored because they are unintuitive,
difficult to implement, or a bad pattern:
- Implicitly using the first element in an array when chaining identifiers
is not supported. In JEXL, if `foo.bar` is a list, the expression
`foo.bar.baz` is equivalent to `foo.bar[0].baz`.
- Conditional expressions (AKA ternary expressions) cannot have a missing
consequent, i.e. `"foo" ?: 4` is invalid.
## License
Licensed under the MIT License. See `LICENSE` for details.
A Python-based JEXL parser and evaluator.
## Limitations and Differences from JEXL
- JavaScript-style implicit type conversions aren't supported, but may be added
in the future. Instead, Python type semantics are used.
- Property access is only supported for mapping objects currently.
- Several odd edge-cases in JEXL are ignored because they are unintuitive,
difficult to implement, or a bad pattern:
- Implicitly using the first element in an array when chaining identifiers
is not supported. In JEXL, if `foo.bar` is a list, the expression
`foo.bar.baz` is equivalent to `foo.bar[0].baz`.
- Conditional expressions (AKA ternary expressions) cannot have a missing
consequent, i.e. `"foo" ?: 4` is invalid.
## License
Licensed under the MIT License. See `LICENSE` for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyjexl-0.1.1.tar.gz
(7.4 kB
view hashes)
Built Distribution
Close
Hashes for pyjexl-0.1.1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 876b7349994e52f7f995f4983a599ee9f83740230f0ca88c160aca835c1aa8c1 |
|
MD5 | 0592e7b5c50f8bd96d7910b60f3d33fa |
|
BLAKE2b-256 | 56730753c3f07dd31050a6fded55e05dc97ccf726635878316325f1068cc76a3 |