Packages

  • package root

    The Scala compiler and reflection APIs.

    The Scala compiler and reflection APIs.

    Definition Classes
    root
  • package scala
    Definition Classes
    root
  • package tools
    Definition Classes
    scala
  • package nsc
    Definition Classes
    tools
  • package ast
    Definition Classes
    nsc
  • package parser
    Definition Classes
    ast
  • trait ParsersCommon extends ScannersCommon

    Historical note: JavaParsers started life as a direct copy of Parsers but at a time when that Parsers had been replaced by a different one.

    Historical note: JavaParsers started life as a direct copy of Parsers but at a time when that Parsers had been replaced by a different one. Later it was dropped and the original Parsers reinstated, leaving us with massive duplication between Parsers and JavaParsers.

    This trait and the similar one for Scanners/JavaScanners represents the beginnings of a campaign against this latest incursion by Cutty McPastington and his army of very similar soldiers.

    Definition Classes
    parser
  • CommonTokenData
  • DocScanner
  • ParserCommon
  • ScannerCommon

abstract class ParserCommon extends AnyRef

This is now an abstract class, only to work around the optimizer: methods in traits are never inlined.

Source
Parsers.scala
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ParserCommon
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ParserCommon()

Abstract Value Members

  1. abstract def accept(token: ParsersCommon.Token): Int
  2. abstract def deprecationWarning(off: ParsersCommon.Offset, msg: String, since: String): Unit
  3. abstract val in: ParsersCommon.ScannerCommon

Concrete Value Members

  1. final def dropAnyBraces[T](body: ⇒ T): T
    Annotations
    @inline()
  2. final def inBraces[T](body: ⇒ T): T
    Annotations
    @inline()
  3. final def inBracesOrError[T](body: ⇒ T, alt: T): T
    Annotations
    @inline()
  4. final def inBracesOrNil[T](body: ⇒ List[T]): List[T]
    Annotations
    @inline()
  5. final def inBracesOrUnit[T](body: ⇒ Global.Tree): Global.Tree
    Annotations
    @inline()
  6. final def inBrackets[T](body: ⇒ T): T
    Annotations
    @inline()
  7. final def inParens[T](body: ⇒ T): T

    Methods inParensOrError and similar take a second argument which, should the next token not be the expected opener (e.g.

    Methods inParensOrError and similar take a second argument which, should the next token not be the expected opener (e.g. LPAREN) will be returned instead of the contents of the groupers. However in all cases accept(LPAREN) will be called, so a parse error will still result. If the grouping is optional, in.token should be tested before calling these methods.

    Annotations
    @inline()
  8. final def inParensOrError[T](body: ⇒ T, alt: T): T
    Annotations
    @inline()
  9. final def inParensOrNil[T](body: ⇒ List[T]): List[T]
    Annotations
    @inline()
  10. final def inParensOrUnit[T](body: ⇒ Global.Tree): Global.Tree
    Annotations
    @inline()
  11. final def makeParens(body: ⇒ List[Global.Tree]): Global.Parens

    Creates an actual Parens node (only used during parsing.)

    Creates an actual Parens node (only used during parsing.)

    Annotations
    @inline()