Packages

class UnitParser extends SourceFileParser

Self Type
UnitParser
Source
Parsers.scala
Known Subclasses
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. UnitParser
  2. SourceFileParser
  3. Parser
  4. ParserCommon
  5. AnyRef
  6. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new UnitParser(unit: Global.CompilationUnit)
  2. new UnitParser(unit: Global.CompilationUnit, patches: List[BracePatch])

Type Members

  1. class ParserTreeBuilder extends TreeBuilder
    Definition Classes
    Parser
  2. sealed trait PatternContextSensitive extends AnyRef

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

    Methods which implicitly propagate the context in which they were called: either in a pattern context or not. Formerly, this was threaded through numerous methods as boolean isPattern.

    Definition Classes
    Parser
  3. final class SeqContextSensitive extends PatternContextSensitive

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

    Methods which implicitly propagate whether the initial call took place in a context where sequences are allowed. Formerly, this was threaded through methods as boolean seqOK.

    Definition Classes
    Parser

Value Members

  1. object InfixMode extends Enumeration

    Modes for infix types.

    Modes for infix types.

    Definition Classes
    Parser
  2. object symbXMLBuilder extends SymbolicXMLBuilder
    Definition Classes
    SourceFileParser
  3. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def ##: Int
    Definition Classes
    AnyRef → Any
  5. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from UnitParser toany2stringadd[UnitParser] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  6. def ->[B](y: B): (UnitParser, B)
    Implicit
    This member is added by an implicit conversion from UnitParser toArrowAssoc[UnitParser] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  7. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. 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
  9. def acceptStatSep(): Unit

    semi = nl {nl} | `;`
    nl  = `\n` // where allowed
    Definition Classes
    Parser
  10. def acceptStatSepOpt(): Unit
    Definition Classes
    Parser
  11. def accessModifierOpt(): Global.Modifiers

    AccessModifier ::= (private | protected) [AccessQualifier]
    Definition Classes
    Parser
  12. def accessQualifierOpt(mods: Global.Modifiers): Global.Modifiers

    AccessQualifier ::= `[` (Id | this) `]`
    Definition Classes
    Parser
  13. def annotTypeRest(t: Global.Tree): Global.Tree
    Definition Classes
    Parser
  14. def annotationExpr(): Global.Tree
    Definition Classes
    Parser
  15. def annotations(skipNewLines: Boolean): List[Global.Tree]

    Annotations       ::= {`@` SimpleType {ArgumentExprs}}
    ConstrAnnotations ::= {`@` SimpleType ArgumentExprs}
    Definition Classes
    Parser
  16. def argumentExprs(): List[Global.Tree]

    ArgumentExprs ::= `(` [Exprs] `)`
                    | `(` `using` Exprs `)`
                    | [nl] BlockExpr
    Definition Classes
    Parser
  17. def argumentPatterns(): List[Global.Tree]
    Definition Classes
    Parser
  18. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  19. val assumedClosingParens: Map[Int, Int]
    Definition Classes
    Parser
  20. def atInPos[T <: Global.Tree](t: T): T
    Definition Classes
    Parser
  21. def atPos[T <: Global.Tree](pos: Global.Position)(t: T): T
    Definition Classes
    Parser
  22. def atPos[T <: Global.Tree](start: Parsers.Offset, point: Parsers.Offset, end: Parsers.Offset)(t: T): T
    Definition Classes
    Parser
  23. def atPos[T <: Global.Tree](start: Parsers.Offset, point: Parsers.Offset)(t: T): T
    Definition Classes
    Parser
  24. def atPos[T <: Global.Tree](offset: Parsers.Offset)(t: T): T
    Definition Classes
    Parser
  25. def block(): Global.Tree

    Block ::= BlockStatSeq
    Definition Classes
    Parser
    Note

    Return tree does not carry position.

  26. def blockExpr(): Global.Tree

    BlockExpr ::= `{` (CaseClauses | Block) `}`
    Definition Classes
    Parser
  27. def blockStatSeq(): List[Global.Tree]

    BlockStatSeq ::= { BlockStat semi } [ResultExpr]
    BlockStat    ::= Import
                   | Annotations [implicit] [lazy] Def
                   | Annotations LocalModifiers TmplDef
                   | Expr1
                   |
    Definition Classes
    Parser
  28. def bound(tok: Parsers.Token): Global.Tree
    Definition Classes
    Parser
  29. def caseBlock(): Global.Tree
    Definition Classes
    Parser
  30. def caseClause(): Global.CaseDef
    Definition Classes
    Parser
  31. def caseClauses(): List[Global.CaseDef]

    CaseClauses ::= CaseClause {CaseClause}
    CaseClause  ::= case Pattern [Guard] `=>` Block
    Definition Classes
    Parser
  32. final def caseSeparated[T](part: => T): List[T]
    Definition Classes
    Parser
    Annotations
    @inline()
  33. def checkAssoc(offset: Parsers.Offset, op: Global.Name, leftAssoc: Boolean): Unit
    Definition Classes
    Parser
  34. def checkHeadAssoc(leftAssoc: Boolean): Unit
    Definition Classes
    Parser
  35. def checkKeywordDefinition(): Unit
    Definition Classes
    Parser
  36. def checkNoEscapingPlaceholders[T](op: => T): T
    Definition Classes
    Parser
  37. def checkNotByNameOrVarargs(tpt: Global.Tree): Unit

    Check that type parameter is not by name or repeated.

    Check that type parameter is not by name or repeated.

    Definition Classes
    Parser
  38. def checkQMarkDefinition(): Unit
    Definition Classes
    Parser
  39. def classDef(start: Parsers.Offset, mods: Global.Modifiers): Global.ClassDef

    ClassDef ::= Id [TypeParamClause] ConstrAnnotations
                 [AccessModifier] ClassParamClauses RequiresTypeOpt ClassTemplateOpt
    TraitDef ::= Id [TypeParamClause] RequiresTypeOpt TraitTemplateOpt
    Definition Classes
    Parser
  40. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  41. final def commaSeparated[T](part: => T): List[T]

    , with the separator fixed to commas.

    tokenSeparated

    , with the separator fixed to commas. tokenSeparated }}}

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

    CompilationUnit ::= {package QualId semi} TopStatSeq
    Definition Classes
    Parser
  43. def condExpr(): Global.Tree
    Definition Classes
    Parser
  44. def constrBlock(vparamss: List[List[Global.ValDef]]): Global.Tree

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

    ConstrExpr      ::=  SelfInvocation
                      |  ConstrBlock
    Definition Classes
    Parser
  46. def constructorAnnotations(): List[Global.Tree]
    Definition Classes
    Parser
  47. def convertToParam(tree: Global.Tree): Global.ValDef

    Convert tree to formal parameter.

    Convert tree to formal parameter.

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

    Convert tree to formal parameter list.

    Convert tree to formal parameter list.

    Definition Classes
    Parser
  49. def convertToTypeId(tree: Global.Tree): Global.Tree

    Convert (qual)ident to type identifier.

    Convert (qual)ident to type identifier.

    Definition Classes
    Parser
  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
    Definition Classes
    Parser
  51. def deprecationWarning(offset: Parsers.Offset, msg: String, since: String): Unit
    Definition Classes
    UnitParserSourceFileParserParserCommon
  52. final def dropAnyBraces[T](body: => T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  53. def ensureEarlyDef(tree: Global.Tree): Global.Tree
    Definition Classes
    Parser
  54. def ensuring(cond: (UnitParser) => Boolean, msg: => Any): UnitParser
    Implicit
    This member is added by an implicit conversion from UnitParser toEnsuring[UnitParser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  55. def ensuring(cond: (UnitParser) => Boolean): UnitParser
    Implicit
    This member is added by an implicit conversion from UnitParser toEnsuring[UnitParser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  56. def ensuring(cond: Boolean, msg: => Any): UnitParser
    Implicit
    This member is added by an implicit conversion from UnitParser toEnsuring[UnitParser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  57. def ensuring(cond: Boolean): UnitParser
    Implicit
    This member is added by an implicit conversion from UnitParser toEnsuring[UnitParser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  58. def enumerator(isFirst: Boolean, allowNestedIf: Boolean = true): List[Global.Tree]
    Definition Classes
    Parser
  59. def enumerators(): List[Global.Tree]

    Enumerators ::= Generator {semi Enumerator}
    Enumerator  ::=  Generator
                  |  Guard
                  |  Pattern1 `=` Expr
    Definition Classes
    Parser
  60. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  61. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  62. def errorPatternTree: Global.Ident
    Definition Classes
    Parser
  63. def errorTermTree: Global.Literal
    Definition Classes
    Parser
  64. def errorTypeTree: Global.TypeTree
    Definition Classes
    Parser
  65. def expectedMsg(token: Parsers.Token): String
    Definition Classes
    Parser
  66. def expectedMsgTemplate(exp: String, fnd: String): String
    Definition Classes
    Parser
  67. def expr(location: Location): Global.Tree
    Definition Classes
    Parser
  68. 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}
                 | `:` `_` `*`
    Definition Classes
    Parser
  69. def expr0(location: Location): Global.Tree
    Definition Classes
    Parser
  70. def exprSimpleType(): Global.Tree
    Definition Classes
    Parser
  71. def exprTypeArgs(): List[Global.Tree]
    Definition Classes
    Parser
  72. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  73. def finishBinaryOp(isExpr: Boolean, opinfo: OpInfo, rhs: Global.Tree): Global.Tree
    Definition Classes
    Parser
  74. def finishPostfixOp(start: Int, base: List[OpInfo], opinfo: OpInfo): Global.Tree
    Definition Classes
    Parser
  75. def followingIsScala3Vararg(): Boolean

    Is current ident a *, and is it followed by a ) or , )?

    Is current ident a *, and is it followed by a ) or , )?

    Definition Classes
    Parser
  76. implicit def fresh: FreshNameCreator
    Definition Classes
    Parser
  77. 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
    Definition Classes
    Parser
  78. def funDefRest(start: Parsers.Offset, nameOffset: Parsers.Offset, mods: Global.Modifiers, name: Global.Name): Global.Tree
    Definition Classes
    Parser
  79. def generator(eqOK: Boolean, allowNestedIf: Boolean = true): List[Global.Tree]

    Generator ::= [`case`] Pattern1 (`<-` | `=`) Expr [Guard]
    Definition Classes
    Parser
  80. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  81. def guard(): Global.Tree

    Guard ::= if PostfixExpr
    Definition Classes
    Parser
  82. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  83. def ident(): Global.Name
    Definition Classes
    Parser
  84. def ident(skipIt: Boolean): Global.Name

    Assumed (provisionally) to be TermNames.

    Assumed (provisionally) to be TermNames.

    Definition Classes
    Parser
  85. def identForType(skipIt: Boolean): Global.TypeName
    Definition Classes
    Parser
  86. def identForType(): Global.TypeName

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

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

    Definition Classes
    Parser
  87. def identOrMacro(): Global.Name
    Definition Classes
    Parser
  88. def implicitClosure(start: Parsers.Offset, location: Location): Global.Tree

    Expr ::= implicit Id `=>` Expr
    Definition Classes
    Parser
  89. def importClause(): List[Global.Tree]

    Import  ::= import ImportExpr {`,` ImportExpr}
    Definition Classes
    Parser
  90. def importExpr(): Global.Tree

    ImportExpr ::= StableId `.` (Id | `_` | ImportSelectors)
    Definition Classes
    Parser
  91. def importSelector(): Global.ImportSelector

    ImportSelector ::= Id [`=>` Id | `=>` `_`]
    Definition Classes
    Parser
  92. def importSelectors(): List[Global.ImportSelector]

    ImportSelectors ::= `{` {ImportSelector `,`} (ImportSelector | `_`) `}`
    Definition Classes
    Parser
  93. val in: Parsers.Scanner
    Definition Classes
    SourceFileParserParserParserCommon
  94. final def inBraces[T](body: => T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  95. final def inBracesOrError[T](body: => T, alt: T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  96. final def inBracesOrNil[T](body: => List[T]): List[T]
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  97. final def inBracesOrUnit[T](body: => Global.Tree): Global.Tree
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  98. final def inBrackets[T](body: => T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  99. final def inGroupers[T](left: Parsers.Token)(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.

    Skip trailing comma is pushed down to scanner because this abstract parser doesn't have token info.

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  100. final def inParens[T](body: => T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  101. final def inParensOrError[T](body: => T, alt: T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  102. final def inParensOrNil[T](body: => List[T]): List[T]
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  103. final def inParensOrUnit[T](body: => Global.Tree): Global.Tree
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  104. def incompleteInputError(msg: String): Unit
    Definition Classes
    UnitParserSourceFileParserParser
  105. def isAnnotation: Boolean
    Definition Classes
    Parser
  106. def isCaseDefEnd: Boolean
    Definition Classes
    Parser
  107. def isDclIntro: Boolean
    Definition Classes
    Parser
  108. def isDefIntro: Boolean
    Definition Classes
    Parser
  109. def isExprIntro: Boolean
    Definition Classes
    Parser
  110. def isExprIntroToken(token: Parsers.Token): Boolean
    Definition Classes
    Parser
  111. def isIdent: Boolean
    Definition Classes
    Parser
  112. def isIdentExcept(except: Global.Name): Boolean
    Definition Classes
    Parser
  113. def isIdentOf(name: Global.Name): Boolean
    Definition Classes
    Parser
  114. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  115. def isLiteral: Boolean
    Definition Classes
    Parser
  116. def isLiteralToken(token: Parsers.Token): Boolean
    Definition Classes
    Parser
  117. def isLocalModifier: Boolean
    Definition Classes
    Parser
  118. def isMacro: Boolean
    Definition Classes
    Parser
  119. def isModifier: Boolean
    Definition Classes
    Parser
  120. def isNumericLit: Boolean
    Definition Classes
    Parser
  121. def isRawBar: Boolean
    Definition Classes
    Parser
  122. def isRawIdent: Boolean
    Definition Classes
    Parser
  123. def isRawStar: Boolean
    Definition Classes
    Parser
  124. def isScala3WildcardType: Boolean
    Definition Classes
    Parser
  125. def isSoftModifier: Boolean
    Definition Classes
    Parser
  126. def isStatSep: Boolean
    Definition Classes
    Parser
  127. def isStatSep(token: Parsers.Token): Boolean
    Definition Classes
    Parser
  128. def isStatSeqEnd: Boolean
    Definition Classes
    Parser
  129. def isTemplateIntro: Boolean
    Definition Classes
    Parser
  130. def isTypeIntroToken(token: Parsers.Token): Boolean
    Definition Classes
    Parser
  131. def isTypedParam(t: Global.Tree): Boolean
    Definition Classes
    Parser
  132. def isUnaryOp: Boolean
    Definition Classes
    Parser
  133. def isValidSoftModifier: Boolean

    Is the current token a soft modifier in a position where such a modifier is allowed?

    Is the current token a soft modifier in a position where such a modifier is allowed?

    Definition Classes
    Parser
  134. final def isWildcard(t: Global.Tree): Boolean
    Definition Classes
    Parser
    Annotations
    @tailrec()
  135. def isWildcardType: Boolean
    Definition Classes
    Parser
  136. 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.

    Definition Classes
    Parser
  137. def literal(isNegated: Boolean = false, inPattern: Boolean = false, start: Parsers.Offset = in.offset): Global.Tree

    SimpleExpr    ::= literal
                    | symbol
                    | null
    Definition Classes
    Parser
  138. def localDef(implicitMod: Long): 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) }

    Definition Classes
    Parser
  139. def localModifiers(): Global.Modifiers

    LocalModifiers ::= {LocalModifier}
    LocalModifier  ::= abstract | final | sealed | implicit | lazy
    Definition Classes
    Parser
  140. 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.

    Definition Classes
    Parser
    Annotations
    @inline()
  141. def makeBinop(isExpr: Boolean, left: Global.Tree, op: Global.TermName, right: Global.Tree, opPos: Global.Position, targs: List[Global.Tree] = Nil): Global.Tree

    Create tree representing (unencoded) binary operation expression or pattern.

    Create tree representing (unencoded) binary operation expression or pattern.

    Definition Classes
    Parser
  142. def makeEmptyPackage(start: Parsers.Offset, stats: List[Global.Tree]): Global.PackageDef
    Definition Classes
    Parser
  143. def makeFilter(start: Parsers.Offset, tree: Global.Tree): Global.Apply
    Definition Classes
    Parser
  144. def makePackaging(start: Parsers.Offset, pkg: Global.Tree, stats: List[Global.Tree]): Global.PackageDef

    Create a tree representing a packaging.

    Create a tree representing a packaging.

    Definition Classes
    Parser
  145. 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()
  146. def makeSafeFunctionType(argtpes: List[Global.Tree], restpe: Global.Tree): Global.Tree

    Create a function Tree.

    Create a function Tree. If the arity is not supported, a syntax error is emitted.

    Definition Classes
    Parser
  147. def makeSafeTupleTerm(elems: List[Global.Tree]): Global.Tree

    Create a tuple term Tree.

    Create a tuple term Tree. If the arity is not supported, a syntax error is emitted.

    Definition Classes
    Parser
  148. def makeSafeTupleType(elems: List[Global.Tree]): Global.Tree

    Create a tuple type Tree.

    Create a tuple type Tree. If the arity is not supported, a syntax error is emitted.

    Definition Classes
    Parser
  149. def mixinQualifierOpt(): Global.TypeName

    MixinQualifier ::= `[` Id `]`
    Definition Classes
    Parser
  150. def modifiers(): Global.Modifiers

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

    A succession of argument lists.

    A succession of argument lists.

    Definition Classes
    Parser
  152. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  153. def newLineOpt(): Unit
    Definition Classes
    Parser
  154. def newLineOptWhenFollowedBy(token: Parsers.Offset): Unit
    Definition Classes
    Parser
  155. def newLineOptWhenFollowing(p: (Parsers.Token) => Boolean): Unit
    Definition Classes
    Parser
  156. def newLinesOpt(): Unit
    Definition Classes
    Parser
  157. def newScanner(): Parsers.UnitScanner
    Definition Classes
    UnitParserSourceFileParser
  158. final val noSeq: SeqContextSensitive

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

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

    Definition Classes
    Parser
  159. def nonLocalDefOrDcl: List[Global.Tree]
    Definition Classes
    Parser
  160. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  161. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  162. def o2p(offset: Parsers.Offset): Global.Position
    Definition Classes
    Parser
  163. def objectDef(start: Parsers.Offset, mods: Global.Modifiers, isPackageObject: Boolean = false): Global.ModuleDef

    ObjectDef       ::= Id ClassTemplateOpt
    Definition Classes
    Parser
  164. var opstack: List[OpInfo]
    Definition Classes
    Parser
  165. final val outPattern: PatternContextSensitive

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

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

    Definition Classes
    Parser
  166. 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` { ... }
    }
    Definition Classes
    Parser
  167. def packageOrPackageObject(start: Parsers.Offset): Global.Tree
    Definition Classes
    Parser
  168. def param(owner: Global.Name, implicitmod: Long, caseParam: Boolean): Global.ValDef
    Definition Classes
    Parser
  169. 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]
    Definition Classes
    Parser
  170. def paramType(repeatedParameterOK: Boolean, useStartAsPosition: Boolean): Global.Tree
    Definition Classes
    Parser
  171. def paramType(): Global.Tree

    ParamType ::= Type | `=>` Type | Type `*`
    Definition Classes
    Parser
  172. def parse(): Global.Tree

    This is the general parse entry point.

    This is the general parse entry point.

    Definition Classes
    Parser
  173. def parseRule[T](rule: (UnitParser.this.type) => T): T
    Definition Classes
    Parser
  174. def parseStartRule: () => Global.Tree

    The parse starting point depends on whether the source file is self-contained: if not, the AST will be supplemented.

    The parse starting point depends on whether the source file is self-contained: if not, the AST will be supplemented.

    Definition Classes
    SourceFileParserParser
  175. def parseStats(): List[Global.Tree]

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

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

    Definition Classes
    Parser
  176. def parseStatsOrPackages(): List[Global.Tree]
    Definition Classes
    Parser
  177. def patDefOrDcl(pos: Int, mods: Global.Modifiers): List[Global.Tree]

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

    Path       ::= StableId
                |  [Ident `.`] this
    AnnotType ::= Path [`.` type]
    Definition Classes
    Parser
  179. def pattern(): Global.Tree

    Default entry points into some pattern contexts.

    Default entry points into some pattern contexts.

    Definition Classes
    Parser
  180. 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.

    Definition Classes
    Parser
  181. def placeholderTypeBoundary(op: => Global.Tree): Global.Tree
    Definition Classes
    Parser
  182. 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.

    Definition Classes
    Parser
  183. def postfixExpr(): Global.Tree

    PostfixExpr   ::= InfixExpr [Id [nl]]
    InfixExpr     ::= PrefixExpr
                    | InfixExpr Id [nl] InfixExpr
    Definition Classes
    Parser
  184. def prefixExpr(): Global.Tree

    PrefixExpr   ::= [`-` | `+` | `~` | `!`] SimpleExpr
    Definition Classes
    Parser
  185. def qualId(): Global.Tree

    QualId ::= Id {`.` Id}
    Definition Classes
    Parser
  186. def r2p(offset: Parsers.Offset): Global.Position
    Definition Classes
    Parser
  187. def r2p(start: Parsers.Offset, mid: Parsers.Offset): Global.Position
    Definition Classes
    Parser
  188. def r2p(start: Parsers.Offset, mid: Parsers.Offset, end: Parsers.Offset): Global.Position
    Definition Classes
    Parser
  189. def rawIdent(): Global.Name
    Definition Classes
    Parser
  190. def readAnnots(part: => Global.Tree): List[Global.Tree]
    Definition Classes
    Parser
  191. def reduceExprStack(base: List[OpInfo], top: Global.Tree): Global.Tree
    Definition Classes
    Parser
  192. def reducePatternStack(base: List[OpInfo], top: Global.Tree): Global.Tree
    Definition Classes
    Parser
  193. def reduceStack(isExpr: Boolean, base: List[OpInfo], top: Global.Tree, opPrecedence: Precedence, leftAssoc: Boolean): Global.Tree
    Definition Classes
    Parser
  194. def reduceStack(isExpr: Boolean, base: List[OpInfo], top: Global.Tree): Global.Tree
    Definition Classes
    Parser
  195. def refineStat(): List[Global.Tree]
    Definition Classes
    Parser
  196. def refineStatSeq(): List[Global.Tree]

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

    Refinement ::= [nl] `{` RefineStat {semi RefineStat} `}`
    Definition Classes
    Parser
  198. def resetPackage(): Unit
    Definition Classes
    Parser
  199. def scriptBody(): Global.Tree

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

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

    Definition Classes
    Parser
  200. def selector(start: Parsers.Offset, t0: Global.Tree): Global.Tree
    Definition Classes
    Parser
  201. final def selectors(start: Parsers.Offset, t: Global.Tree, typeOK: Boolean, dotOffset: Parsers.Offset): Global.Tree
    Definition Classes
    Parser
    Annotations
    @tailrec()
  202. def selfInvocation(vparamss: List[List[Global.ValDef]]): Global.Tree

    SelfInvocation  ::= this ArgumentExprs {ArgumentExprs}
    Definition Classes
    Parser
  203. final def separatedToken[T](separator: Parsers.Token, part: => T): List[T]

    .

    { `sep` part }

    . { sep part } }}}

    Definition Classes
    ParserParserCommon
  204. final val seqOK: SeqContextSensitive

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

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

    Definition Classes
    Parser
  205. def seqPatterns(): List[Global.Tree]
    Definition Classes
    Parser
  206. def setInPos[T <: Global.Tree](t: T): T
    Definition Classes
    Parser
  207. def showSyntaxErrors(): Unit
  208. def simpleExpr(): Global.Tree

    SimpleExpr    ::= new (ClassTemplate | TemplateBody)
                    |  BlockExpr
                    |  SimpleExpr1 [`_`]
    SimpleExpr1   ::= literal
                    |  xLiteral
                    |  Path
                    |  `(` [Exprs] `)`
                    |  SimpleExpr `.` Id
                    |  SimpleExpr TypeArgs
                    |  SimpleExpr1 ArgumentExprs
    Definition Classes
    Parser
  209. final def simpleExprRest(start: Parsers.Offset, t: Global.Tree, canApply: Boolean): Global.Tree
    Definition Classes
    Parser
    Annotations
    @tailrec()
  210. def skip(targetToken: Parsers.Token): Unit
    Attributes
    protected
    Definition Classes
    Parser
  211. def smartParse(): Global.Tree

    parse unit.

    parse unit. If there are unbalanced braces, try to correct them and reparse.

  212. val source: SourceFile
    Definition Classes
    SourceFileParserParser
  213. def stableId(): Global.Tree

    StableId ::= Id
              |  Path `.` Id
              |  [id `.`] super [`[` id `]`]`.` id
    Definition Classes
    Parser
  214. def startAnnotType(): Global.Tree
    Definition Classes
    Parser
  215. def startInfixType(): Global.Tree
    Definition Classes
    Parser
  216. def statSeq(stat: PartialFunction[Parsers.Token, List[Global.Tree]], errorMsg: String = "illegal start of definition"): List[Global.Tree]
    Definition Classes
    Parser
  217. def statement(location: Location): Global.Tree
    Definition Classes
    Parser
  218. def stripParens(t: Global.Tree): Global.Tree

    Strip the artificial Parens node to create a tuple term Tree.

    Strip the artificial Parens node to create a tuple term Tree.

    Definition Classes
    Parser
  219. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  220. def syntaxError(offset: Parsers.Offset, msg: String): Unit
    Definition Classes
    UnitParserSourceFileParserParser
  221. def syntaxError(offset: Parsers.Offset, msg: String, skipIt: Boolean): Unit
    Definition Classes
    Parser
  222. def syntaxError(msg: String, skipIt: Boolean): Unit
    Definition Classes
    Parser
  223. def syntaxErrorOrIncomplete(msg: String, skipIt: Boolean): Unit
    Definition Classes
    Parser
  224. def syntaxErrorOrIncompleteAnd[T](msg: String, skipIt: Boolean)(and: T): T
    Definition Classes
    Parser
  225. val syntaxErrors: ListBuffer[(Int, String)]
  226. 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
    Definition Classes
    Parser
  227. def templateBody(isPre: Boolean): (Global.ValDef, List[Global.Tree])

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

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

    Definition Classes
    Parser
  228. def templateBodyOpt(parenMeansSyntaxError: Boolean): (Global.ValDef, List[Global.Tree])
    Definition Classes
    Parser
  229. 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 | [[TraitExtends] TemplateBody]
    TraitExtends     ::= `extends` | `<:` (deprecated)
    Definition Classes
    Parser
  230. def templateOrTopStatSeq(): List[Global.Tree]
    Definition Classes
    Parser
  231. def templateParents(): List[Global.Tree]

    ClassParents       ::= AnnotType {`(` [Exprs] `)`} {with AnnotType}
    TraitParents       ::= AnnotType {with AnnotType}
    Definition Classes
    Parser
  232. def templateStat: PartialFunction[Parsers.Token, List[Global.Tree]]
    Definition Classes
    Parser
  233. def templateStatSeq(isPre: Boolean): (Global.ValDef, List[Global.Tree])

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

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

    Definition Classes
    Parser
  234. def templateStats(): List[Global.Tree]

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

    TmplDef ::= [case] class ClassDef
              |  [case] object ObjectDef
              |  [override] trait TraitDef
    Definition Classes
    Parser
  236. def toString(): String
    Definition Classes
    AnyRef → Any
  237. final def tokenSeparated[T](separator: Parsers.Token, part: => T): List[T]

    .

    part { `sep` part }

    . part { sep part } }}}

    Definition Classes
    ParserParserCommon
  238. def topLevelTmplDef: Global.Tree

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

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

    Definition Classes
    Parser
  239. def topStat: PartialFunction[Parsers.Token, List[Global.Tree]]
    Definition Classes
    Parser
  240. def topStatSeq(): List[Global.Tree]

    TopStatSeq ::= TopStat {semi TopStat}
    TopStat ::= Annotations Modifiers TmplDef
              | Packaging
              | package object ObjectDef
              | Import
              |
    Definition Classes
    Parser
  241. val treeBuilder: ParserTreeBuilder
    Definition Classes
    Parser
  242. def typ(): Global.Tree

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

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

    Definition Classes
    Parser
  243. def typeBounds(): Global.TypeBoundsTree

    TypeBounds ::= [`>:` Type] [`<:` Type]
    Definition Classes
    Parser
  244. def typeDefOrDcl(start: Parsers.Offset, mods: Global.Modifiers): Global.Tree

    TypeDef ::= type Id [TypeParamClause] `=` Type
              | FunSig `=` Expr
    TypeDcl ::= type Id [TypeParamClause] TypeBounds
    Definition Classes
    Parser
  245. def typeOrInfixType(location: Location): Global.Tree
    Definition Classes
    Parser
  246. def typeParamClauseOpt(owner: Global.Name, contextBoundBuf: ListBuffer[Global.Tree], ownerKind: ParamOwner): List[Global.TypeDef]

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

    TypedOpt ::= [`:` Type]
    Definition Classes
    Parser
  248. val unit: Global.CompilationUnit
    Definition Classes
    UnitParserSourceFileParserParser
  249. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  250. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  251. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  252. def warning(offset: Parsers.Offset, msg: String, category: WarningCategory): Unit
    Definition Classes
    UnitParserSourceFileParserParser
  253. def warning(msg: String, category: WarningCategory): Unit
    Definition Classes
    Parser
  254. def wildImportSelector(): Global.ImportSelector
    Definition Classes
    Parser
  255. def wildcardOrIdent(): Global.Name
    Definition Classes
    Parser
  256. def wildcardType(start: Parsers.Offset, qmark: Boolean): Global.Ident

    WildcardType ::= `_` TypeBounds
    Definition Classes
    Parser
  257. def withPatches(patches: List[BracePatch]): UnitParser
  258. def xmlLiteral(): Global.Tree
    Definition Classes
    SourceFileParserParser
  259. def xmlLiteralPattern(): Global.Tree
    Definition Classes
    SourceFileParserParser
  260. final val xmlSeqOK: SeqContextSensitive

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

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

    Definition Classes
    Parser
  261. def xmlSeqPatterns(): List[Global.Tree]
    Definition Classes
    Parser

Deprecated Value Members

  1. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from UnitParser toStringFormat[UnitParser] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.12.16) Use formatString.format(value) instead of value.formatted(formatString), or use the f"" string interpolator. In Java 15 and later, formatted resolves to the new method in String which has reversed parameters.

  2. def precedence(operator: Global.Name): Int
    Definition Classes
    Parser
    Annotations
    @deprecated
    Deprecated

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

  3. def [B](y: B): (UnitParser, B)
    Implicit
    This member is added by an implicit conversion from UnitParser toArrowAssoc[UnitParser] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from SourceFileParser

Inherited from Parser

Inherited from Parsers.ParserCommon

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromUnitParser to any2stringadd[UnitParser]

Inherited by implicit conversion StringFormat fromUnitParser to StringFormat[UnitParser]

Inherited by implicit conversion Ensuring fromUnitParser to Ensuring[UnitParser]

Inherited by implicit conversion ArrowAssoc fromUnitParser to ArrowAssoc[UnitParser]

Ungrouped