Трейт scala.reflect.api.Trees.ValOrDefDefApi
trait ValOrDefDefApi extends Universe.MemberDefApi
Абстрактные члены-значения
abstract def canEqual(that: Any): Boolean
- Definition Classes
- Equals
abstract def canHaveAttrs: Boolean
Может ли это дерево содержать атрибуты (т.е. символы, типы или позиции)? Обычно ответ да, за исключением объекта null и двух специальных одиночных элементов: EmptyTree и noSelfType и pendingSuperCall.
- Definition Classes
- TreeApi
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: ValOrDefDefApi.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
Является ли это дерево одним из пустых деревьев?
Пустые деревья: объект null и экземпляры, которые не несут тип.
- Definition Classes
- TreeApi
- See also
canHaveAttrs
abstract def isTerm: Boolean
Канонический способ проверить, представляет ли Tree термин.
- Definition Classes
- TreeApi
abstract def isType: Boolean
Канонический способ проверки, представляет ли дерево тип.
- Классы определений
- TreeApi
абстрактный def mods: Universe.Modifiers
Модификаторы объявленного члена.
- Классы определений
- MemberDefApi
абстрактный def name: Universe.TermName
Основное имя. Например, часть List в Ident(TermName("List")).
- Классы определений
- ValOrDefDefApi → DefTreeApi → NameTreeApi
абстрактный def nonEmpty: Boolean
Является ли это дерево не пустым деревом?
- Классы определений
- TreeApi
- См. также
isEmpty
абстрактный def orElse(alt: => Universe.Tree): Universe.Tree
Предоставляет альтернативу, если дерево пустое.
- alt
Альтернативное дерево
- возвращает
Если это дерево не пустое, это дерево, в противном случае
alt.
- Классы определений
- TreeApi
абстрактный def pos: Universe.Position
Позиция дерева.
- Классы определений
- TreeApi
абстрактный def productArity: Int
- Классы определений
- Product
абстрактный def productElement(n: Int): Any
- Классы определений
- Product
абстрактный def rhs: Universe.Tree
Тело определения. EmptyTree — тело пустое (например, для абстрактных членов).
абстрактный 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
абстрактный def tpe: Universe.Type
Тип дерева.
При создании большинство деревьев имеют свой tpe, установленный на null. Типы обычно назначаются деревьям во время проверки типов. Некоторые методы фабрики узлов устанавливают tpe сразу после создания.
Когда проверка типов встречает дерево с непустым tpe, она предполагает его правильность и не проверяет его снова. Это означает, что необходимо быть осторожным, чтобы не стереть поле tpe поддеревьев.
- Классы определений
- TreeApi
абстрактный def tpt: Universe.Tree
Тип, назначенный определению. Пустой TypeTree если тип не был явно указан и должен быть выведен.
абстрактный 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.ValOrDefDefApi вany2stringadd[Universe.ValOrDefDefApi] с помощью метода any2stringadd в scala.Predef.
- Определяющие классы
- any2stringadd
def ->[B](y: B): (Universe.ValOrDefDefApi, B)
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.ValOrDefDefApi вArrowAssoc[Universe.ValOrDefDefApi] с помощью метода 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.ValOrDefDefApi) => Boolean, msg: => Any): Universe.ValOrDefDefApi
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.ValOrDefDefApi вEnsuring[Universe.ValOrDefDefApi] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: (Universe.ValOrDefDefApi) => Boolean): Universe.ValOrDefDefApi
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.ValOrDefDefApi вEnsuring[Universe.ValOrDefDefApi] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean, msg: => Any): Universe.ValOrDefDefApi
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.ValOrDefDefApi вEnsuring[Universe.ValOrDefDefApi] с помощью метода Ensuring в scala.Predef.
- Определяющие классы
- Ensuring
def ensuring(cond: Boolean): Universe.ValOrDefDefApi
- Неявный
- Этот член добавлен благодаря неявной конверсии из Universe.ValOrDefDefApi вEnsuring[Universe.ValOrDefDefApi] с помощью метода 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.ValOrDefDefApi в StringFormat[Universe.ValOrDefDefApi] выполненного методом 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$ValOrDefDefApi.html
API, который поддерживают все val def и def def