addTemporarySymbol method
Danger<CitrusSymbolTable, CitrusSymbolTableException>
addTemporarySymbol(
- String temporarySymbolName,
- CitrusArray bindCitrusArray
Implementation
Danger<CitrusSymbolTable, CitrusSymbolTableException> addTemporarySymbol(String temporarySymbolName, CitrusArray bindCitrusArray) {
final log = Log(classLocation: runtimeType, functionLocation: 'addTemporarySymbol');
final temporaryCitrusSymbolResult = TemporarySymbol(
temporarySymbolName,
bindCitrusArray,
TemporarySymbolLaps.zero(),
);
final addResult = temporarySymbolRoster.add(temporaryCitrusSymbolResult);
log.add(addResult);
if (addResult is! Success<CitrusSymbolRoster<TemporarySymbol>, CitrusSymbolExceptionA>) return Failure(CitrusSymbolTableExceptionG(), log.monitor({
'duplicate temporary symbol name': temporarySymbolName,
'temporary symbol name list': temporarySymbolRoster.nameList,
}));
final result = CitrusSymbolTable.result(this.textSymbolRoster, addResult.wrapped, this.textArraySymbolRoster, this.fragmentSymbolRoster, this.flagSymbolRoster, this.objectSymbolRoster, this.objectArraySymbolRoster);
log.add(result);
return Danger.fromDanger(result, log);
}