Class scala.reflect.api.Trees.TemplateExtractor

abstract class TemplateExtractor extends AnyRef

An extractor class to create and pattern match with syntax Template(parents, self, body). This AST node corresponds to the following Scala code:

extends parents { self => body }

In case when the self-type annotation is missing, it is represented as an empty value definition with nme.WILDCARD as name and NoType as type.

The symbol of a template is a local dummy. @see Symbol.newLocalDummy The owner of the local dummy is the enclosing trait or class. The local dummy is itself the owner of any local blocks. For example:

class C { def foo { // owner is C def bar // owner is local dummy } }

Source
Trees.scala
Linear Supertypes

Instance Constructors

new TemplateExtractor()

Abstract Value Members

abstract def apply(parents: List[Universe.Tree], self: Universe.ValDef, body: List[Universe.Tree]): Universe.Template

abstract def unapply(template: Universe.Template): Option[(List[Universe.Tree], Universe.ValDef, List[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.TemplateExtractor to any2stringadd[Universe.TemplateExtractor] performed by method any2stringadd in scala.Predef.
Definition Classes
any2stringadd

def ->[B](y: B): (Universe.TemplateExtractor, B)

Implicit
This member is added by an implicit conversion from Universe.TemplateExtractor to ArrowAssoc[Universe.TemplateExtractor] 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[lang]
Definition Classes
AnyRef
Annotations
@throws( ... ) @native()

def ensuring(cond: (Universe.TemplateExtractor) ⇒ Boolean, msg: ⇒ Any): Universe.TemplateExtractor

Implicit
This member is added by an implicit conversion from Universe.TemplateExtractor to Ensuring[Universe.TemplateExtractor] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: (Universe.TemplateExtractor) ⇒ Boolean): Universe.TemplateExtractor

Implicit
This member is added by an implicit conversion from Universe.TemplateExtractor to Ensuring[Universe.TemplateExtractor] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: Boolean, msg: ⇒ Any): Universe.TemplateExtractor

Implicit
This member is added by an implicit conversion from Universe.TemplateExtractor to Ensuring[Universe.TemplateExtractor] performed by method Ensuring in scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: Boolean): Universe.TemplateExtractor

Implicit
This member is added by an implicit conversion from Universe.TemplateExtractor to Ensuring[Universe.TemplateExtractor] 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[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.TemplateExtractor to StringFormat[Universe.TemplateExtractor] 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
@throws( ... ) @native()

def [B](y: B): (Universe.TemplateExtractor, B)

Implicit
This member is added by an implicit conversion from Universe.TemplateExtractor to ArrowAssoc[Universe.TemplateExtractor] performed by method ArrowAssoc in scala.Predef.
Definition Classes
ArrowAssoc

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.12.9/scala-reflect/scala/reflect/api/Trees$TemplateExtractor.html