parse_Replaces method

dynamic parse_Replaces()

Implementation

dynamic parse_Replaces() {
  var $$;
  switch (_getState(_transitions18)) {
    case 0:
    case 2:
      var ch0 = _ch, pos0 = _cursor, startPos0 = _startPos;
      _startPos = _cursor;
      while (true) {
        $$ = _parse_call_id();
        if (!success) break;
        var seq = List<dynamic>.filled(2, null, growable: false)..[0] = $$;
        var testing0 = _testing;
        for (var reps = [];;) {
          _testing = _cursor;
          switch (_ch >= 0 && _ch <= 1114111
              ? 0
              : _ch == -1
                  ? 2
                  : 1) {
            case 0:
            case 2:
              var ch1 = _ch, pos1 = _cursor, startPos1 = _startPos;
              _startPos = _cursor;
              while (true) {
                $$ = _parse_SEMI();
                if (!success) break;
                var seq = List<dynamic>.filled(2, null, growable: false)
                  ..[0] = $$;
                $$ = _parse_replaces_param();
                if (!success) break;
                seq[1] = $$;
                $$ = seq;
                break;
              }
              if (!success) {
                _ch = ch1;
                _cursor = pos1;
              }
              _startPos = startPos1;
              break;
            case 1:
              $$ = null;
              success = false;
              break;
          }
          if (!success && _cursor > _testing) {
            _failure(_expect30);
          }
          if (success) {
            reps.add($$);
          } else {
            success = true;
            _testing = testing0;
            $$ = reps;
            break;
          }
        }
        if (!success) break;
        seq[1] = $$;
        $$ = seq;
        if (success) {
          final $1 = seq[0];
          final $2 = seq[1];
          final $start = startPos0;
          var pos0 = _startPos;
          $$ = ((offset, call_id) {
            ///CODE_START
            return data;

            ///CODE_END
          })($start, $1);
        }
        break;
      }
      if (!success) {
        _ch = ch0;
        _cursor = pos0;
      }
      _startPos = startPos0;
      break;
    case 1:
      $$ = null;
      success = false;
      break;
  }
  if (!success && _cursor > _testing) {
    _failure(_expect21);
  }
  return $$;
}