eval method
dynamic
eval(
- Expression expression,
- Map<String, dynamic> context
)
inherited
Implementation
dynamic eval(Expression expression, Map<String, dynamic> context) {
if (expression is Literal) return evalLiteral(expression, context);
if (expression is Variable) return evalVariable(expression, context);
if (expression is ThisExpression) return evalThis(expression, context);
if (expression is MemberExpression) {
return evalMemberExpression(expression, context);
}
if (expression is IndexExpression) {
return evalIndexExpression(expression, context);
}
if (expression is CallExpression) {
return evalCallExpression(expression, context);
}
if (expression is UnaryExpression) {
return evalUnaryExpression(expression, context);
}
if (expression is BinaryExpression) {
return evalBinaryExpression(expression, context);
}
if (expression is ConditionalExpression) {
return evalConditionalExpression(expression, context);
}
throw ArgumentError("Unknown expression type '${expression.runtimeType}'");
}