Class/Object

scala.meta.internal.parsers

ScalametaParser

Related Docs: object ScalametaParser | package parsers

Permalink

class ScalametaParser extends AnyRef

Self Type
ScalametaParser
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ScalametaParser
  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 ScalametaParser(input: Input, dialect: Dialect)

    Permalink

Type Members

  1. trait CanEndStat extends AnyRef

    Permalink
  2. trait CantStartStat extends AnyRef

    Permalink
  3. trait CaseDefEnd extends AnyRef

    Permalink
  4. trait CaseIntro extends AnyRef

    Permalink
  5. trait DclIntro extends AnyRef

    Permalink
  6. trait DefIntro extends AnyRef

    Permalink
  7. trait ExprIntro extends AnyRef

    Permalink
  8. case class IndexPos(index: Int) extends Pos with Product with Serializable

    Permalink
  9. sealed abstract class InfixContext extends AnyRef

    Permalink
  10. trait Literal extends AnyRef

    Permalink
  11. trait LocalModifier extends AnyRef

    Permalink
  12. trait Modifier extends AnyRef

    Permalink
  13. trait NonlocalModifier extends AnyRef

    Permalink
  14. trait NumericLiteral extends AnyRef

    Permalink
  15. trait PatternContextSensitive extends AnyRef

    Permalink

    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.

  16. sealed trait Pos extends AnyRef

    Permalink
  17. trait SeqContextSensitive extends PatternContextSensitive

    Permalink

    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.

  18. trait StatSep extends AnyRef

    Permalink
  19. trait StatSeqEnd extends AnyRef

    Permalink
  20. trait TemplateIntro extends AnyRef

    Permalink
  21. sealed trait TemplateOwner extends AnyRef

    Permalink
  22. trait TokenIterator extends Iterator[Token]

    Permalink
  23. case class TokenPos(token: Token) extends Pos with Product with Serializable

    Permalink
  24. case class TreePos(tree: Tree) extends Pos with Product with Serializable

    Permalink
  25. trait Trivia extends AnyRef

    Permalink
  26. trait TypeIntro extends AnyRef

    Permalink
  27. trait Whitespace extends AnyRef

    Permalink
  28. implicit class XtensionTokenIndex extends AnyRef

    Permalink

