visitChoice method

  1. @override
void visitChoice(
  1. ChoiceState node
)
override

Visits the ChoiceState node.

Implementation

@override
void visitChoice(ChoiceState node) {
  final children = node.states;
  node.source = State.rejectPlaceholder;
  for (var i = 0; i < children.length; i++) {
    final child = children[i];
    child.accept(this);
    if (i < children.length - 1) {
      if (!_canReject(child)) {
        warning('''
The 'Choice' state element #$i does not define a 'rejection' placeholder
State element #$i source:
 ${child.source}''');
      }
    }

    node.renderRejection(child.source);
  }

  node.source = _removeEmptyLines(node.source);
  _notify(node);
}