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 annotTypeRest(t: Type): Type

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

    Permalink

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

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

    Permalink

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

    Permalink
  41. def argumentPattern(): Arg

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

    Permalink
  43. final def asInstanceOf[T0]: T0

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

    Permalink
  45. def auto: AutoPos.type

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

    Permalink
  47. def batchSource(): Source

    Permalink
  48. def block(): Term

    Permalink

    Block ::= BlockStatSeq
    Note

    Return tree does not carry position.

  49. def blockExpr(): Term

    Permalink

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

    Permalink

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

    Permalink
  52. def caseClause(): Case

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

    Permalink

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

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

    Permalink

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

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

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

    Permalink
  59. def constrBlock(): Block

    Permalink

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

    Permalink

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

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

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

    Permalink

    Convert tree to formal parameter.

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

    Permalink

    Convert tree to formal parameter list.

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

    Permalink
  66. implicit val currentDialect: Dialect

    Permalink
  67. 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
  68. final def dropAnyBraces[T](body: ⇒ T): T

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

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

    Permalink
  71. 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
  72. 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
  73. 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
  74. 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
  75. def enumerator(isFirst: Boolean, allowNestedIf: Boolean = true): collection.immutable.List[Enumerator]

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

    Permalink

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

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

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

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

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

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

    Permalink
  84. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  85. 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()
  86. 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
  87. def funDefRest(mods: collection.immutable.List[Mod]): Stat

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

    Permalink

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

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

    Permalink

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

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

    Permalink

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

    Permalink

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

    Permalink
  95. def importee(): Importee

    Permalink

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

    Permalink

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

    Permalink

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

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

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

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

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

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

    Permalink
    Annotations
    @inline()
  104. 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()
  105. final def inParensOrError[T](body: ⇒ T, alt: T): T

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

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

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

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

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

    Permalink
  111. def interpolatePat(): Interpolate

    Permalink
  112. def interpolateTerm(): Interpolate

    Permalink
  113. def isBackquoted: Boolean

    Permalink
  114. def isColonWildcardStar: Boolean

    Permalink
  115. def isIdent: Boolean

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

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

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

    Permalink
  119. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  120. def isRawBar: Boolean

    Permalink
  121. def isRawStar: Boolean

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

    Permalink
  123. def isUnaryOp: Boolean

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

    Permalink

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

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

    Permalink

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

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

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

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

    Permalink
  131. def mixinQualifier(): Qualifier

    Permalink

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

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

    Permalink

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

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

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

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

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

    Permalink
  139. def newLinesOpt(): Unit

    Permalink
  140. def next(): Token

    Permalink
  141. def nextOnce(): Token

    Permalink
  142. def nextThrice(): Token

    Permalink
  143. def nextTwice(): Token

    Permalink
  144. object noSeq extends SeqContextSensitive

    Permalink

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

  145. def nonLocalDefOrDcl(): Stat

    Permalink
  146. final def notify(): Unit

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

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

    Permalink

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

    Permalink
  150. object outPattern extends PatternContextSensitive

    Permalink

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

  151. def packageDef(): Pkg

    Permalink
  152. def packageObjectDef(): Object

    Permalink
  153. def packageOrPackageObjectDef(): Stat

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

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

    Permalink

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

    Permalink
  158. def parseCtorCall(): Call

    Permalink
  159. def parseEnumerator(): Enumerator

    Permalink
  160. def parseImportee(): Importee

    Permalink
  161. def parseImporter(): Importer

    Permalink
  162. def parseMod(): Mod

    Permalink
  163. def parsePat(): Pat

    Permalink
  164. def parsePatArg(): Arg

    Permalink
  165. def parsePatType(): Pat.Type

    Permalink
  166. def parseQuasiquoteCtor(): Ctor

    Permalink
  167. def parseQuasiquoteMod(): Mod

    Permalink
  168. def parseQuasiquotePat(): Pat

    Permalink
  169. def parseQuasiquotePatArg(): Arg

    Permalink
  170. def parseQuasiquotePatType(): Pat.Type

    Permalink
  171. def parseQuasiquoteStat(): Stat

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

    Permalink
  173. def parseSource(): Source

    Permalink
  174. def parseStat(): Stat

    Permalink
  175. def parseTemplate(): Template

    Permalink
  176. def parseTerm(): Term

    Permalink
  177. def parseTermArg(): Arg

    Permalink
  178. def parseTermParam(): Param

    Permalink
  179. def parseType(): Type

    Permalink
  180. def parseTypeArg(): Arg

    Permalink
  181. def parseTypeParam(): Param

    Permalink
  182. def parseUnquotePat(): Pat

    Permalink
  183. def parseUnquoteTerm(): Term

    Permalink
  184. lazy val parserTokenPositions: Array[Int]

    Permalink
  185. lazy val parserTokens: Tokens

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

    Permalink

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

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

    Permalink

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

    Permalink

    Default entry points into some pattern contexts.

  190. def patternTyp(): Pat.Type

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

    Permalink
  192. 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()
  193. def postfixExpr(): Term

    Permalink

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

    Permalink

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

    Permalink
  196. def qualId(): Term.Ref

    Permalink

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

    Permalink
  198. def quasiquotePattern(): Arg

    Permalink
  199. def quasiquotePatternArg(): Arg

    Permalink
  200. def quasiquotePatternTyp(): Pat.Type

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

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

    Permalink

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

    Permalink

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

    Permalink
  205. lazy val scannerTokens: Tokens

    Permalink
  206. def scriptSource(): Source

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

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

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

    Permalink
  210. def selfInvocation(): Term

    Permalink

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

    Permalink

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

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

    Permalink
  213. def simpleExpr(): Term

    Permalink

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

    Permalink
  215. def source(): Source

    Permalink

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

    Permalink

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

    Permalink
  218. def startModType(): Type

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

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

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

    Permalink
  222. def template(): Template

    Permalink

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

    Permalink

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

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

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

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

    Permalink

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

    Permalink

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

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

    Permalink

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

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

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

    Permalink

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

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

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

    Permalink

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

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

    Permalink
  235. 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

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

    Permalink
  237. def topLevelTmplDef: Member with Stat

    Permalink

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

  238. def topStat: PartialFunction[Token, Stat]

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

    Permalink

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

    Permalink

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

    Permalink
  242. def typ(): Type

    Permalink

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

  243. def typeBounds(): Bounds

    Permalink

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

    Permalink

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

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

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

    Permalink
  248. 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}
  249. def typedOpt(): Option[Type]

    Permalink

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

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

    Permalink
  252. def unquoteExpr(): Term

    Permalink
  253. def unquotePattern(): Pat

    Permalink
  254. def unquoteXmlExpr(): Term

    Permalink
  255. def unquoteXmlPattern(): Pat

    Permalink
  256. final def wait(): Unit

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

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

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

    Permalink
  260. def xmlPat(): Xml

    Permalink
  261. object xmlSeqOK extends SeqContextSensitive

    Permalink

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

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

    Permalink
  263. def xmlTerm(): Xml

    Permalink
  264. 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