Math expression evaluator using Shunting Yard algorithm.
dev.simplified.expression- Expression, ArrayStack, ValidationResult, VariableProviderdev.simplified.expression.exception- ExpressionException, EvaluationException, InvalidExpressionException, UnknownFunctionException, UnknownOperatorExceptiondev.simplified.expression.function- BuiltinFunction, MathFunction, VarargFunctiondev.simplified.expression.operator- BuiltinOperator, MathOperatordev.simplified.expression.shuntingyard- ShuntingYarddev.simplified.expression.tokenizer- Token (base), Tokenizer, NumberToken, OperatorToken, FunctionToken, VariableToken, ArgumentSeparatorToken, OpenParenthesesToken, CloseParenthesesToken
Expression- main entry point: parse + evaluate string expressionsArrayStack- zero-copy primitivedouble[]stackShuntingYard- infix-to-postfix conversionTokenizer- lexer producing typed Token subtypes
com.github.simplified-dev:collections:master-SNAPSHOTcom.github.simplified-dev:utils:master-SNAPSHOT- JetBrains annotations, Lombok
./gradlew build
./gradlew test- Java 21, Gradle (Kotlin DSL)
- Group:
dev.simplified, artifact:expression, version:1.0.0 - 24 source files, 7 packages, no tests