Трейт scala.reflect.macros.Names
Трейт Names extends AnyRef
Абстрактные члены-значения
абстрактный def freshName[NameType <: blackbox.Context.Name](name: NameType): NameType
Создаёт уникальное имя, имеющее заданное имя в качестве префикса и тот же тип (имя переменной или имя типа), что и исходное имя. Подробности об уникальности см. в scala.reflect.macros.Names.
абстрактный def freshName(name: String): String
Создаёт строку, представляющую уникальное имя с заданным префиксом. Подробности об уникальности см. в scala.reflect.macros.Names.
абстрактный def freshName(): String
Создаёт строку, представляющую уникальное имя. Подробности об уникальности см. в scala.reflect.macros.Names.
абстрактный def fresh[NameType <: blackbox.Context.Name](name: NameType): NameType
Создаёт уникальное имя, имеющее заданное имя в качестве префикса и тот же тип (имя переменной или имя типа), что и исходное имя. Подробности об уникальности см. в scala.reflect.macros.Names.
- Annotations
- @deprecated
- Устарело
(Since version 2.11.0) используйте freshName вместо
абстрактный def fresh(name: String): String
Создаёт строку, представляющую уникальное имя с заданным префиксом. Подробности об уникальности см. в scala.reflect.macros.Names.
- Annotations
- @deprecated
- Устарело
(Since version 2.11.0) используйте freshName вместо
абстрактный def fresh(): String
Создаёт строку, представляющую уникальное имя. Подробности об уникальности см. в scala.reflect.macros.Names.
- Annotations
- @deprecated
- Устарело
(Since version 2.11.0) используйте freshName вместо
Члены конкретных значений
final def !=(arg0: Any): Boolean
- Определяющие классы
- AnyRef → Any
final def ##(): Int
- Определяющие классы
- AnyRef → Any
def +(other: String): String
def ->[B](y: B): (Names, B)
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: (Names) => Boolean, msg: => Any): Names
def ensuring(cond: (Names) => Boolean): Names
def ensuring(cond: Boolean, msg: => Any): Names
def ensuring(cond: Boolean): Names
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
final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
def toString(): String
- Definition Classes
- AnyRef → Any
final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @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/macros/Names.html
ЭКСПЕРИМЕНТАЛЬНО
Срезок контекста макросов Scala, предоставляющий функции генерации новых уникальных имён.
В текущей реализации новые имена уникальны в рамках одного процесса компиляции, т.е. гарантируется отсутствие конфликтов с: 1) Результатами предыдущих и будущих вызовов функций семейства
freshName; 2) Именами, определёнными пользователем или сгенерированными макросами, не содержащими символы доллара; 3) Именами, сгенерированными макросом путём конкатенации имён из первых двух категорий.Уникальность сгенерированных имён между разными запусками компиляции не гарантируется, но мы планируем улучшить эту ситуацию в будущих версиях. Подробности см. в https://github.com/scala/bug/issues/6879.