Value Members

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

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  6. object AutoPos extends Pos with Product with Serializable

    Permalink
  7. object CanEndStat

    Permalink
  8. object CantStartStat

    Permalink
  9. object CaseDefEnd

    Permalink
  10. object CaseIntro

    Permalink
  11. object DclIntro

    Permalink
  12. object DefIntro

    Permalink
  13. object ExprIntro

    Permalink
  14. object Literal

    Permalink
  15. object LocalModifier

    Permalink
  16. object Modifier

    Permalink
  17. object NonlocalModifier

    Permalink
  18. object NumericLiteral

    Permalink
  19. object OwnedByCaseClass extends TemplateOwner

    Permalink
  20. object OwnedByClass extends TemplateOwner

    Permalink
  21. object OwnedByObject extends TemplateOwner

    Permalink
  22. object OwnedByTrait extends TemplateOwner

    Permalink
  23. object StatSep

    Permalink
  24. object StatSeqEnd

    Permalink
  25. object TemplateIntro

    Permalink
  26. object Trivia

    Permalink
  27. object TypeIntro

    Permalink
  28. object Whitespace

    Permalink
  29. def accept[T <: Token](implicit arg0: TokenInfo[T]): Unit

    Permalink

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

  30. def acceptOpt[T <: Token](implicit arg0: TokenInfo[T]): Unit

    Permalink

    If current token is T consume it.

  31. def acceptStatSep(): Unit

    Permalink

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

    Permalink
  33. def accessModifier(): Mod

    Permalink
  34. def accessModifierOpt(): Option[Mod]

    Permalink

    AccessModifier ::= (private | protected) [AccessQualifier]
    AccessQualifier ::= `[' (Id | this) `]'
  35. final def ahead[T](body: ⇒ T): T

    Permalink

    Scoping operator used to temporarily look into the future.

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

    Annotations
    @inline()
  36. def allowInline: Boolean

    Permalink
  37. def annotTypeRest(t: Type): Type

    Permalink
  38. def annots(skipNewLines: Boolean, allowArgss: Boolean = true): collection.immutable.List[Annot]

    Permalink

    Annotations      ::= {`@' SimpleType {ArgumentExprs}}
    ConsrAnnotations ::= {`@' SimpleType ArgumentExprs}
  39. def argumentExpr(): Arg

    Permalink
  40. def argumentExprs(): collection.immutable.List[Arg]

    Permalink

    ArgumentExprs ::= `(' [Exprs] `)'
                    | [nl] BlockExpr
  41. def argumentExprsOrPrefixExpr(): collection.immutable.List[Arg]

    Permalink
  42. def argumentPattern(): Arg

    Permalink
  43. def argumentPatterns(): collection.immutable.List[Arg]

    Permalink
  44. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  45. def atPos[T <: Tree](start: Pos, end: Pos)(body: ⇒ T): T

    Permalink
  46. def auto: AutoPos.type

    Permalink
  47. def autoPos[T <: Tree](body: ⇒ T): T

    Permalink
  48. def batchSource(): Source

    Permalink
  49. def block(): Term

    Permalink

    Block ::= BlockStatSeq
    Note

    Return tree does not carry position.

  50. def blockExpr(): Term

    Permalink

    BlockExpr ::= `{' (CaseClauses | Block) `}'
  51. def blockStatSeq(): collection.immutable.List[Stat]

    Permalink

    BlockStatSeq ::= { BlockStat semi } [ResultExpr]
    BlockStat    ::= Import
                   | Annotations [implicit] [lazy] Def
                   | Annotations LocalModifiers TmplDef
                   | Expr1
                   |
  52. def bound[T <: Token](implicit arg0: TokenInfo[T]): Option[Type]

    Permalink
  53. def caseClause(): Case

    Permalink
  54. def caseClauses(): collection.immutable.List[Case]

    Permalink

    CaseClauses ::= CaseClause {CaseClause}
    CaseClause  ::= case Pattern [Guard] `=>' Block
  55. def checkAssoc(op: Term.Name, leftAssoc: Boolean): Unit

    Permalink
  56. def classDef(mods: collection.immutable.List[Mod]): Class

    Permalink

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

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  58. final def commaSeparated[T <: Tree](part: ⇒ T)(implicit arg0: AstInfo[T]): collection.immutable.List[T]

    Permalink
    Annotations
    @inline()
  59. def condExpr(): Term

    Permalink
  60. def constrBlock(): Block

    Permalink

    ConstrBlock    ::=  `{' SelfInvocation {semi BlockStat} `}'
  61. def constrExpr(): Term

    Permalink

    ConstrExpr      ::=  SelfInvocation
                      |  ConstrBlock
  62. def constructorAnnots(): collection.immutable.List[Annot]

    Permalink
  63. def constructorCall(tpe: Type, allowArgss: Boolean = true): Call

    Permalink
  64. def convertToParam(tree: Term): Option[Param]

    Permalink

    Convert tree to formal parameter.

  65. def convertToParams(tree: Term): collection.immutable.List[Param]

    Permalink

    Convert tree to formal parameter list.

  66. def convertToTypeId(ref: Term.Ref): Option[Type]

    Permalink
  67. implicit val currentDialect: Dialect

    Permalink
  68. def defOrDclOrSecondaryCtor(mods: collection.immutable.List[Mod]): Stat

    Permalink

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

    Permalink
    Annotations
    @inline()
  70. def ellipsis[T <: Tree](rank: Int, astInfo: AstInfo[T], extraSkip: ⇒ Unit = {})(implicit arg0: AstInfo[T]): T

    Permalink
  71. def ensureEarlyDef(tree: Stat): Stat

    Permalink
  72. def ensuring(cond: (ScalametaParser) ⇒ Boolean, msg: ⇒ Any): ScalametaParser

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

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

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

    Permalink
    Implicit information
    This member is added by an implicit conversion from ScalametaParser to Ensuring[ScalametaParser] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  76. def enumerator(isFirst: Boolean, allowNestedIf: Boolean = true): collection.immutable.List[Enumerator]

    Permalink
  77. def enumerators(): collection.immutable.List[Enumerator]

    Permalink

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  80. def existentialStats(): collection.immutable.List[Stat]

    Permalink
  81. def expr(location: Location): Term

    Permalink
  82. def expr(): Term

    Permalink

    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}
                 | `:' `_' `*'
  83. def exprSimpleType(): Type

    Permalink
  84. def exprTypeArgs(): collection.immutable.List[Type]

    Permalink
  85. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  86. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from ScalametaParser to StringFormat[ScalametaParser] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  87. def funDefOrDclOrSecondaryCtor(mods: collection.immutable.List[Mod]): Stat

    Permalink

    FunDef ::= FunSig [`:' Type] `=' [`macro'] Expr
            |  FunSig [nl] `{' Block `}'
            |  `this' ParamClause ParamClauses
                   (`=' ConstrExpr | [nl] ConstrBlock)
    FunDcl ::= FunSig [`:' Type]
    FunSig ::= id [FunTypeParamClause] ParamClauses
  88. def funDefRest(mods: collection.immutable.List[Mod]): Stat

    Permalink
  89. def generator(eqOK: Boolean, allowNestedIf: Boolean = true): collection.immutable.List[Enumerator]

    Permalink

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

    Permalink
    Definition Classes
    AnyRef → Any
  91. def guard(): Option[Term]

    Permalink

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

    Permalink
    Definition Classes
    AnyRef → Any
  93. def implicitClosure(location: Location): Term.Function

    Permalink

    Expr ::= implicit Id => Expr
  94. def importStmt(): Import

    Permalink

    Import  ::= import ImportExpr {`,' ImportExpr}
  95. def importWildcardOrName(): Importee

    Permalink
  96. def importee(): Importee

    Permalink

    ImportSelector ::= Id [`=>' Id | `=>' `_']
  97. def importees(): collection.immutable.List[Importee]

    Permalink

    ImportSelectors ::= `{' {ImportSelector `,'} (ImportSelector | `_') `}'
  98. def importer(): Importer

    Permalink

    ImportExpr ::= StableId `.' (Id | `_' | ImportSelectors)
  99. var in: TokenIterator

    Permalink
  100. final def inBraces[T](body: ⇒ T): T

    Permalink
    Annotations
    @inline()
  101. final def inBracesOrError[T](body: ⇒ T, alt: T): T

    Permalink
    Annotations
    @inline()
  102. final def inBracesOrNil[T](body: ⇒ collection.immutable.List[T]): collection.immutable.List[T]

    Permalink
    Annotations
    @inline()
  103. final def inBracesOrUnit[T](body: ⇒ Term): Term

    Permalink
    Annotations
    @inline()
  104. final def inBrackets[T](body: ⇒ T): T

    Permalink
    Annotations
    @inline()
  105. final def inParens[T](body: ⇒ T): T

    Permalink

    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. token.LeftParen) will be returned instead of the contents of the groupers. However in all cases accept[LeftParen] will be called, so a parse error will still result. If the grouping is optional, token should be tested before calling these methods.

    Annotations
    @inline()
  106. final def inParensOrError[T](body: ⇒ T, alt: T): T

    Permalink
    Annotations
    @inline()
  107. final def inParensOrNil[T](body: ⇒ collection.immutable.List[T]): collection.immutable.List[T]

    Permalink
    Annotations
    @inline()
  108. final def inParensOrUnit[T, Ret >: Lit](body: ⇒ Ret): Ret

    Permalink
    Annotations
    @inline()
  109. def inQuasiquote: Boolean

    Permalink
  110. implicit def intToIndexPos(index: Int): IndexPos

    Permalink
  111. def interpolate[Ctx <: Tree, Ret <: Tree](arg: () ⇒ Ctx, result: (Term.Name, collection.immutable.List[Lit], collection.immutable.List[Ctx]) ⇒ Ret): Ret

    Permalink
  112. def interpolatePat(): Interpolate

    Permalink
  113. def interpolateTerm(): Interpolate

    Permalink
  114. def isBackquoted: Boolean

    Permalink
  115. def isColonWildcardStar: Boolean

    Permalink
  116. def isIdent: Boolean

    Permalink
  117. def isIdentAnd(pred: (String) ⇒ Boolean): Boolean

    Permalink
  118. def isIdentExcept(except: String): Boolean

    Permalink
  119. def isIdentOf(name: String): Boolean

    Permalink
  120. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  121. def isRawBar: Boolean

    Permalink
  122. def isRawStar: Boolean

    Permalink
  123. def isSpliceFollowedBy(check: ⇒ Boolean): Boolean

    Permalink
  124. def isUnaryOp: Boolean

    Permalink
  125. def literal(isNegated: Boolean = false): Lit

    Permalink

    SimpleExpr    ::= literal
                    | symbol
                    | null
  126. def localDef(implicitMod: Option[Implicit]): Stat

    Permalink
  127. def localModifiers(): collection.immutable.List[Mod]

    Permalink

    LocalModifiers ::= {LocalModifier}
    LocalModifier  ::= abstract | final | sealed | implicit | lazy
  128. def makeTuple[T <: Tree](body: collection.immutable.List[T], zero: () ⇒ T, tuple: (collection.immutable.List[T]) ⇒ T): T

    Permalink
  129. def makeTupleTerm(body: collection.immutable.List[Term]): Term

    Permalink
  130. def makeTupleTermParens(bodyf: ⇒ collection.immutable.List[Term]): Term

    Permalink
  131. def makeTupleType(body: collection.immutable.List[Type]): Type

    Permalink
  132. def mixinQualifier(): Qualifier

    Permalink

    MixinQualifier ::= `[' Id `]'
  133. def modifier(): Mod

    Permalink
  134. def modifiers(isLocal: Boolean = false): collection.immutable.List[Mod]

    Permalink

    Modifiers ::= {Modifier}
    Modifier  ::= LocalModifier
                |  AccessModifier
                |  override
  135. implicit def modsToPos(mods: collection.immutable.List[Mod]): Pos

    Permalink
  136. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  137. def newLineOpt(): Unit

    Permalink
  138. def newLineOptWhenFollowedBy[T <: Token](implicit arg0: TokenInfo[T]): Unit

    Permalink
  139. def newLineOptWhenFollowing(p: (Token) ⇒ Boolean): Unit

    Permalink
  140. def newLinesOpt(): Unit

    Permalink
  141. def next(): Token

    Permalink
  142. def nextOnce(): Token

    Permalink
  143. def nextThrice(): Token

    Permalink
  144. def nextTwice(): Token

    Permalink
  145. object noSeq extends SeqContextSensitive

    Permalink

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

  146. def nonLocalDefOrDcl(): Stat

    Permalink
  147. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  149. def objectDef(mods: collection.immutable.List[Mod]): Object

    Permalink

    ObjectDef       ::= Id ClassTemplateOpt
  150. implicit def optionTreeToPos(tree: Option[Tree]): Pos

    Permalink
  151. object outPattern extends PatternContextSensitive

    Permalink

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

  152. def packageDef(): Pkg

    Permalink
  153. def packageObjectDef(): Object

    Permalink
  154. def packageOrPackageObjectDef(): Stat

    Permalink
  155. def param(ownerIsCase: Boolean, ownerIsType: Boolean, isImplicit: Boolean): Param

    Permalink
  156. def paramClauses(ownerIsType: Boolean, ownerIsCase: Boolean = false): collection.immutable.List[collection.immutable.List[Param]]

    Permalink

    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]
  157. def paramType(): Arg

    Permalink

    ParamType ::= Type | `=>' Type | Type `*'
  158. def parseCase(): Case

    Permalink
  159. def parseCtorCall(): Call

    Permalink
  160. def parseEnumerator(): Enumerator

    Permalink
  161. def parseImportee(): Importee

    Permalink
  162. def parseImporter(): Importer

    Permalink
  163. def parseMod(): Mod

    Permalink
  164. def parsePat(): Pat

    Permalink
  165. def parsePatArg(): Arg

    Permalink
  166. def parsePatType(): Pat.Type

    Permalink
  167. def parseQuasiquoteCtor(): Ctor

    Permalink
  168. def parseQuasiquoteMod(): Mod

    Permalink
  169. def parseQuasiquotePat(): Pat

    Permalink
  170. def parseQuasiquotePatArg(): Arg

    Permalink
  171. def parseQuasiquotePatType(): Pat.Type

    Permalink
  172. def parseQuasiquoteStat(): Stat

    Permalink
  173. def parseQuasiquoteTemplate(): Template

    Permalink
  174. def parseRule[T <: Tree](rule: (ScalametaParser.this.type) ⇒ T): T

    Permalink
  175. def parseSource(): Source

    Permalink
  176. def parseStat(): Stat

    Permalink
  177. def parseTemplate(): Template

    Permalink
  178. def parseTerm(): Term

    Permalink
  179. def parseTermArg(): Arg

    Permalink
  180. def parseTermParam(): Param

    Permalink
  181. def parseType(): Type

    Permalink
  182. def parseTypeArg(): Arg

    Permalink
  183. def parseTypeParam(): Param

    Permalink
  184. def parseUnquotePat(): Pat

    Permalink
  185. def parseUnquoteTerm(): Term

    Permalink
  186. lazy val parserTokenPositions: Array[Int]

    Permalink
  187. lazy val parserTokens: Tokens

    Permalink
  188. def patDefOrDcl(mods: collection.immutable.List[Mod]): Stat

    Permalink

    PatDef ::= Pattern2 {`,' Pattern2} [`:' Type] `=' Expr
    ValDcl ::= Id {`,' Id} `:' Type
    VarDef ::= PatDef | Id {`,' Id} `:' Type `=' `_'
  189. implicit object patInfixContext extends InfixContext

    Permalink
  190. def path(thisOK: Boolean = true): Term.Ref

    Permalink

    Path       ::= StableId
                |  [Ident `.'] this
    ModType ::= Path [`.' type]
  191. def pattern(): Arg

    Permalink

    Default entry points into some pattern contexts.

  192. def patternTyp(): Pat.Type

    Permalink
  193. def patternTypeArgs(): collection.immutable.List[Pat.Type]

    Permalink
  194. def peekingAhead[T](tree: ⇒ T): T

    Permalink

    Perform an operation while peeking ahead.

    Perform an operation while peeking ahead. Recover to inputal state in case of exception.

    Annotations
    @inline()
  195. def postfixExpr(): Term

    Permalink

    PostfixExpr   ::= InfixExpr [Id [nl]]
    InfixExpr     ::= PrefixExpr
                    | InfixExpr Id [nl] InfixExpr
  196. def prefixExpr(): Term

    Permalink

    PrefixExpr   ::= [`-' | `+' | `~' | `!' | `&'] SimpleExpr
  197. def primaryCtor(owner: TemplateOwner): Primary

    Permalink
  198. def qualId(): Term.Ref

    Permalink

    QualId ::= Id {`.' Id}
  199. def quasiquoteCtor(): Ctor

    Permalink
  200. def quasiquotePattern(): Arg

    Permalink
  201. def quasiquotePatternArg(): Arg

    Permalink
  202. def quasiquotePatternTyp(): Pat.Type

    Permalink
  203. def quasiquoteTemplate(): Template

    Permalink
  204. def refineStat(): Option[Stat]

    Permalink
  205. def refineStatSeq(): collection.immutable.List[Stat]

    Permalink

    RefineStatSeq    ::= RefineStat {semi RefineStat}
    RefineStat       ::= Dcl
                       | type TypeDef
                       |
  206. def refinement(): collection.immutable.List[Stat]

    Permalink

    Refinement ::= [nl] `{' RefineStat {semi RefineStat} `}'
  207. lazy val reporter: Reporter

    Permalink
  208. lazy val scannerTokens: Tokens

    Permalink
  209. def scriptSource(): Source

    Permalink
  210. def secondaryCtor(mods: collection.immutable.List[Mod]): Secondary

    Permalink
  211. def selector(t: Term): Select

    Permalink
  212. def selectors(t: Term): Term.Ref

    Permalink
  213. def selfInvocation(): Term

    Permalink

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

    Permalink

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

  215. def seqPatterns(): collection.immutable.List[Arg]

    Permalink
  216. def simpleExpr(): Term

    Permalink

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

    Permalink
  218. def source(): Source

    Permalink

    CompilationUnit ::= {package QualId semi} TopStatSeq
  219. def stableId(): Term.Ref

    Permalink

    StableId ::= Id
              |  Path `.' Id
              |  [id `.'] super [`[' id `]']`.' id
  220. def startInfixType(): Type

    Permalink
  221. def startModType(): Type

    Permalink
  222. def statSeq[T <: Tree](statpf: PartialFunction[Token, T], errorMsg: String = "illegal start of definition")(implicit arg0: AstInfo[T]): collection.immutable.List[T]

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

    Permalink
    Definition Classes
    AnyRef
  224. def syntaxErrorExpected[T <: Token](implicit arg0: TokenInfo[T]): Nothing

    Permalink
  225. def template(): Template

    Permalink

    ClassTemplate ::= [EarlyDefs with] ClassParents [TemplateBody]
    TraitTemplate ::= [EarlyDefs with] TraitParents [TemplateBody]
    EarlyDefs     ::= `{' [EarlyDef {semi EarlyDef}] `}'
    EarlyDef      ::= Annotations Modifiers PatDef
  226. def templateBody(isPre: Boolean): (Param, collection.immutable.List[Stat])

    Permalink

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

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

  227. def templateBodyOpt(parenMeansSyntaxError: Boolean): (Param, Option[collection.immutable.List[Stat]])

    Permalink
  228. def templateOpt(owner: TemplateOwner): Template

    Permalink

    ClassTemplateOpt ::= `extends' ClassTemplate | [[`extends'] TemplateBody]
    TraitTemplateOpt ::= TraitExtends TraitTemplate | [[`extends'] TemplateBody] | `<:' TemplateBody
    TraitExtends     ::= `extends' | `<:'
  229. def templateParents(): collection.immutable.List[Call]

    Permalink

    ClassParents       ::= ModType {`(' [Exprs] `)'} {with ModType}
    TraitParents       ::= ModType {with ModType}
  230. def templateStat: PartialFunction[Token, Stat]

    Permalink
  231. def templateStatSeq(isPre: Boolean): (Param, collection.immutable.List[Stat])

    Permalink

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

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

  232. def templateStats(): collection.immutable.List[Stat]

    Permalink

    TemplateStats    ::= TemplateStat {semi TemplateStat}
    TemplateStat     ::= Import
                       | Annotations Modifiers Def
                       | Annotations Modifiers Dcl
                       | Expr1
                       | super ArgumentExprs {ArgumentExprs}
                       |
  233. object termInfixContext extends InfixContext

    Permalink
  234. def termName(advance: Boolean = true): Term.Name

    Permalink
  235. def tmplDef(mods: collection.immutable.List[Mod]): Member with Stat

    Permalink

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

    Permalink
    Definition Classes
    AnyRef → Any
  237. def token: Token

    Permalink
  238. final def tokenSeparated[Sep <: Token, T <: Tree](sepFirst: Boolean, part: ⇒ T)(implicit arg0: TokenInfo[Sep], arg1: AstInfo[T]): collection.immutable.List[T]

    Permalink

    , or if sepFirst is true,

    part { `sep` part }

    , or if sepFirst is true,

    { `sep` part }

    . if useUnquoteForEllipsis = true, uses direct unquote instead of part

    { sep part } }}} if useUnquoteForEllipsis = true, uses direct unquote instead of part

    part { sep part } }}} if useUnquoteForEllipsis = true, uses direct unquote instead of part

  239. implicit def tokenToTokenPos(token: Token): TokenPos

    Permalink
  240. def topLevelTmplDef: Member with Stat

    Permalink

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

  241. def topStat: PartialFunction[Token, Stat]

    Permalink
  242. def topStatSeq(): collection.immutable.List[Stat]

    Permalink

    TopStatSeq ::= TopStat {semi TopStat}
    TopStat ::= Annotations Modifiers TmplDef
              | Packaging
              | package object objectDef
              | Import
              |
  243. def traitDef(mods: collection.immutable.List[Mod]): Trait

    Permalink

    TraitDef ::= Id [TypeParamClause] RequiresTypeOpt TraitTemplateOpt
  244. implicit def treeToTreePos(tree: Tree): TreePos

    Permalink
  245. def typ(): Type

    Permalink

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

  246. def typeBounds(): Bounds

    Permalink

    TypeBounds ::= [`>:' Type] [`<:' Type]
  247. def typeDefOrDcl(mods: collection.immutable.List[Mod]): Member.Type with Stat

    Permalink

    TypeDef ::= type Id [TypeParamClause] `=' Type
              | FunSig `=' Expr
    TypeDcl ::= type Id [TypeParamClause] TypeBounds
  248. def typeName(advance: Boolean = true): Type.Name

    Permalink
  249. def typeOrInfixType(location: Location): Type

    Permalink
  250. def typeParam(ownerIsType: Boolean, ctxBoundsAllowed: Boolean): Param

    Permalink
  251. def typeParamClauseOpt(ownerIsType: Boolean, ctxBoundsAllowed: Boolean): collection.immutable.List[Param]

    Permalink

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

    Permalink

    TypedOpt ::= [`:' Type]
  253. def unquote[T <: Tree](implicit arg0: AstInfo[T]): T

    Permalink
  254. def unquote[T <: Tree](advance: Boolean = true)(implicit arg0: AstInfo[T]): T

    Permalink
  255. def unquoteExpr(): Term

    Permalink
  256. def unquotePattern(): Pat

    Permalink
  257. def unquoteXmlExpr(): Term

    Permalink
  258. def unquoteXmlPattern(): Pat

    Permalink
  259. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  262. def xmlLiteralPattern(): Pat

    Permalink
  263. def xmlPat(): Xml

    Permalink
  264. object xmlSeqOK extends SeqContextSensitive

    Permalink

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

  265. def xmlSeqPatterns(): collection.immutable.List[Arg]

    Permalink
  266. def xmlTerm(): Xml

    Permalink
  267. def [B](y: B): (ScalametaParser, B)

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

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from ScalametaParser to any2stringadd[ScalametaParser]

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

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

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

Ungrouped