Аннотация scala.reflect.api.Trees.Literal
Компаньон класс LiteralExtractor
абстрактный тип Literal >: Null <: Universe.LiteralApi с Universe.TermTree
Абстрактные члены-значения
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: TreeApi.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 и экземпляры EmptyTree, которые не содержат тип.
- Definition Classes
- TreeApi
- See also
canHaveAttrs
abstract def isTerm: Boolean
Канонический способ проверки, представляет ли Tree термин.
- Definition Classes
- 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 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 typeSymbol, если tpe != null.- Классы-определения
- TreeApi
abstract def tpe: Universe.Type
Тип дерева.
При создании большинство деревьев имеют tpe установленным на null. Типы обычно присваиваются деревьям во время проверки типов. Некоторые методы создания узлов устанавливают tpe сразу после создания.
Когда проверяющий типов встречает дерево с непустым tpe, он предполагает его правильность и не проверяет его повторно. Это означает, что необходимо быть осторожным, чтобы не стереть поле tpe дочерних деревьев.
- Классы-определения
- TreeApi
abstract def value: Universe.Constant
Компиляционная константа, лежащая в основе литерала.
- Классы-определения
- LiteralApi
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
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()
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])
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
- Definition Classes
- AnyRef
- Annotations
- @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$Literal.html
Литерал