Трейт scala.reflect.api.Trees.SelectApi
trait SelectApi extends Universe.RefTreeApi
Члены-значения абстрактного типа
abstract def canEqual(that: Any): Boolean
- Определяющие классы
- Equals
abstract def canHaveAttrs: Boolean
Может ли это дерево содержать атрибуты (т.е. символы, типы или позиции)? Обычно ответ — да, за исключением объекта EmptyTree null и двух специальных синглтонов: noSelfType и pendingSuperCall.
- Определяющие классы
- TreeApi
abstract def children: List[Universe.Tree]
Прямые дочерние деревья этого дерева. EmptyTrees всегда опускаются. Списки сглаживаются.
- Определяющие классы
- TreeApi
abstract def collect[T](pf: PartialFunction[Universe.Tree, T]): List[T]
Применяет pf к каждому поддереву, для которого функция определена, и собирает результаты.
- Определяющие классы
- TreeApi
abstract def duplicate: SelectApi.this.type
Создаёт копию этого дерева, сохраняя все атрибуты, за исключением того, что все позиции сфокусированы (ничего в этом дереве не будет найдено при поиске по позиции).
- Определяющие классы
- TreeApi
abstract def equalsStructure(that: Universe.Tree): Boolean
Проверяет, равны ли два дерева по структуре. Обратите внимание, что == для деревьев — это равенство ссылок.
- Определяющие классы
- TreeApi
abstract def exists(p: (Universe.Tree) => Boolean): Boolean
Существует ли часть этого дерева, которая удовлетворяет предикату p?
- Определяющие классы
- TreeApi
abstract def filter(f: (Universe.Tree) => Boolean): List[Universe.Tree]
Найти все поддеревья, соответствующие предикату p. То же, что и withFilter
- Определяющие классы
- TreeApi
abstract def find(p: (Universe.Tree) => Boolean): Option[Universe.Tree]
Возвращает необязательное первое дерево (в обходе по предзаданию), удовлетворяющее предикату p, или None, если такового нет.
- Определяющие классы
- TreeApi
abstract def forAll(p: (Universe.Tree) => Boolean): Boolean
Все ли части этого дерева удовлетворяют предикату p?
- Определяющие классы
- TreeApi
abstract def foreach(f: (Universe.Tree) => Unit): Unit
Применяет f к каждому поддереву
- Определяющие классы
- TreeApi
abstract def isDef: Boolean
Представляет ли это дерево определение? (метода, класса и т.д.)
- Определяющие классы
- TreeApi
abstract def isEmpty: Boolean
Является ли это дерево одним из пустых деревьев?
Пустые деревья: объект EmptyTree null и экземпляры TypeTree, которые не содержат тип.
- Определяющие классы
- TreeApi
- См. также
canHaveAttrs
abstract def isTerm: Boolean
Канонический способ проверки, представляет ли Tree термин.
- Определяющие классы
- TreeApi
abstract def isType: Boolean
Канонический способ проверить, представляет ли дерево тип.
- Определяющие классы
- TreeApi
abstract def name: Universe.Name
Основное имя. Например, часть List в Ident(TermName("List")).
- Определяющие классы
- SelectApi → RefTreeApi → NameTreeApi
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 qualifier: Universe.Tree
Квалификатор ссылки. Например, часть Ident(TermName("scala")) в Select(Ident(TermName("scala")), TermName("List")). EmptyTree для экземпляров Ident.
- Определяющие классы
- SelectApi → RefTreeApi
abstract def symbol: Universe.Symbol
Символ дерева.
Для большинства деревьев символ — null. В SymTree, он переопределяется и реализуется с переменной, инициализированной NoSymbol.
Деревья, которые не являются SymTree, но которые содержат символы, делают это, переопределяя def symbol, чтобы передавать их в другое место. Примеры:
Super(qual, _) имеет символ qual,
Apply(fun, args) имеет символ fun,
TypeApply(fun, args) имеет символ fun,
AppliedTypeTree(tpt, args) имеет символ tpt,
TypeTree(tpe) имеет символ tpe's typeSymbol, если tpe != null. - Определяющие классы
- SymTreeApi → TreeApi
abstract def tpe: Universe.Type
Тип дерева.
При создании большинство деревьев имеют tpe, установленное на null. Типы обычно назначаются деревьям во время проверки типов. Некоторые методы фабрики узлов устанавливают tpe сразу после создания.
Когда проверка типов встречает дерево с не-null 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.SelectApi вany2stringadd[Universe.SelectApi] с помощью метода any2stringadd в scala.Predef.
- Определение классов
- any2stringadd
def ->[B](y: B): (Universe.SelectApi, B)
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.SelectApi вArrowAssoc[Universe.SelectApi] с помощью метода 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.SelectApi) => Boolean, msg: => Any): Universe.SelectApi
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.SelectApi вEnsuring[Universe.SelectApi] с помощью метода Ensuring в scala.Predef.
- Определение классов
- Ensuring
def ensuring(cond: (Universe.SelectApi) => Boolean): Universe.SelectApi
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.SelectApi вEnsuring[Universe.SelectApi] с помощью метода Ensuring в scala.Predef.
- Определение классов
- Ensuring
def ensuring(cond: Boolean, msg: => Any): Universe.SelectApi
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.SelectApi вEnsuring[Universe.SelectApi] с помощью метода Ensuring в scala.Predef.
- Определение классов
- Ensuring
def ensuring(cond: Boolean): Universe.SelectApi
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.SelectApi вEnsuring[Universe.SelectApi] с помощью метода 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.SelectApi вStringFormat[Universe.SelectApi] выполняемого методом 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$SelectApi.html
API, который поддерживают все выборки