Spec-Zone.ru › Scala 2.13 Reflection

Трейт scala.reflect.api.Trees.AnnotatedApi

trait AnnotatedApi extends Universe.TreeApi

API, поддерживаемый всеми аннотированными элементами

Self Type
Universe.Annotated
Source
Trees.scala
Линейные супертипы
Universe.TreeApi, Product, Equals, AnyRef, Any
Известные подклассы
Annotated

Члены-значения абстрактного типа

абстрактный метод annot: Universe.Tree

абстрактный метод arg: Universe.Tree

абстрактный метод canEqual(that: Any): Boolean

Определяющие классы
Equals

абстрактный метод canHaveAttrs: Boolean

Может ли это дерево содержать атрибуты (т. е. символы, типы или позиции)? Обычно ответ положительный, за исключением объекта EmptyTree null и двух специальных одиночных объектов: noSelfType и pendingSuperCall.

Определяющие классы
TreeApi

абстрактный метод children: List[Universe.Tree]

Прямые дочерние деревья этого дерева. EmptyTrees всегда опускаются. Списки сжаты.

Определяющие классы
TreeApi

абстрактный метод collect[T](pf: PartialFunction[Universe.Tree, T]): List[T]

Применить pf к каждому поддереву, для которого функция определена, и собрать результаты.

Определяющие классы
TreeApi

абстрактный метод duplicate: AnnotatedApi.this.type

Создаёт копию этого дерева, сохраняя все атрибуты, за исключением того, что все позиции сфокусированы (поэтому ничего в этом дереве не будет найдено при поиске по позиции).

Определяющие классы
TreeApi

абстрактный метод equalsStructure(that: Universe.Tree): Boolean

Проверяет, равны ли два дерева структурно. Обратите внимание, что == на деревьях - это равенство по ссылке.

Определяющие классы
TreeApi

абстрактный метод exists(p: (Universe.Tree) => Boolean): Boolean

Существует ли часть этого дерева, которая удовлетворяет предикату p?

Определяющие классы
TreeApi

абстрактный метод filter(f: (Universe.Tree) => Boolean): List[Universe.Tree]

Найти все поддеревья, удовлетворяющие предикату p. Аналогично withFilter.

Определяющие классы
TreeApi

абстрактный метод find(p: (Universe.Tree) => Boolean): Option[Universe.Tree]

Возвращает необязательное первое дерево (в обходе по уровням) которое удовлетворяет предикату p, или None, если таковое не найдено.

Определяющие классы
TreeApi

абстрактный метод forAll(p: (Universe.Tree) => Boolean): Boolean

Все ли части этого дерева удовлетворяют предикату p?

Определяющие классы
TreeApi

абстрактный метод foreach(f: (Universe.Tree) => Unit): Unit

Применить f к каждому поддереву

Определяющие классы
TreeApi

абстрактный метод isDef: Boolean

Представляет ли это дерево определение? (метода, класса и т. д.)

Определяющие классы
TreeApi

абстрактный метод isEmpty: Boolean

Является ли это дерево одним из пустых деревьев?

Пустые деревья: объект EmptyTree null и экземпляры TypeTree , которые не несут тип.

Определяющие классы
TreeApi
См. также

canHaveAttrs

abstract def isTerm: Boolean

Канонический способ проверки, представляет ли дерево терм.

Definition Classes
TreeApi

abstract def isType: Boolean

Канонический способ проверки, представляет ли дерево тип.

Definition Classes
TreeApi

abstract def nonEmpty: Boolean

Не является ли это дерево пустым?

Definition Classes
TreeApi
See also

isEmpty

abstract def orElse(alt: => Universe.Tree): Universe.Tree

Предлагает альтернативный вариант, если дерево пустое.

alt

Альтернативное дерево.

returns

Если это дерево не пустое, возвращается это дерево, в противном случае alt.

Definition Classes
TreeApi

abstract def pos: Universe.Position

Позиция дерева.

Definition Classes
TreeApi

abstract def productArity: Int

Definition Classes
Product

abstract def productElement(n: Int): Any

Definition Classes
Product

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.
Definition Classes
TreeApi

abstract def tpe: Universe.Type

Тип дерева.

При создании большинство деревьев имеют свой tpe, установленный в null. Типы обычно назначаются деревьям во время проверки типов. Некоторые методы фабрики узлов устанавливают tpe сразу после создания.

Когда проверка типов сталкивается с деревом, у которого tpe не равен null, она предполагает его правильность и не проверяет его повторно. Это означает, что необходимо быть осторожным, чтобы не стереть поле tpe поддеревьев.

Definition Classes
TreeApi

abstract def withFilter(f: (Universe.Tree) => Boolean): List[Universe.Tree]

Находит все поддеревья, удовлетворяющие предикату p. То же самое, что и filter.

Definition Classes
TreeApi

Члены конкретных значений

final def !=(arg0: Any): Boolean

Определяющие классы
AnyRef → Any

final def ##(): Int

Определяющие классы
AnyRef → Any

def +(other: String): String

Неявный
Этот член добавлен с помощью неявного преобразования из Universe.AnnotatedApi в any2stringadd[Universe.AnnotatedApi] с помощью метода any2stringadd в scala.Predef.
Определяющие классы
any2stringadd

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

Неявный
Этот член добавлен с помощью неявного преобразования из Universe.AnnotatedApi в ArrowAssoc[Universe.AnnotatedApi] с помощью метода 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.AnnotatedApi) => Boolean, msg: => Any): Universe.AnnotatedApi

Неявный
Этот член добавлен с помощью неявного преобразования из Universe.AnnotatedApi в Ensuring[Universe.AnnotatedApi] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: (Universe.AnnotatedApi) => Boolean): Universe.AnnotatedApi

Неявный
Этот член добавлен с помощью неявного преобразования из Universe.AnnotatedApi в Ensuring[Universe.AnnotatedApi] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean, msg: => Any): Universe.AnnotatedApi

Неявный
Этот член добавлен с помощью неявного преобразования из Universe.AnnotatedApi в Ensuring[Universe.AnnotatedApi] с помощью метода Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: Boolean): Universe.AnnotatedApi

Неявный
Этот член добавлен с помощью неявного преобразования из Universe.AnnotatedApi в Ensuring[Universe.AnnotatedApi] с помощью метода 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.AnnotatedApi в StringFormat[Universe.AnnotatedApi] с помощью метода 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$AnnotatedApi.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API