Icarus
Vehicle Simulation as a Transformable Computational Graph, built on Vulcan and Janus
Loading...
Searching...
No Matches
icarus::ConditionParser< Scalar > Class Template Reference

Parser for condition expressions. More...

#include <ConditionParser.hpp>

Public Member Functions

CompiledCondition< Scalar > Parse (const std::string &condition)
 Parse a condition string.

Detailed Description

template<typename Scalar>
class icarus::ConditionParser< Scalar >

Parser for condition expressions.

Grammar: expression -> or_expr or_expr -> and_expr (OR and_expr)* and_expr -> not_expr (AND not_expr)* not_expr -> NOT not_expr | primary primary -> comparison | '(' expression ')' comparison -> identifier ('<'|'<='|'>'|'>='|'=='|'!=') (number | identifier)

Member Function Documentation

◆ Parse()

template<typename Scalar>
CompiledCondition< Scalar > icarus::ConditionParser< Scalar >::Parse ( const std::string & condition)
inlinenodiscard

Parse a condition string.

Parameters
conditionThe condition expression (e.g., "x < 10 AND y > 5")
Returns
CompiledCondition ready for evaluation
Exceptions
ConditionErroron parse failure

The documentation for this class was generated from the following file: