fromExpressionCollection static method

Danger<InSetting, ImmatureCitrusSemanticException> fromExpressionCollection(
  1. ExpressionCollection expressionCollection
)

Implementation

static Danger<InSetting, ImmatureCitrusSemanticException> fromExpressionCollection(ExpressionCollection expressionCollection) {

    final log = Log(classLocation: InSetting, functionLocation: 'fromExpressionCollection');

    // 最初の一つだけを参照する.
    final inExpressionResult = expressionCollection.first.whereType<InExpression>();

    // 1.
    if (inExpressionResult.isEmpty) return Failure(ForLoopSettingExceptionC(), log.monitor({
        'expression collection': expressionCollection,
    }));

    // 1 より必ず return
    final inSettingResult = InSetting.fromInExpression(inExpressionResult.first);
    log.add(inSettingResult);

    return Danger.fromDanger(inSettingResult, log);

}