Scala Compiler2.12.2-20170504-135222-21d12e9 < Back
 

# Packages

-  package root

  The Scala compiler and reflection APIs.

  The Scala compiler and reflection APIs.

  Definition Classes
    root
-  package scala
  Definition Classes
    root
-  package tools
  Definition Classes
    scala
-  package nsc
  Definition Classes
    tools
-  package ast
  Definition Classes
    nsc
-  package parser
  Definition Classes
    ast
-  trait Parsers extends Scanners with MarkupParsers with ParsersCommon

  Performs the following context-free rewritings:

  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

  Definition Classes
    parser
-  abstract class Parser extends ParserCommon
  Definition Classes
    Parsers
- InfixMode
- ParserTreeBuilder
- PatternContextSensitive
- SeqContextSensitive
- noSeq
- outPattern
- seqOK
- xmlSeqOK

o

scala.tools.nsc.ast.parser.Parsers.Parser

# noSeq 

###

#### object noSeq extends SeqContextSensitive

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

Source
  Parsers.scala

Linear Supertypes
SeqContextSensitive, PatternContextSensitive, AnyRef, Any
 
Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. noSeq
2. SeqContextSensitive
3. PatternContextSensitive
4. AnyRef
5. Any

1. Hide All
2. Show All

Visibility

1. Public
2. All

### Value Members

1.  final def !=(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
2.  final def ##(): Int
   Definition Classes
     AnyRef → Any
3.  final def ==(arg0: Any): Boolean
   Definition Classes
     AnyRef → Any
4.  def annotType(): Global.Tree

       AnnotType        ::=  SimpleType {Annotation}

   Definition Classes
     PatternContextSensitive
5.  def argType(): Global.Tree

       ArgType       ::=  Type

   Definition Classes
     SeqContextSensitive → PatternContextSensitive
6.  final def asInstanceOf[T0]: T0
   Definition Classes
     Any
7.  def badPattern3(): Global.Tree
   Definition Classes
     SeqContextSensitive
8.  def clone(): AnyRef
   Attributes
     protected[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @throws( ... )
9.  def compoundType(): Global.Tree

       CompoundType ::= AnnotType {with AnnotType} [Refinement]
                     |  Refinement

   Definition Classes
     PatternContextSensitive
10.  def compoundTypeRest(t: Global.Tree): Global.Tree
    Definition Classes
      PatternContextSensitive
11.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
12.  def equals(arg0: Any): Boolean
    Definition Classes
      AnyRef → Any
13.  def finalize(): Unit
    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( classOf[java.lang.Throwable] )
14.  def functionArgType(): Global.Tree
    Definition Classes
      SeqContextSensitive → PatternContextSensitive
15.  def functionTypes(): List[Global.Tree]
    Definition Classes
      PatternContextSensitive
16.  final def getClass(): Class[_]
    Definition Classes
      AnyRef → Any
17.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
18.  def infixType(mode: InfixMode.Value): Global.Tree

        InfixType ::= CompoundType {id [nl] CompoundType}

    Definition Classes
      PatternContextSensitive
19.  def infixTypeRest(t: Global.Tree, mode: InfixMode.Value): Global.Tree
    Definition Classes
      PatternContextSensitive
20.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
21.  val isSequenceOK: Boolean
    Definition Classes
      noSeq → SeqContextSensitive
22.  def isXML: Boolean
    Definition Classes
      SeqContextSensitive
23.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
24.  final def notify(): Unit
    Definition Classes
      AnyRef
25.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
26.  def pattern(): Global.Tree

        Pattern  ::=  Pattern1 { `|' Pattern1 }
        SeqPattern ::= SeqPattern1 { `|' SeqPattern1 }

    Definition Classes
      SeqContextSensitive
27.  def pattern1(): Global.Tree

        Pattern1    ::= boundvarid `:' TypePat
                      |  `_' `:' TypePat
                      |  Pattern2
        SeqPattern1 ::= boundvarid `:' TypePat
                      |  `_' `:' TypePat
                      |  [SeqPattern2]

    Definition Classes
      SeqContextSensitive
28.  def pattern2(): Global.Tree

        Pattern2    ::=  id  @ Pattern3
                      |  `_' @ Pattern3
                      |   Pattern3

    Definition Classes
      SeqContextSensitive
29.  def pattern3(): Global.Tree

        Pattern3    ::= SimplePattern
                      |  SimplePattern {Id [nl] SimplePattern}

    Definition Classes
      SeqContextSensitive
30.  def patterns(): List[Global.Tree]

        Patterns ::= Pattern { `,' Pattern }
        SeqPatterns ::= SeqPattern { `,' SeqPattern }

    Definition Classes
      SeqContextSensitive
31.  def simplePattern(onError: () ⇒ Global.Tree): Global.Tree
    Definition Classes
      SeqContextSensitive
32.  def simplePattern(): Global.Tree

        SimplePattern    ::= varid
                          |  `_'
                          |  literal
                          |  XmlPattern
                          |  StableId  /[TypeArgs]/ [`(' [Patterns] `)']
                          |  StableId  [`(' [Patterns] `)']
                          |  StableId  [`(' [Patterns] `,' [varid `@'] `_' `*' `)']
                          |  `(' [Patterns] `)'

    XXX: Hook for IDE

    Definition Classes
      SeqContextSensitive
33.  def simpleType(): Global.Tree

        SimpleType       ::=  SimpleType TypeArgs
                           |  SimpleType `#' Id
                           |  StableId
                           |  Path `.' type
                           |  `(' Types `)'
                           |  WildcardType

    Definition Classes
      PatternContextSensitive
34.  def simpleTypeRest(t: Global.Tree): Global.Tree
    Definition Classes
      PatternContextSensitive
35.  final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
      AnyRef
36.  def toString(): String
    Definition Classes
      AnyRef → Any
37.  def typ(): Global.Tree

        Type ::= InfixType `=>' Type
               | `(' [`=>' Type] `)' `=>' Type
               | InfixType [ExistentialClause]
        ExistentialClause ::= forSome `{' ExistentialDcl {semi ExistentialDcl}} `}'
        ExistentialDcl    ::= type TypeDcl | val ValDcl

    Definition Classes
      PatternContextSensitive
38.  def typeArgs(): List[Global.Tree]

        TypeArgs    ::= `[' ArgType {`,' ArgType} `]'

    Definition Classes
      PatternContextSensitive
39.  def types(): List[Global.Tree]

        Types ::= Type {`,' Type}

    Definition Classes
      PatternContextSensitive
40.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
41.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
42.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )

### Inherited from SeqContextSensitive

### Inherited from PatternContextSensitive

### Inherited from AnyRef

### Inherited from Any

### Ungrouped