scala.tools.nsc.ast.parser.Parsers

Parser

abstract class Parser extends ParserCommon

Self Type
Parser
Linear Supertypes
Known Subclasses
Type Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Parser
  2. ParserCommon
  3. AnyRef
  4. Any
Implicitly
  1. by StringAdd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Parser()

Type Members

  1. class ParserTreeBuilder extends TreeBuilder

  2. trait PatternContextSensitive extends AnyRef

    Methods which implicitly propagate the context in which they were called: either in a pattern context or not.

  3. trait SeqContextSensitive extends PatternContextSensitive

    Methods which implicitly propagate whether the initial call took place in a context where sequences are allowed.

Abstract Value Members

  1. abstract def deprecationWarning(off: Parsers.Offset, msg: String): Unit

    Definition Classes
    ParserCommon
  2. abstract val in: Parsers.Scanner

    Definition Classes
    ParserParserCommon
  3. abstract def incompleteInputError(msg: String): Unit

  4. abstract def parseStartRule: () ⇒ Global.Tree

  5. abstract def source: SourceFile

  6. abstract def syntaxError(offset: Parsers.Offset, msg: String): Unit

  7. abstract def unit: Global.CompilationUnit

  8. abstract def warning(offset: Parsers.Offset, msg: String): Unit

  9. abstract def xmlLiteral(): Global.Tree

  10. abstract def xmlLiteralPattern(): Global.Tree

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. def +(other: String): String

    Implicit information
    This member is added by an implicit conversion from Parser to StringAdd[Parser] performed by method StringAdd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (Parser, B)

    Implicit information
    This member is added by an implicit conversion from Parser to ArrowAssoc[Parser] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  6. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  7. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  8. object InfixMode extends Enumeration

    Modes for infix types.

  9. def accept(token: Parsers.Token): Parsers.Offset

    Consume one token of the specified type, or signal an error if it is not there.

    Consume one token of the specified type, or signal an error if it is not there.

    Definition Classes
    ParserParserCommon
  10. def acceptStatSep(): Unit

    semi = nl {nl} | `;`
    nl  = `\n' // where allowed
  11. def acceptStatSepOpt(): Unit

  12. def accessModifierOpt(): Global.Modifiers

    AccessModifier ::= (private | protected) [AccessQualifier]
  13. def accessQualifierOpt(mods: Global.Modifiers): Global.Modifiers

    AccessQualifier ::= `[' (Id | this) `]'
  14. def allowTypelessParams: Boolean

  15. def annotTypeRest(t: Global.Tree): Global.Tree

  16. def annotationExpr(): Global.Tree

  17. def annotations(skipNewLines: Boolean): List[Global.Tree]

    Annotations      ::= {`@' SimpleType {ArgumentExprs}}
    ConsrAnnotations ::= {`@' SimpleType ArgumentExprs}
  18. def argumentExprs(): List[Global.Tree]

    ArgumentExprs ::= `(' [Exprs] `)'
    | [nl] BlockExpr
  19. def argumentPatterns(): List[Global.Tree]

  20. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  21. val assumedClosingParens: Map[Int, Int]

  22. def atInPos[T <: Global.Tree](t: T): T

  23. def atPos[T <: Global.Tree](pos: Global.Position)(t: T): T

  24. def atPos[T <: Global.Tree](start: Parsers.Offset, point: Parsers.Offset, end: Parsers.Offset)(t: T): T

  25. def atPos[T <: Global.Tree](start: Parsers.Offset, point: Parsers.Offset)(t: T): T

  26. def atPos[T <: Global.Tree](offset: Parsers.Offset)(t: T): T

  27. def block(): Global.Tree

    Block ::= BlockStatSeq
    Note

    Return tree does not carry position.

  28. def blockExpr(): Global.Tree

    BlockExpr ::= `{' (CaseClauses | Block) `}'
  29. def blockStatSeq(): List[Global.Tree]

    BlockStatSeq ::= { BlockStat semi } [ResultExpr]
    BlockStat    ::= Import
                   | Annotations [implicit] [lazy] Def
                   | Annotations LocalModifiers TmplDef
                   | Expr1
                   |
  30. def bound(tok: Parsers.Token): Global.Tree

  31. def caseBlock(): Global.Tree

  32. def caseClause(): Global.CaseDef

  33. def caseClauses(): List[Global.CaseDef]

    CaseClauses ::= CaseClause {CaseClause}
    CaseClause  ::= case Pattern [Guard] `=>' Block
  34. final def caseSeparated[T](part: ⇒ T): List[T]

    Annotations
    @inline()
  35. def checkAssoc(offset: Parsers.Offset, op: Global.Name, leftAssoc: Boolean): Unit

  36. def checkHeadAssoc(leftAssoc: Boolean): Unit

  37. def checkNoEscapingPlaceholders[T](op: ⇒ T): T

  38. def checkNotByNameOrVarargs(tpt: Global.Tree): Unit

    Check that type parameter is not by name or repeated.

  39. def classDef(start: Parsers.Offset, mods: Global.Modifiers): Global.ClassDef

    ClassDef ::= Id [TypeParamClause] {Annotation}
                 [AccessModifier] ClassParamClauses RequiresTypeOpt ClassTemplateOpt
    TraitDef ::= Id [TypeParamClause] RequiresTypeOpt TraitTemplateOpt
  40. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  41. final def commaSeparated[T](part: ⇒ T): List[T]

    Annotations
    @inline()
  42. def compilationUnit(): Global.PackageDef

    CompilationUnit ::= {package QualId semi} TopStatSeq
  43. def condExpr(): Global.Tree

  44. def constrBlock(vparamss: List[List[Global.ValDef]]): Global.Tree

    ConstrBlock    ::=  `{' SelfInvocation {semi BlockStat} `}'
  45. def constrExpr(vparamss: List[List[Global.ValDef]]): Global.Tree

    ConstrExpr      ::=  SelfInvocation
    |  ConstrBlock
  46. def constructorAnnotations(): List[Global.Tree]

  47. def convertToParam(tree: Global.Tree): Global.ValDef

    Convert tree to formal parameter.

  48. def convertToParams(tree: Global.Tree): List[Global.ValDef]

    Convert tree to formal parameter list.

  49. def convertToTypeId(tree: Global.Tree): Global.Tree

    Convert (qual)ident to type identifier.

  50. def defOrDcl(pos: Parsers.Offset, mods: Global.Modifiers): List[Global.Tree]

    Def    ::= val PatDef
             | var PatDef
             | def FunDef
             | type [nl] TypeDef
             | TmplDef
    Dcl    ::= val PatDcl
             | var PatDcl
             | def FunDcl
             | type [nl] TypeDcl
  51. final def dropAnyBraces[T](body: ⇒ T): T

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  52. def ensureEarlyDef(tree: Global.Tree): Global.Tree

  53. def ensuring(cond: (Parser) ⇒ Boolean, msg: ⇒ Any): Parser

    Implicit information
    This member is added by an implicit conversion from Parser to Ensuring[Parser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  54. def ensuring(cond: (Parser) ⇒ Boolean): Parser

    Implicit information
    This member is added by an implicit conversion from Parser to Ensuring[Parser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  55. def ensuring(cond: Boolean, msg: ⇒ Any): Parser

    Implicit information
    This member is added by an implicit conversion from Parser to Ensuring[Parser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  56. def ensuring(cond: Boolean): Parser

    Implicit information
    This member is added by an implicit conversion from Parser to Ensuring[Parser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  57. def enumerator(isFirst: Boolean, allowNestedIf: Boolean = true): List[Global.Tree]

  58. def enumerators(): List[Global.Tree]

    Enumerators ::= Generator {semi Enumerator}
    Enumerator  ::=  Generator
                  |  Guard
                  |  val Pattern1 `=' Expr
  59. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  60. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  61. def errorPatternTree: Global.Ident

  62. def errorTermTree: Global.Literal

  63. def errorTypeTree: Global.TypeTree

  64. def expectedMsg(token: Parsers.Token): String

  65. def expectedMsgTemplate(exp: String, fnd: String): String

  66. def expr(location: Location): Global.Tree

  67. def expr(): Global.Tree

    Expr       ::= (Bindings | [`implicit'] Id | `_')  `=>' Expr
                 | Expr1
    ResultExpr ::= (Bindings | Id `:' CompoundType) `=>' Block
                 | Expr1
    Expr1      ::= if `(' Expr `)' {nl} Expr [[semi] else Expr]
                 | try (`{' Block `}' | Expr) [catch `{' CaseClauses `}'] [finally Expr]
                 | while `(' Expr `)' {nl} Expr
                 | do Expr [semi] while `(' Expr `)'
                 | for (`(' Enumerators `)' | `{' Enumerators `}') {nl} [yield] Expr
                 | throw Expr
                 | return [Expr]
                 | [SimpleExpr `.'] Id `=' Expr
                 | SimpleExpr1 ArgumentExprs `=' Expr
                 | PostfixExpr Ascription
                 | PostfixExpr match `{' CaseClauses `}'
    Bindings   ::= `(' [Binding {`,' Binding}] `)'
    Binding    ::= (Id | `_') [`:' Type]
    Ascription ::= `:' CompoundType
                 | `:' Annotation {Annotation}
                 | `:' `_' `*'
  68. def expr0(location: Location): Global.Tree

  69. def exprSimpleType(): Global.Tree

  70. def exprTypeArgs(): List[Global.Tree]

  71. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  72. def finishBinaryOp(isExpr: Boolean, opinfo: OpInfo, rhs: Global.Tree): Global.Tree

  73. def finishPostfixOp(start: Int, base: List[OpInfo], opinfo: OpInfo): Global.Tree

  74. def formatted(fmtstr: String): String

    Implicit information
    This member is added by an implicit conversion from Parser to StringFormat[Parser] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  75. implicit def fresh: FreshNameCreator

  76. def funDefOrDcl(start: Int, mods: Global.Modifiers): Global.Tree

    FunDef ::= FunSig [`:' Type] `=' [`macro'] Expr
            |  FunSig [nl] `{' Block `}'
            |  `this' ParamClause ParamClauses
                   (`=' ConstrExpr | [nl] ConstrBlock)
    FunDcl ::= FunSig [`:' Type]
    FunSig ::= id [FunTypeParamClause] ParamClauses
  77. def funDefRest(start: Parsers.Offset, nameOffset: Parsers.Offset, mods: Global.Modifiers, name: Global.Name): Global.Tree

  78. def generator(eqOK: Boolean, allowNestedIf: Boolean = true): List[Global.Tree]

    Generator ::= Pattern1 (`<-' | `=') Expr [Guard]
  79. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  80. def guard(): Global.Tree

    Guard ::= if PostfixExpr
  81. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  82. def ident(): Global.Name

  83. def ident(skipIt: Boolean): Global.Name

    Assumed (provisionally) to be TermNames.

  84. def identForType(skipIt: Boolean): Global.TypeName

  85. def identForType(): Global.TypeName

    For when it's known already to be a type name.

  86. def identOrMacro(): Global.Name

  87. def implicitClosure(start: Parsers.Offset, location: Location): Global.Tree

    Expr ::= implicit Id => Expr
  88. def importClause(): List[Global.Tree]

    Import  ::= import ImportExpr {`,' ImportExpr}
  89. def importExpr(): Global.Tree

    ImportExpr ::= StableId `.' (Id | `_' | ImportSelectors)
  90. def importSelector(): Global.ImportSelector

    ImportSelector ::= Id [`=>' Id | `=>' `_']
  91. def importSelectors(): List[Global.ImportSelector]

    ImportSelectors ::= `{' {ImportSelector `,'} (ImportSelector | `_') `}'
  92. final def inBraces[T](body: ⇒ T): T

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  93. final def inBracesOrError[T](body: ⇒ T, alt: T): T

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  94. final def inBracesOrNil[T](body: ⇒ List[T]): List[T]

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  95. final def inBracesOrUnit[T](body: ⇒ Global.Tree): Global.Tree

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  96. final def inBrackets[T](body: ⇒ T): T

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  97. 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.

    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.

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  98. final def inParensOrError[T](body: ⇒ T, alt: T): T

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  99. final def inParensOrNil[T](body: ⇒ List[T]): List[T]

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  100. final def inParensOrUnit[T](body: ⇒ Global.Tree): Global.Tree

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  101. def isAnnotation: Boolean

  102. def isCaseDefEnd: Boolean

  103. def isDclIntro: Boolean

  104. def isDefIntro: Boolean

  105. def isExprIntro: Boolean

  106. def isExprIntroToken(token: Parsers.Token): Boolean

  107. def isIdent: Boolean

  108. def isIdentExcept(except: Global.Name): Boolean

  109. def isIdentOf(name: Global.Name): Boolean

  110. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  111. def isLiteral: Boolean

  112. def isLiteralToken(token: Parsers.Token): Boolean

  113. def isLocalModifier: Boolean

  114. def isMacro: Boolean

  115. def isModifier: Boolean

  116. def isNumericLit: Boolean

  117. def isRawBar: Boolean

  118. def isRawStar: Boolean

  119. def isStatSep: Boolean

  120. def isStatSep(token: Parsers.Token): Boolean

  121. def isStatSeqEnd: Boolean

  122. def isTemplateIntro: Boolean

  123. def isTypeIntroToken(token: Parsers.Token): Boolean

  124. def isTypedParam(t: Global.Tree): Boolean

  125. def isUnaryOp: Boolean

  126. def isWildcard(t: Global.Tree): Boolean

  127. def joinComment(trees: ⇒ List[Global.Tree]): List[Global.Tree]

    A hook for joining the comment associated with a definition.

    A hook for joining the comment associated with a definition. Overridden by scaladoc.

  128. def literal(isNegated: Boolean = false, inPattern: Boolean = false, start: Parsers.Offset = in.offset): Global.Tree

    SimpleExpr    ::= literal
    | symbol
    | null
  129. def localDef(implicitMod: Int): List[Global.Tree]

    overridable IDE hook for local definitions of blockStatSeq Here's an idea how to fill in start and end positions.

    overridable IDE hook for local definitions of blockStatSeq Here's an idea how to fill in start and end positions. def localDef : List[Tree] = { atEndPos { atStartPos(in.offset) { val annots = annotations(skipNewLines = true) val mods = localModifiers() withAnnotations annots if (!(mods hasFlag ~(Flags.IMPLICIT | Flags.LAZY))) defOrDcl(mods) else List(tmplDef(mods)) } } (in.offset) }

  130. def localModifiers(): Global.Modifiers

    LocalModifiers ::= {LocalModifier}
    LocalModifier  ::= abstract | final | sealed | implicit | lazy
  131. final def lookingAhead[T](body: ⇒ T): T

    Scoping operator used to temporarily look into the future.

    Scoping operator used to temporarily look into the future. Backs up scanner data before evaluating a block and restores it after.

    Annotations
    @inline()
  132. def makeEmptyPackage(start: Parsers.Offset, stats: List[Global.Tree]): Global.PackageDef

  133. def makeFilter(start: Parsers.Offset, tree: Global.Tree): Global.Apply

  134. def makePackageObject(start: Parsers.Offset, objDef: Global.ModuleDef): Global.PackageDef

  135. def makePackaging(start: Parsers.Offset, pkg: Global.Tree, stats: List[Global.Tree]): Global.PackageDef

    Create a tree representing a packaging.

  136. 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.)

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  137. def mixinQualifierOpt(): Global.TypeName

    MixinQualifier ::= `[' Id `]'
  138. def modifiers(): Global.Modifiers

    Modifiers ::= {Modifier}
    Modifier  ::= LocalModifier
                |  AccessModifier
                |  override
  139. def multipleArgumentExprs(): List[List[Global.Tree]]

    A succession of argument lists.

  140. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  141. def newLineOpt(): Unit

  142. def newLineOptWhenFollowedBy(token: Parsers.Offset): Unit

  143. def newLineOptWhenFollowing(p: (Parsers.Token) ⇒ Boolean): Unit

  144. def newLinesOpt(): Unit

  145. object noSeq extends SeqContextSensitive

    The implementation for parsing inside of patterns at points where sequences are disallowed.

  146. def nonLocalDefOrDcl: List[Global.Tree]

  147. final def notify(): Unit

    Definition Classes
    AnyRef
  148. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  149. def o2p(offset: Parsers.Offset): Global.Position

  150. def objectDef(start: Parsers.Offset, mods: Global.Modifiers): Global.ModuleDef

    ObjectDef       ::= Id ClassTemplateOpt
  151. var opstack: List[OpInfo]

  152. object outPattern extends PatternContextSensitive

    The implementation of the context sensitive methods for parsing outside of patterns.

  153. def packageObjectDef(start: Parsers.Offset): Global.PackageDef

    Create a tree representing a package object, converting

    Create a tree representing a package object, converting

    package object foo { ... }

    to

    package foo {
    object `package` { ... }
    }
  154. def packageOrPackageObject(start: Parsers.Offset): Global.Tree

  155. def paramClauses(owner: Global.Name, contextBounds: List[Global.Tree], ofCaseClass: Boolean): List[List[Global.ValDef]]

    ParamClauses      ::= {ParamClause} [[nl] `(' implicit Params `)']
    ParamClause       ::= [nl] `(' [Params] `)'
    Params            ::= Param {`,' Param}
    Param             ::= {Annotation} Id [`:' ParamType] [`=' Expr]
    ClassParamClauses ::= {ClassParamClause} [[nl] `(' implicit ClassParams `)']
    ClassParamClause  ::= [nl] `(' [ClassParams] `)'
    ClassParams       ::= ClassParam {`,' ClassParam}
    ClassParam        ::= {Annotation}  [{Modifier} (`val' | `var')] Id [`:' ParamType] [`=' Expr]
  156. def paramType(useStartAsPosition: Boolean): Global.Tree

  157. def paramType(): Global.Tree

    ParamType ::= Type | `=>' Type | Type `*'
  158. def parse(): Global.Tree

    This is the general parse entry point.

  159. def parseRule[T](rule: (Parser.this.type) ⇒ T): T

  160. def parseStats(): List[Global.Tree]

    These are alternative entry points for repl, script runner, toolbox and parsing in macros.

  161. def parseStatsOrPackages(): List[Global.Tree]

  162. def patDefOrDcl(pos: Int, mods: Global.Modifiers): List[Global.Tree]

    PatDef ::= Pattern2 {`,' Pattern2} [`:' Type] `=' Expr
    ValDcl ::= Id {`,' Id} `:' Type
    VarDef ::= PatDef | Id {`,' Id} `:' Type `=' `_'
  163. def path(thisOK: Boolean, typeOK: Boolean): Global.Tree

    Path       ::= StableId
                |  [Ident `.'] this
    AnnotType ::= Path [`.' type]
  164. def pattern(): Global.Tree

    Default entry points into some pattern contexts.

  165. def peekingAhead(tree: ⇒ Global.Tree): Global.Tree

    Perform an operation while peeking ahead.

    Perform an operation while peeking ahead. Pushback if the operation yields an empty tree or blows to pieces.

    Annotations
    @inline()
  166. var placeholderParams: List[Global.ValDef]

    The implicit parameters introduced by _ in the current expression.

    The implicit parameters introduced by _ in the current expression. Parameters appear in reverse order.

  167. def placeholderTypeBoundary(op: ⇒ Global.Tree): Global.Tree

  168. var placeholderTypes: List[Global.TypeDef]

    The placeholderTypes introduced by _ in the current type.

    The placeholderTypes introduced by _ in the current type. Parameters appear in reverse order.

  169. def postfixExpr(): Global.Tree

    PostfixExpr   ::= InfixExpr [Id [nl]]
    InfixExpr     ::= PrefixExpr
                    | InfixExpr Id [nl] InfixExpr
  170. def prefixExpr(): Global.Tree

    PrefixExpr   ::= [`-' | `+' | `~' | `!' | `&'] SimpleExpr
  171. def qualId(): Global.Tree

    QualId ::= Id {`.' Id}
  172. def r2p(offset: Parsers.Offset): Global.Position

  173. def r2p(start: Parsers.Offset, mid: Parsers.Offset): Global.Position

  174. def r2p(start: Parsers.Offset, mid: Parsers.Offset, end: Parsers.Offset): Global.Position

  175. def rawIdent(): Global.Name

  176. def readAnnots(part: ⇒ Global.Tree): List[Global.Tree]

  177. def reduceExprStack(base: List[OpInfo], top: Global.Tree): Global.Tree

  178. def reducePatternStack(base: List[OpInfo], top: Global.Tree): Global.Tree

  179. def reduceStack(isExpr: Boolean, base: List[OpInfo], top: Global.Tree, opPrecedence: Precedence, leftAssoc: Boolean): Global.Tree

  180. def reduceStack(isExpr: Boolean, base: List[OpInfo], top: Global.Tree): Global.Tree

  181. def refineStat(): List[Global.Tree]

  182. def refineStatSeq(): List[Global.Tree]

    RefineStatSeq    ::= RefineStat {semi RefineStat}
    RefineStat       ::= Dcl
                       | type TypeDef
                       |
  183. def refinement(): List[Global.Tree]

    Refinement ::= [nl] `{' RefineStat {semi RefineStat} `}'
  184. def resetPackage(): Unit

  185. def scriptBody(): Global.Tree

    This is the parse entry point for code which is not self-contained, e.

    This is the parse entry point for code which is not self-contained, e.g. a script which is a series of template statements. They will be swaddled in Trees until the AST is equivalent to the one returned by compilationUnit().

  186. def selector(t: Global.Tree): Global.Tree

  187. def selectors(t: Global.Tree, typeOK: Boolean, dotOffset: Parsers.Offset): Global.Tree

  188. def selfInvocation(vparamss: List[List[Global.ValDef]]): Global.Tree

    SelfInvocation  ::= this ArgumentExprs {ArgumentExprs}
  189. object seqOK extends SeqContextSensitive

    The implementation for parsing inside of patterns at points where sequences are allowed.

  190. def seqPatterns(): List[Global.Tree]

  191. def setInPos[T <: Global.Tree](t: T): T

  192. def simpleExpr(): Global.Tree

    SimpleExpr    ::= new (ClassTemplate | TemplateBody)
                    |  BlockExpr
                    |  SimpleExpr1 [`_']
    SimpleExpr1   ::= literal
                    |  xLiteral
                    |  Path
                    |  `(' [Exprs] `)'
                    |  SimpleExpr `.' Id
                    |  SimpleExpr TypeArgs
                    |  SimpleExpr1 ArgumentExprs
  193. def simpleExprRest(t: Global.Tree, canApply: Boolean): Global.Tree

  194. def skip(targetToken: Parsers.Token): Unit

    Attributes
    protected
  195. def stableId(): Global.Tree

    StableId ::= Id
    |  Path `.' Id
    |  [id `.'] super [`[' id `]']`.' id
  196. def startAnnotType(): Global.Tree

  197. def startInfixType(): Global.Tree

  198. def statSeq(stat: PartialFunction[Parsers.Token, List[Global.Tree]], errorMsg: String = "illegal start of definition"): List[Global.Tree]

  199. def statement(location: Location): Global.Tree

  200. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  201. def syntaxError(offset: Parsers.Offset, msg: String, skipIt: Boolean): Unit

  202. def syntaxError(msg: String, skipIt: Boolean): Unit

  203. def syntaxErrorOrIncomplete(msg: String, skipIt: Boolean): Unit

  204. def syntaxErrorOrIncompleteAnd[T](msg: String, skipIt: Boolean)(and: T): T

  205. def template(): (List[Global.Tree], Global.ValDef, List[Global.Tree])

    ClassTemplate ::= [EarlyDefs with] ClassParents [TemplateBody]
    TraitTemplate ::= [EarlyDefs with] TraitParents [TemplateBody]
    EarlyDefs     ::= `{' [EarlyDef {semi EarlyDef}] `}'
    EarlyDef      ::= Annotations Modifiers PatDef
  206. def templateBody(isPre: Boolean): (Global.ValDef, List[Global.Tree])

    TemplateBody ::= [nl] `{' TemplateStatSeq `}'
    isPre

    specifies whether in early initializer (true) or not (false)

  207. def templateBodyOpt(parenMeansSyntaxError: Boolean): (Global.ValDef, List[Global.Tree])

  208. def templateOpt(mods: Global.Modifiers, name: Global.Name, constrMods: Global.Modifiers, vparamss: List[List[Global.ValDef]], tstart: Parsers.Offset): Global.Template

    ClassTemplateOpt ::= `extends' ClassTemplate | [[`extends'] TemplateBody]
    TraitTemplateOpt ::= TraitExtends TraitTemplate | [[`extends'] TemplateBody] | `<:' TemplateBody
    TraitExtends     ::= `extends' | `<:'
  209. def templateOrTopStatSeq(): List[Global.Tree]

  210. def templateParents(): List[Global.Tree]

    ClassParents       ::= AnnotType {`(' [Exprs] `)'} {with AnnotType}
    TraitParents       ::= AnnotType {with AnnotType}
  211. def templateStat: PartialFunction[Parsers.Token, List[Global.Tree]]

  212. def templateStatSeq(isPre: Boolean): (Global.ValDef, List[Global.Tree])

    TemplateStatSeq  ::= [id [`:' Type] `=>'] TemplateStats
    isPre

    specifies whether in early initializer (true) or not (false)

  213. def templateStats(): List[Global.Tree]

    TemplateStats    ::= TemplateStat {semi TemplateStat}
    TemplateStat     ::= Import
                       | Annotations Modifiers Def
                       | Annotations Modifiers Dcl
                       | Expr1
                       | super ArgumentExprs {ArgumentExprs}
                       |
  214. def tmplDef(pos: Parsers.Offset, mods: Global.Modifiers): Global.Tree

    TmplDef ::= [case] class ClassDef
    |  [case] object ObjectDef
    |  [override] trait TraitDef
  215. def toString(): String

    Definition Classes
    AnyRef → Any
  216. final def tokenSeparated[T](separator: Parsers.Token, sepFirst: Boolean, part: ⇒ T): List[T]

    ,or if sepFirst is true,

    part { `sep` part }

    ,or if sepFirst is true,

    { `sep` part }

    . { sep part } }}} part { sep part } }}}

  217. def topLevelTmplDef: Global.Tree

    Hook for IDE, for top-level classes/objects.

  218. def topStat: PartialFunction[Parsers.Token, List[Global.Tree]]

  219. def topStatSeq(): List[Global.Tree]

    TopStatSeq ::= TopStat {semi TopStat}
    TopStat ::= Annotations Modifiers TmplDef
              | Packaging
              | package object objectDef
              | Import
              |
  220. val treeBuilder: ParserTreeBuilder

  221. def typ(): Global.Tree

    These are default entry points into the pattern context sensitive methods: they are all initiated from non-pattern context.

  222. def typeBounds(): Global.TypeBoundsTree

    TypeBounds ::= [`>:' Type] [`<:' Type]
  223. def typeDefOrDcl(start: Parsers.Offset, mods: Global.Modifiers): Global.Tree

    TypeDef ::= type Id [TypeParamClause] `=' Type
              | FunSig `=' Expr
    TypeDcl ::= type Id [TypeParamClause] TypeBounds
  224. def typeOrInfixType(location: Location): Global.Tree

  225. def typeParamClauseOpt(owner: Global.Name, contextBoundBuf: ListBuffer[Global.Tree]): List[Global.TypeDef]

    TypeParamClauseOpt    ::= [TypeParamClause]
    TypeParamClause       ::= `[' VariantTypeParam {`,' VariantTypeParam} `]']
    VariantTypeParam      ::= {Annotation} [`+' | `-'] TypeParam
    FunTypeParamClauseOpt ::= [FunTypeParamClause]
    FunTypeParamClause    ::= `[' TypeParam {`,' TypeParam} `]']
    TypeParam             ::= Id TypeParamClauseOpt TypeBounds {<% Type} {":" Type}
  226. def typedOpt(): Global.Tree

    TypedOpt ::= [`:' Type]
  227. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  228. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  229. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  230. def warning(msg: String): Unit

  231. def wildcardOrIdent(): Global.Name

  232. def wildcardType(start: Parsers.Offset): Global.Ident

    WildcardType ::= `_' TypeBounds
  233. object xmlSeqOK extends SeqContextSensitive

    For use from xml pattern, where sequence is allowed and encouraged.

  234. def xmlSeqPatterns(): List[Global.Tree]

  235. def [B](y: B): (Parser, B)

    Implicit information
    This member is added by an implicit conversion from Parser to ArrowAssoc[Parser] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Deprecated Value Members

  1. def precedence(operator: Global.Name): Int

    Annotations
    @deprecated
    Deprecated

    (Since version 2.11.0) Use scala.reflect.internal.Precedence

Inherited from Parsers.ParserCommon

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion StringAdd from Parser to StringAdd[Parser]

Inherited by implicit conversion StringFormat from Parser to StringFormat[Parser]

Inherited by implicit conversion Ensuring from Parser to Ensuring[Parser]

Inherited by implicit conversion ArrowAssoc from Parser to ArrowAssoc[Parser]

Ungrouped