trait Parsers extends Scanners with MarkupParsers with ParsersCommon
Performs the following context-free rewritings:
-
Places all pattern variables in Bind nodes. In a pattern, for
identifiers x:
x => x @ _
x:T => x @ (_ : T)
- Removes pattern definitions (PatDef's) as follows:
If pattern is a simple (typed) identifier:
val x = e ==> val x = e val x: T = e ==> val x: T = e
if there are no variables in pattern
val p = e ==> e match (case p => ())
if there is exactly one variable in pattern
val x_1 = e match (case p => (x_1))
if there is more than one variable in pattern
val p = e ==> private synthetic val t$ = e match (case p => (x_1, ..., x_N))
val x_1 = t$._1
...
val x_N = t$._N
- Removes function types as follows:
(argtpes) => restpe ==> scala.Function_n[argtpes, restpe]
- Wraps naked case definitions in a match as follows:
{ cases } ==> (x => x.match {cases}), except when already argument to match
- Self Type
- Parsers
- Source
- Parsers.scala
- Alphabetic
- By Inheritance
- Parsers
- ParsersCommon
- MarkupParsers
- Scanners
- ScannersCommon
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Type Members
-
class
MarkupParser extends MarkupParserCommon
- Definition Classes
- MarkupParsers
- type Location = Int
-
type
Offset = Int
Offset into source character array
Offset into source character array
- Definition Classes
- ScannersCommon
- case class OpInfo(lhs: Global.Tree, operator: Global.TermName, targs: List[Global.Tree], offset: Parsers.Offset) extends Product with Serializable
- class OutlineParser extends SourceFileParser
- abstract class Parser extends ParserCommon
- class SourceFileParser extends Parser
-
type
Token = Int
- Definition Classes
- ScannersCommon
- class UnitParser extends SourceFileParser
-
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
Abstract Value Members
-
abstract
val
global: Global
- Definition Classes
- Parsers → ParsersCommon → Scanners → ScannersCommon
Concrete Value Members
-
object
ConfusedAboutBracesControl extends Throwable with ControlThrowable with Product with Serializable
- Definition Classes
- MarkupParsers
-
object
MissingEndTagControl extends Throwable with ControlThrowable with Product with Serializable
- Definition Classes
- MarkupParsers
-
object
TruncatedXMLControl extends Throwable with ControlThrowable with Product with Serializable
- Definition Classes
- MarkupParsers
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
- def +(other: String): String
- def ->[B](y: B): (Parsers, B)
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final val InBlock: Location
- final val InTemplate: Location
- final val Local: Location
- lazy val ScalaValueClassNames: collection.Seq[Global.TypeName]
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
createKeywordArray(keywords: Seq[(Global.Name, Token)], defaultToken: Token): (Token, Array[Token])
- Definition Classes
- ScannersCommon
- def ensuring(cond: (Parsers) ⇒ Boolean, msg: ⇒ Any): Parsers
- def ensuring(cond: (Parsers) ⇒ Boolean): Parsers
- def ensuring(cond: Boolean, msg: ⇒ Any): Parsers
- def ensuring(cond: Boolean): Parsers
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
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
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
val
softModifierNames: Set[Global.TermName]
- Definition Classes
- Scanners
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
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( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
- def →[B](y: B): (Parsers, B)
Deprecated Value Members
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from Parsers to StringFormat[Parsers] 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,formattedresolves to the new method in String which has reversed parameters.
The Scala compiler and reflection APIs.