openjd-expr 0.1.2

Open Job Description expression language — types, evaluation, and path mapping
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
// Copyright by contributors to this project.
// SPDX-License-Identifier: (Apache-2.0 OR MIT)

//! Expression parsing and evaluation.
//!
//! Uses `ruff_python_parser` to parse Python expression syntax into an AST,
//! then evaluates with a custom bounded evaluator. This mirrors the Python
//! implementation which uses `ast.parse()` + a custom `Evaluator` class.

pub(crate) mod evaluator;
mod parse;

pub(crate) use evaluator::Evaluator;
pub use evaluator::{EvalResult, DEFAULT_MEMORY_LIMIT, DEFAULT_OPERATION_LIMIT};
pub use parse::{EvalBuilder, ParsedExpression, MAX_EXPRESSION_DEPTH, MAX_PARSE_INPUT_LEN};