from static method

Danger<SpaceCollection, CitrusSyntaxException> from(
  1. String whiteSpace
)

Implementation

static Danger<SpaceCollection, CitrusSyntaxException> from(String whiteSpace) {

    final log = Log(classLocation: SpaceCollection, functionLocation: 'from');

    final List<Space> list = [];

    for (final character in whiteSpace.split('')) {

        final result = LeafCitrusSyntax.result(character);
        log.add(result);
        if (result is! Success<LeafCitrusSyntax, LeafCitrusSyntaxExceptionA>) return Failure(result.asException, log);

        final id = result.wrapped;

        if (id is! Space) return Failure(CitrusSyntaxExceptionA(), log.monitor({
            'message': 'value is not Space in SpaceCollection.from',
        }));

        list.add(id);

    }

    final result = SpaceCollection.fromIterable(list);

    return Success(result, log);

}