_Statement

in doc-src/parsejs/lib/parsejs/grammar.kpeg.rb [2457:2515]


  def _Statement

    _save = self.pos
    while true # choice
      _tmp = apply(:_IfStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_ExpressionStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_VariableStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_Block)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_EmptyStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_IterationStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_ContinueStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_BreakStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_ReturnStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_WithStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_LabeledStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_SwitchStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_ThrowStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_TryStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_DebuggerStatement)
      break if _tmp
      self.pos = _save
      _tmp = apply(:_FunctionDeclaration)
      break if _tmp
      self.pos = _save
      break
    end # end choice

    set_failed_rule :_Statement unless _tmp
    return _tmp
  end