resolve method
Danger<Iterable<FileSystemModelRoute> , CitrusSemanticException>
resolve(
- CitrusSymbolTable symbolTable,
- FileSystemModelRoute target,
- FileSystemModelRouteRoster<
FileSystemModelRoute> base
Implementation
Danger<Iterable<FileSystemModelRoute>, CitrusSemanticException> resolve(CitrusSymbolTable symbolTable, FileSystemModelRoute target, FileSystemModelRouteRoster<FileSystemModelRoute> base) {
final log = Log(classLocation: runtimeType, functionLocation: 'resolve');
final List<FileSystemModelRoute> list = [];
// たとえ複数存在しても 1 つしか処理しない.
for (final i in frameCitrusSemanticList) {
final result = i.resolve(symbolTable, target, base);
log.add(result);
if (result is! Success<List<FileSystemModelRoute>, CitrusSemanticException>) return Failure(result.asException, log);
list.addAll(result.wrapped);
break;
}
return Success(list, log);
}