_UnaryOp

in doc-src/parsejs/lib/parsejs/grammar.kpeg.rb [6368:6424]


  def _UnaryOp

    _save = self.pos
    while true # sequence
      _text_start = self.pos

      _save1 = self.pos
      while true # choice
        _tmp = apply(:_DeleteTok)
        break if _tmp
        self.pos = _save1
        _tmp = apply(:_VoidTok)
        break if _tmp
        self.pos = _save1
        _tmp = apply(:_TypeofTok)
        break if _tmp
        self.pos = _save1
        _tmp = match_string("++")
        break if _tmp
        self.pos = _save1
        _tmp = match_string("--")
        break if _tmp
        self.pos = _save1
        _tmp = match_string("+")
        break if _tmp
        self.pos = _save1
        _tmp = match_string("-")
        break if _tmp
        self.pos = _save1
        _tmp = match_string("~")
        break if _tmp
        self.pos = _save1
        _tmp = match_string("!")
        break if _tmp
        self.pos = _save1
        break
      end # end choice

      if _tmp
        text = get_text(_text_start)
      end
      unless _tmp
        self.pos = _save
        break
      end
      @result = begin;  text ; end
      _tmp = true
      unless _tmp
        self.pos = _save
      end
      break
    end # end sequence

    set_failed_rule :_UnaryOp unless _tmp
    return _tmp
  end