abstract class SyntaxAnalyzer extends SubComponent with Parsers with MarkupParsers with Scanners with JavaParsers with JavaScanners
The compiler sub-component that defines the parser phase, which converts source code into Trees.
- Source
- SyntaxAnalyzer.scala
- Alphabetic
- By Inheritance
- SyntaxAnalyzer
- JavaParsers
- JavaScanners
- Parsers
- ParsersCommon
- MarkupParsers
- Scanners
- ScannersCommon
- SubComponent
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new SyntaxAnalyzer()
Type Members
- abstract class StdPhase extends GlobalPhase
A standard phase template
A standard phase template
- Definition Classes
- SubComponent
- class MarkupParser extends MarkupParserCommon
- Definition Classes
- MarkupParsers
- case class OpInfo(lhs: Global.Tree, operator: Global.TermName, targs: List[Global.Tree], offset: Parsers.Offset) extends Product with Serializable
- Definition Classes
- Parsers
- class OutlineParser extends SourceFileParser
- Definition Classes
- Parsers
- abstract class Parser extends ParserCommon
- Definition Classes
- Parsers
- class SourceFileParser extends Parser
- Definition Classes
- Parsers
- class UnitParser extends SourceFileParser
- Definition Classes
- Parsers
- abstract class ParserCommon extends AnyRef
This is now an abstract class, only to work around the optimizer: methods in traits are never inlined.
This is now an abstract class, only to work around the optimizer: methods in traits are never inlined.
- Definition Classes
- ParsersCommon
- class MalformedInput extends Exception
- Definition Classes
- Scanners
- class ParensAnalyzer extends UnitScanner
- Definition Classes
- Scanners
- abstract class Scanner extends CharArrayReader with TokenData with ScannerData with ScannerCommon with DocScanner
- Definition Classes
- Scanners
- trait ScannerData extends TokenData with CharArrayReaderData
An interface to most of mutable data in Scanner defined in TokenData and CharArrayReader (+ next, prev fields) with copyFrom functionality to backup/restore data (used by quasiquotes' lookingAhead).
An interface to most of mutable data in Scanner defined in TokenData and CharArrayReader (+ next, prev fields) with copyFrom functionality to backup/restore data (used by quasiquotes' lookingAhead).
- Definition Classes
- Scanners
- class SourceFileScanner extends Scanner
A scanner for a given source file not necessarily attached to a compilation unit.
A scanner for a given source file not necessarily attached to a compilation unit. Useful for looking inside source files that are not currently compiled to see what's there
- Definition Classes
- Scanners
- trait TokenData extends CommonTokenData
- Definition Classes
- Scanners
- class UnitScanner extends SourceFileScanner
A scanner over a given compilation unit
A scanner over a given compilation unit
- Definition Classes
- Scanners
- trait CommonTokenData extends AnyRef
- Definition Classes
- ScannersCommon
- trait DocScanner extends AnyRef
- Definition Classes
- ScannersCommon
- trait ScannerCommon extends CommonTokenData
- Definition Classes
- ScannersCommon
- type Location = Int
- Definition Classes
- Parsers
- abstract class MemberDefTraverser extends Global.Traverser
- class MemberPosReporter extends MemberDefTraverser
- type Offset = Int
Offset into source character array
Offset into source character array
- Definition Classes
- ScannersCommon
- type ParamOwner = Int
- Definition Classes
- Parsers
- class ParserPhase extends StdPhase
- type Token = Int
- Definition Classes
- ScannersCommon
- case class JavaOpInfo(operand: Global.Tree, operator: Global.Name, pos: Int) extends Product with Serializable
- Definition Classes
- JavaParsers
- abstract class JavaParser extends ParserCommon
- Definition Classes
- JavaParsers
- class JavaUnitParser extends JavaParser
- Definition Classes
- JavaParsers
- abstract class AbstractJavaScanner extends AbstractJavaTokenData
...
...
- Definition Classes
- JavaScanners
- abstract class AbstractJavaTokenData extends AnyRef
- Definition Classes
- JavaScanners
- abstract class JavaScanner extends AbstractJavaScanner with JavaTokenData with Cloneable with ScannerCommon with DocScanner
A scanner for Java.
A scanner for Java.
- Definition Classes
- JavaScanners
- trait JavaTokenData extends AbstractJavaTokenData
A class for representing a token's data.
A class for representing a token's data.
- Definition Classes
- JavaScanners
- class JavaUnitScanner extends JavaScanner
- Definition Classes
- JavaScanners
Abstract Value Members
- abstract val global: Global
- Definition Classes
- JavaParsers → JavaScanners → ParsersCommon → ScannersCommon
- abstract val runsAfter: List[String]
Names of phases that must run before this phase.
Names of phases that must run before this phase.
- Definition Classes
- SubComponent
- abstract val runsRightAfter: Option[String]
Name of the phase that this phase must follow immediately.
Name of the phase that this phase must follow immediately.
- Definition Classes
- SubComponent
Concrete Value Members
- case object ConfusedAboutBracesControl extends ControlThrowable with Product with Serializable
- Definition Classes
- MarkupParsers
- case object MissingEndTagControl extends ControlThrowable with Product with Serializable
- Definition Classes
- MarkupParsers
- case object TruncatedXMLControl extends ControlThrowable with Product with Serializable
- Definition Classes
- MarkupParsers
- object ParamOwner
- Definition Classes
- Parsers
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- Implicit
- This member is added by an implicit conversion from SyntaxAnalyzer toany2stringadd[SyntaxAnalyzer] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
- def ->[B](y: B): (SyntaxAnalyzer, B)
- Implicit
- This member is added by an implicit conversion from SyntaxAnalyzer toArrowAssoc[SyntaxAnalyzer] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final val InBlock: Location
- Definition Classes
- Parsers
- final val InTemplate: Location
- Definition Classes
- Parsers
- final val Local: Location
- Definition Classes
- Parsers
- lazy val ScalaValueClassNames: collection.immutable.Seq[Global.TypeName]
- Definition Classes
- Parsers
- final def afterOwnPhase[T](op: => T): T
- Definition Classes
- SubComponent
- Annotations
- @inline()
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def beforeOwnPhase[T](op: => T): T
- Definition Classes
- SubComponent
- Annotations
- @inline()
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def createKeywordArray(keywords: Seq[(Global.Name, Token)], defaultToken: Token): (Token, Array[Token])
- Definition Classes
- ScannersCommon
- def enabled: Boolean
Is this component enabled? Default is true.
Is this component enabled? Default is true.
- Definition Classes
- SubComponent
- def ensuring(cond: (SyntaxAnalyzer) => Boolean, msg: => Any): SyntaxAnalyzer
- Implicit
- This member is added by an implicit conversion from SyntaxAnalyzer toEnsuring[SyntaxAnalyzer] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: (SyntaxAnalyzer) => Boolean): SyntaxAnalyzer
- Implicit
- This member is added by an implicit conversion from SyntaxAnalyzer toEnsuring[SyntaxAnalyzer] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean, msg: => Any): SyntaxAnalyzer
- Implicit
- This member is added by an implicit conversion from SyntaxAnalyzer toEnsuring[SyntaxAnalyzer] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- def ensuring(cond: Boolean): SyntaxAnalyzer
- Implicit
- This member is added by an implicit conversion from SyntaxAnalyzer toEnsuring[SyntaxAnalyzer] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(other: Any): Boolean
- Definition Classes
- SubComponent → AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
SubComponents are added to a HashSet and two phases are the same if they have the same name.
SubComponents are added to a HashSet and two phases are the same if they have the same name.
- Definition Classes
- SubComponent → AnyRef → Any
- val initial: Boolean
True if this phase runs before all other phases.
True if this phase runs before all other phases. Usually,
parser
.- Definition Classes
- SubComponent
- val internal: Boolean
True if this phase is not provided by a plug-in.
True if this phase is not provided by a plug-in.
- Definition Classes
- SubComponent
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def literalUnit: Global.Literal
- Definition Classes
- ParsersCommon
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def newLiteral(const: Any): Global.Literal
- Definition Classes
- ParsersCommon
- def newPhase(prev: Phase): StdPhase
The phase factory
The phase factory
- Definition Classes
- SyntaxAnalyzer → SubComponent
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def ownPhase: Phase
The phase corresponding to this subcomponent in the current compiler run.
The phase corresponding to this subcomponent in the current compiler run.
- Definition Classes
- SubComponent
- val phaseName: String
The name of the phase
The name of the phase
- Definition Classes
- SyntaxAnalyzer → SubComponent
- def phaseNewFlags: Long
New flags defined by the phase which are not valid before
New flags defined by the phase which are not valid before
- Definition Classes
- SubComponent
- def phaseNextFlags: Long
New flags defined by the phase which are not valid until immediately after it
New flags defined by the phase which are not valid until immediately after it
- Definition Classes
- SubComponent
- val requires: List[String]
Names of phases required by this component.
Names of phases required by this component. Default is
Nil
.- Definition Classes
- SubComponent
- val runsBefore: List[String]
Names of phases that must run after this phase.
Names of phases that must run after this phase. Default is
Nil
.- Definition Classes
- SubComponent
- final val scala3Keywords: Set[Global.TermName]
- Definition Classes
- Scanners
- final val softModifierNames: Set[Global.TermName]
- Definition Classes
- Scanners
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val terminal: Boolean
True if this phase runs after all other phases.
True if this phase runs after all other phases. Usually,
terminal
.- Definition Classes
- SubComponent
- def toString(): String
- Definition Classes
- AnyRef → Any
- final val token2name: Map[Int, Global.Name]
- Definition Classes
- Scanners
- def token2string(token: Token): String
Returns the string representation of given token.
Returns the string representation of given token.
- Definition Classes
- Scanners
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- object JavaScannerConfiguration
- Definition Classes
- JavaScanners
Deprecated Value Members
- def formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from SyntaxAnalyzer toStringFormat[SyntaxAnalyzer] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @deprecated @inline()
- Deprecated
(Since version 2.12.16) Use
formatString.format(value)
instead ofvalue.formatted(formatString)
, or use thef""
string interpolator. In Java 15 and later,formatted
resolves to the new method in String which has reversed parameters.
- def →[B](y: B): (SyntaxAnalyzer, B)
- Implicit
- This member is added by an implicit conversion from SyntaxAnalyzer toArrowAssoc[SyntaxAnalyzer] 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.
The Scala compiler and reflection APIs.