aheadResolve method

Danger<CitrusSymbolTable, CitrusSemanticException> aheadResolve(
  1. CitrusSymbolTable symbolTable,
  2. String generateLocation,
  3. Iterable<String> fragments
)

Implementation

Danger<CitrusSymbolTable, CitrusSemanticException> aheadResolve(CitrusSymbolTable symbolTable, String generateLocation, Iterable<String> fragments) {

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

    CitrusSymbolTable newSymbolTable = symbolTable;

    for (final i in aheadCitrusSemanticList) {

        final result = i.resolve(newSymbolTable);
        log.add(result);
        if (result is! Success<CitrusSymbolTable, CitrusSemanticException>) return Failure(result.asException, log);

        newSymbolTable = result.wrapped;

    }

    return Success(newSymbolTable, log);

}