Трейт scala.reflect.api.Trees.MatchApi
trait MatchApi extends Universe.TermTreeApi
Абстрактные члены-значения
abstract def canEqual(that: Any): Boolean
- Definition Classes
- Equals
abstract def canHaveAttrs: Boolean
Может ли это дерево содержать атрибуты (т.е. символы, типы или позиции)? Обычно ответ положительный, за исключением объекта EmptyTree null и двух специальных одиночных объектов: noSelfType и pendingSuperCall.
- Definition Classes
- TreeApi
abstract def cases: List[Universe.CaseDef]
abstract def children: List[Universe.Tree]
Непосредственные дочерние деревья этого дерева. EmptyTrees всегда опускаются. Списки сглаживаются.
- Definition Classes
- TreeApi
abstract def collect[T](pf: PartialFunction[Universe.Tree, T]): List[T]
Применяет pf к каждому поддереву, на котором функция определена, и собирает результаты.
- Definition Classes
- TreeApi
abstract def duplicate: MatchApi.this.type
Создает копию этого дерева, сохраняя все атрибуты, за исключением того, что все позиции сфокусированы (так что ничего в этом дереве не будет найдено при поиске по позиции).
- Definition Classes
- TreeApi
abstract def equalsStructure(that: Universe.Tree): Boolean
Проверяет, равны ли два дерева по структуре. Обратите внимание, что == для деревьев — это равенство по ссылке.
- Definition Classes
- TreeApi
abstract def exists(p: (Universe.Tree) => Boolean): Boolean
Существует ли часть этого дерева, которая удовлетворяет предикату p?
- Definition Classes
- TreeApi
abstract def filter(f: (Universe.Tree) => Boolean): List[Universe.Tree]
Находит все поддеревья, соответствующие предикату p. То же, что и withFilter.
- Definition Classes
- TreeApi
abstract def find(p: (Universe.Tree) => Boolean): Option[Universe.Tree]
Возвращает необязательно первое дерево (в предварительном обходе), которое удовлетворяет предикату p, или None, если такового нет.
- Definition Classes
- TreeApi
abstract def forAll(p: (Universe.Tree) => Boolean): Boolean
Все ли части этого дерева удовлетворяют предикату p?
- Definition Classes
- TreeApi
abstract def foreach(f: (Universe.Tree) => Unit): Unit
Применяет f к каждому поддереву
- Definition Classes
- TreeApi
abstract def isDef: Boolean
Представляет ли это дерево определение? (метода, класса и т.д.)
- Definition Classes
- TreeApi
abstract def isEmpty: Boolean
Является ли это дерево одним из пустых деревьев?
Пустые деревья: объект EmptyTree null и экземпляры TypeTree, которые не содержат тип.
- Definition Classes
- TreeApi
- См. также
canHaveAttrs
abstract def isTerm: Boolean
Канонический способ проверки, представляет ли дерево термин.
- Классы определения
- TreeApi
abstract def isType: Boolean
Канонический способ проверки, представляет ли дерево тип.
- Классы определения
- TreeApi
abstract def nonEmpty: Boolean
Является ли это дерево непустым?
- Классы определения
- TreeApi
- См. также
isEmpty
abstract def orElse(alt: => Universe.Tree): Universe.Tree
Предоставляет альтернативный вариант, если дерево пустое
- alt
Альтернативное дерево
- возвращает
Если это дерево непустое, то это дерево, в противном случае
alt.
- Классы определения
- TreeApi
abstract def pos: Universe.Position
Позиция дерева.
- Классы определения
- TreeApi
abstract def productArity: Int
- Классы определения
- Product
abstract def productElement(n: Int): Any
- Классы определения
- Product
abstract def selector: Universe.Tree
abstract def symbol: Universe.Symbol
Символ дерева.
Для большинства деревьев символ является null. В SymTrees он переопределяется и реализуется с переменной, инициализированной NoSymbol.
Деревья, которые не являются SymTrees, но которые несут символы, делают это, переопределяя def symbol для перенаправления в другое место. Примеры:
Super(qual, _) имеет символ qual,
Apply(fun, args) имеет символ fun,
TypeApply(fun, args) имеет символ fun,
AppliedTypeTree(tpt, args) имеет символ tpt,
TypeTree(tpe) имеет символ tpe's typeSymbol, если tpe != null.- Классы определения
- TreeApi
abstract def tpe: Universe.Type
Тип дерева.
При создании большинство деревьев имеют свой tpe установлен на null. Типы обычно назначаются деревьям во время проверки типов. Некоторые методы создания узлов устанавливают tpe сразу после создания.
Когда проверочный модуль встречает дерево с ненулевым значением tpe, он предполагает его корректность и не проверяет его повторно. Это означает, что необходимо быть внимательным, чтобы не стирать поле tpe дочерних деревьев.
- Классы определения
- TreeApi
abstract def withFilter(f: (Universe.Tree) => Boolean): List[Universe.Tree]
Найти все поддеревья, соответствующие предикату p. То же самое, что и filter.
- Классы определения
- TreeApi
Члены-значения конкретного типа
final def !=(arg0: Any): Boolean
- Определяющие классы
- AnyRef → Any
final def ##(): Int
- Определяющие классы
- AnyRef → Any
def +(other: String): String
- Неявный
- Этот член добавлен неявным преобразованием из Universe.MatchApi вany2stringadd[Universe.MatchApi] с помощью метода any2stringadd в scala.Predef.
- Определяющие классы
- any2stringadd
def ->[B](y: B): (Universe.MatchApi, B)
- Неявный
- Этот член добавлен неявным преобразованием из Universe.MatchApi вArrowAssoc[Universe.MatchApi] с помощью метода ArrowAssoc в scala.Predef.
- Определяющие классы
- ArrowAssoc
- Аннотации
- @inline()
final def ==(arg0: Any): Boolean
- Определяющие классы
- AnyRef → Any
final def asInstanceOf[T0]: T0
- Определяющие классы
- Any
def clone(): AnyRef
- Атрибуты
- protected[java.lang]
- Определяющие классы
- AnyRef
- Аннотации
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
def ensuring(cond: (Universe.MatchApi) => Boolean, msg: => Any): Universe.MatchApi
- Неявный
- Этот член добавлен неявным преобразованием из Universe.MatchApi вEnsuring[Universe.MatchApi] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: (Universe.MatchApi) => Boolean): Universe.MatchApi
- Неявный
- Этот член добавлен неявным преобразованием из Universe.MatchApi вEnsuring[Universe.MatchApi] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean, msg: => Any): Universe.MatchApi
- Неявный
- Этот член добавлен неявным преобразованием из Universe.MatchApi вEnsuring[Universe.MatchApi] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean): Universe.MatchApi
- Неявный
- Этот член добавлен неявным преобразованием из Universe.MatchApi вEnsuring[Universe.MatchApi] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
final def eq(arg0: AnyRef): Boolean
- Определяющие классы
- AnyRef
def equals(arg0: AnyRef): Boolean
- Определяющие классы
- AnyRef → Any
def finalize(): Unit
- Атрибуты
- protected[java.lang]
- Определяющие классы
- AnyRef
- Аннотации
- @throws(classOf[java.lang.Throwable])
def formatted(fmtstr: String): String
- Неявный
- Этот член добавлен с помощью неявного преобразования из Universe.MatchApi в StringFormat[Universe.MatchApi] с помощью метода StringFormat в scala.Predef.
- Определяющие классы
- StringFormat
- Аннотации
- @inline()
final def getClass(): Class[_ <: AnyRef]
- Определяющие классы
- AnyRef → Any
- Аннотации
- @native()
def hashCode(): Int
- Определяющие классы
- AnyRef → Any
- Аннотации
- @native()
final def isInstanceOf[T0]: Boolean
- Определяющие классы
- Any
final def ne(arg0: AnyRef): Boolean
- Определяющие классы
- AnyRef
final def notify(): Unit
- Определяющие классы
- AnyRef
- Аннотации
- @native()
final def notifyAll(): Unit
- Определяющие классы
- AnyRef
- Аннотации
- @native()
def productElementName(n: Int): String
- Определяющие классы
- Product
def productElementNames: Iterator[String]
- Определяющие классы
- Product
def productIterator: Iterator[Any]
- Определяющие классы
- Product
def productPrefix: String
- Определяющие классы
- Product
final def synchronized[T0](arg0: => T0): T0
- Определяющие классы
- AnyRef
def toString(): String
Получает строковое представление дерева
- Определяющие классы
- TreeApi → AnyRef → Any
final def wait(): Unit
- Определяющие классы
- AnyRef
- Аннотации
- @throws(classOf[java.lang.InterruptedException])
final def wait(arg0: Long, arg1: Int): Unit
- Определяющие классы
- AnyRef
- Аннотации
- @throws(classOf[java.lang.InterruptedException])
final def wait(arg0: Long): Unit
- Определяющие классы
- AnyRef
- Аннотации
- @throws(classOf[java.lang.InterruptedException]) @native()
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala-reflect/scala/reflect/api/Trees$MatchApi.html
API, поддерживаемый всеми совпадениями