abstract class LabelDefExtractor extends AnyRef
An extractor class to create and pattern match with syntax LabelDef(name, params, rhs).
This AST node does not have direct correspondence to Scala code. It is used for tailcalls and like. For example, while/do are desugared to label defs as follows:
while (cond) body ==> LabelDef($L, List(), if (cond) { body; L$() } else ())
do body while (cond) ==> LabelDef($L, List(), body; if (cond) L$() else ())
- Source
- Trees.scala
- Alphabetic
- By Inheritance
- LabelDefExtractor
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Instance Constructors
- new LabelDefExtractor()
Abstract Value Members
- abstract def apply(name: Universe.TermName, params: List[Universe.Ident], rhs: Universe.Tree): Universe.LabelDef
- abstract def unapply(labelDef: Universe.LabelDef): Option[(Universe.TermName, List[Universe.Ident], Universe.Tree)]
Concrete Value Members
-
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 Universe.LabelDefExtractor to any2stringadd[Universe.LabelDefExtractor] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (Universe.LabelDefExtractor, B)
- Implicit
- This member is added by an implicit conversion from Universe.LabelDefExtractor to ArrowAssoc[Universe.LabelDefExtractor] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
ensuring(cond: (Universe.LabelDefExtractor) ⇒ Boolean, msg: ⇒ Any): Universe.LabelDefExtractor
- Implicit
- This member is added by an implicit conversion from Universe.LabelDefExtractor to Ensuring[Universe.LabelDefExtractor] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (Universe.LabelDefExtractor) ⇒ Boolean): Universe.LabelDefExtractor
- Implicit
- This member is added by an implicit conversion from Universe.LabelDefExtractor to Ensuring[Universe.LabelDefExtractor] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): Universe.LabelDefExtractor
- Implicit
- This member is added by an implicit conversion from Universe.LabelDefExtractor to Ensuring[Universe.LabelDefExtractor] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): Universe.LabelDefExtractor
- Implicit
- This member is added by an implicit conversion from Universe.LabelDefExtractor to Ensuring[Universe.LabelDefExtractor] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from Universe.LabelDefExtractor to StringFormat[Universe.LabelDefExtractor] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
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
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
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
- @native() @throws( ... )
-
def
→[B](y: B): (Universe.LabelDefExtractor, B)
- Implicit
- This member is added by an implicit conversion from Universe.LabelDefExtractor to ArrowAssoc[Universe.LabelDefExtractor] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
Deprecated Value Members
-
def
apply(sym: Universe.Symbol, params: List[Universe.Symbol], rhs: Universe.Tree)(implicit token: Universe.CompatToken): Universe.LabelDef
- Annotations
- @deprecated
- Deprecated
(Since version 2.11.0) use
internal.labelDefinstead- See also
InternalApi.labelDef