Contents

marcusmiss/mmexpressionsolver

A Swift-framework to solve (mathematical) expressions.

Integration sample

let expression: String = "CSTR(var1)"

// Provide configuration
let config: ExpressionConfiguration = ExpressionConfiguration.createDefault()
let result: Result<MMExpression, ExpressionError> = MMExpression.build(
    expression: expression,
    configuration: config
)

// Provide context
let context: ExpressionEvaluationContextImpl = ExpressionEvaluationContextImpl(configuration: config)
context.variables.storeVariable(identifier: "var1", value: ExpressionValue.of(100))

// Evaluate expression
let evalResult: Result<ExpressionValue, ExpressionError>  = result.valueSuccess!.evaluate(context: context)

let evalValue: ExpressionValue = evalResult.valueSuccess!
print("evalValue: \(evalValue)")

#expect(evalValue.isStringValue)
#expect(evalValue.asString()! == "100")

Package Metadata

Repository: marcusmiss/mmexpressionsolver

Default branch: master

README: README.md