resolve method

  1. @override
Danger<bool, BooleanException> resolve(
  1. PropertyTable propertyTable
)
override

Implementation

@override
Danger<bool, BooleanException> resolve(PropertyTable propertyTable) {

    final log = Log(classLocation: runtimeType, functionLocation: 'resolve');

    final leftResult = propertyTable.getFinalValue(left);
    log.add(leftResult);
    if (leftResult is! Success<Object, PropertyTableException>) return Failure(BooleanExceptionA(), log);

    final rightResult = propertyTable.getFinalValue(right);
    log.add(rightResult);
    if (rightResult is! Success<Object, PropertyTableException>) return Failure(BooleanExceptionB(), log);

    late final bool result;

    switch (validOperator) {
    case EqualEqual(): result = leftResult.wrapped == rightResult.wrapped;
    }

    return Success(result, log);

}