Spec-Zone.ru › Scala 2.13 Reflection

Трейт scala.reflect.macros.Internals.ContextInternalApi

Трейт ContextInternalApi extends MacroInternalApi

Источник
Internals.scala
См. также

scala.reflect.api.Internals

Линейные супертипы
MacroInternalApi, Universe.InternalApi, AnyRef, Any

Члены типа

ТрейтDecoratorApi extends AnyRef

Классы-определения
InternalApi
См. также

Decorators

абстрактный типDecorators <: MacroDecoratorApi

Синтаксические удобства для дополнительных внутренних API для деревьев, символов и типов

Классы-определения
MacroInternalApi → InternalApi

ТрейтTransformApi extends AnyRef

Функции, доступные во время transform.

См. также

transform

ТрейтTypingTransformApi extends TransformApi

Функции, доступные во время typingTransform.

См. также

typingTransform

ТрейтMacroDecoratorApi extends DecoratorApi

<invalid inheritdoc annotation>

Классы-определения
MacroInternalApi

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

абстрактный def annotatedType(annotations: List[Universe.Annotation], underlying: Universe.Type): Universe.AnnotatedType

Создатель типов AnnotatedType.

Классы-определения
InternalApi

абстрактный def asFreeTerm(symbol: Universe.Symbol): Universe.FreeTermSymbol

Это символ, преобразованный к символу свободного термина.

Классы-определения
InternalApi
Исключения

ScalaReflectionException если isFreeTerm ложно.

абстрактный def asFreeType(symbol: Universe.Symbol): Universe.FreeTypeSymbol

Этот символ преобразуется в символ свободного типа.

Классы-определения
InternalApi
Исключения

ScalaReflectionException если isFreeType ложно.

абстрактный def attachments(tree: Universe.Tree): Attachments { type Pos = Internals.this.universe.Position }

Прикрепление дерева.

Классы-определения
MacroInternalApi

абстрактный def attachments(symbol: Universe.Symbol): Attachments { type Pos = Internals.this.universe.Position }

Прикрепление символа.

Классы-определения
MacroInternalApi

абстрактный def boundedWildcardType(bounds: Universe.TypeBounds): Universe.BoundedWildcardType

Создатель типов BoundedWildcardType.

Классы-определения
InternalApi

абстрактный def captureVariable(vble: Universe.Symbol): Unit

Пометить переменную как захваченную; т.е. принудительно упаковать в тип *Ref.

Классы-определения
MacroInternalApi

абстрактный def capturedVariableType(vble: Universe.Symbol): Universe.Type

Преобразование типа захваченной переменной в тип *Ref.

Классы-определения
MacroInternalApi

абстрактный def changeOwner(tree: Universe.Tree, prev: Universe.Symbol, next: Universe.Symbol): tree.type

Сбор всех символов, определенных поддеревьями tree, которые принадлежат prev, а затем изменение их владельца на next.

Необходимый инструмент для борьбы с коррупцией цепочки владельцев при перемещении деревьев из одного лексического контекста в другой. Когда вы берете дерево с атрибутами, которое было проверено на типы в контексте, принадлежащем какому-то символу (назовем его x), и вставляете его в другое место, в контекст, принадлежащий другому символу (назовем его y), необходимо вызвать untypecheck или changeOwner(tree, x, y).

Поскольку в данный момент у untypecheck есть фундаментальная проблема, которая иногда может привести к повреждению дерева, changeOwner становится незаменимым инструментом при создании 100% надежных макросов. Будущие версии API отражения могут избавить от необходимости заниматься этими низкоуровневыми деталями, но пока все так.

Классы-определения
MacroInternalApi

абстрактный def classDef(sym: Universe.Symbol, impl: Universe.Template): Universe.ClassDef

Метод-фабрика для узлов ClassDef.

Классы-определения
InternalApi

абстрактный метод classInfoType(parents: List[Universe.Type], decls: Universe.Scope, typeSymbol: Universe.Symbol): Universe.ClassInfoType

Создатель для типов ClassInfoType.

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

абстрактный метод constantType(value: Universe.Constant): Universe.ConstantType

Создатель для типов ConstantType.

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

абстрактный метод createImporter(from0: api.Universe): Universe.Importer { val from: from0.type }

Создаёт импортёр, который перемещает артефакты рефлексии между вселенными.

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

Importer

абстрактный метод deSkolemize(symbol: Universe.Symbol): Universe.Symbol

Если этот символ является сколемом, то его соответствующий параметр типа, в противном случае сам символ.

Цитата Мартина Одерски, сколемы — это синтетические типы «констант», которые являются копиями существенно связанных или универсально связанных переменных типа. Например, если находится в правой части метода:

def foo[T](x: T) = ... foo[List[T]]....

сколем с именем T относится к неизвестному экземпляру типа T при вызове foo. Он должен отличаться от параметра типа, потому что в рекурсивном вызове, как в foo[List[T]] выше, параметр типа заменяется на List[T], но типовой сколем остаётся тем же.

Другая форма сколема — это существенный сколем. Предположим, есть функция

def bar(xs: List[T] forSome { type T }) = xs.head

тогда каждый экземпляр xs в правой части будет иметь тип List[T'], где T' — свежая копия T.

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

абстрактный значение decorators: Decorators

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

Decorators

абстрактный метод defDef(sym: Universe.Symbol, rhs: (List[List[Universe.Symbol]]) => Universe.Tree): Universe.DefDef

Метод-фабрика для узлов DefDef.

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

абстрактный метод defDef(sym: Universe.Symbol, rhs: Universe.Tree): Universe.DefDef

Метод-фабрика для узлов DefDef.

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

абстрактный метод defDef(sym: Universe.Symbol, mods: Universe.Modifiers, rhs: Universe.Tree): Universe.DefDef

Метод-фабрика для узлов DefDef.

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

абстрактный метод defDef(sym: Universe.Symbol, vparamss: List[List[Universe.ValDef]], rhs: Universe.Tree): Universe.DefDef

Метод-фабрика для узлов DefDef.

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

абстрактный метод defDef(символ: Universe.Symbol, модификаторы: Universe.Modifiers, список списков параметров: List[List[Universe.ValDef]], правая часть: Universe.Tree): Universe.DefDef

Метод-фабрика для узлов DefDef.

Определение классов
InternalApi

абстрактный метод defineType(дерево: Universe.Tree, тип: Universe.Type): дерево.type

Подобно setType, но если это ранее пустой TypeTree, этот факт запоминается, так что untypecheck вернётся назад.

\@PP: Пытаясь пояснить вышесказанное, я обнаружил: Если defineType вызывается для TypeTree, поле типа которого равно null или NoType, это регистрируется как "wasEmpty = true". Это значение используется в ResetAttrsTraverser, который обнуляет поле типа TypeTree, для которого wasEmpty равно true, оставляя другие в покое.

untypecheck (или resetAttrs в терминологии компилятора) используется в ситуациях, когда происходит какая-то умозрительная типизация дерева, которая терпит неудачу, и дерево должно быть возвращено в прежнее состояние, чтобы попробовать снова. Таким образом, по моему мнению: использование defineType вместо setType — это способ сообщить, что устанавливаемый тип не зависит от предыдущего состояния, и поэтому его следует отказаться от него, если текущая линия запроса типа не сработает.

Определение классов
MacroInternalApi

абстрактный метод enclosingOwner: blackbox.Context.Symbol

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

абстрактный метод enter(области: Universe.Scope, символ: Universe.Symbol): области.type

Добавляет указанный символ в указанную область.

Определение классов
MacroInternalApi

абстрактный метод existentialAbstraction(параметры_типов: List[Universe.Symbol], тип0: Universe.Type): Universe.Type

Создатель для экзистенциальных типов. Это генерирует:

tpe1 where { tparams }

где tpe1 — результат экстраполяции tpe относительно tparams. Экстраполяция означает, что переменные типа в tparams, встречающиеся в ковариантных позициях, заменяются верхними границами (минус любые маркеры SingletonClass), переменные типа в tparams, встречающиеся в контравариантных позициях, заменяются верхними границами, при условии, что полученный тип является законным относительно стабильности и не содержит переменной типа в tparams.

Абстракция отбрасывает все параметры типа, которые напрямую или косвенно не ссылаются на тип tpe1. Если оставшихся параметров типа нет, просто возвращает тип результата tpe.

Определение классов
InternalApi

абстрактный метод existentialType(квантифицированные: List[Universe.Symbol], основа: Universe.Type): Universe.ExistentialType

Создатель для типов ExistentialType.

Определение классов
InternalApi

абстрактный метод flags(символ: Universe.Symbol): Universe.FlagSet

Возвращает внутренние флаги, связанные с символом.

Определение классов
InternalApi

абстрактный метод freeTerms(дерево: Universe.Tree): List[Universe.FreeTermSymbol]

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

Определение классов
InternalApi

абстрактный метод freeTypes(дерево: Universe.Tree): List[Universe.FreeTypeSymbol]

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

Определение классов
InternalApi

abstract def fullyInitialize(scope: Universe.Scope): scope.type

Вызывает initialize для всех символов, составляющих область видимости.

Definition Classes
InternalApi

abstract def fullyInitialize(tp: Universe.Type): tp.type

Вызывает initialize для всех параметром значений и типов типа.

Definition Classes
InternalApi

abstract def fullyInitialize(symbol: Universe.Symbol): symbol.type

Вызывает initialize для владельца и всех параметров значений и типов символа.

Definition Classes
InternalApi

abstract val gen: TreeGen

Расширенные фабрики деревьев

Definition Classes
MacroInternalApi

abstract def initialize(symbol: Universe.Symbol): symbol.type

Принудительно выполняет все ожидающие завершения, связанные с этим символом. После возвращения этого вызова символ становится неизменяемым и потокобезопасным.

Definition Classes
InternalApi

abstract def intersectionType(tps: List[Universe.Type], owner: Universe.Symbol): Universe.Type

Создатель типа пересечения, где пересечения одного типа заменяются самим типом, а повторяющиеся родительские классы объединяются.

!!! Повторяющиеся родительские классы не объединяются - это ошибка в комментарии или в коде?

Definition Classes
InternalApi

abstract def intersectionType(tps: List[Universe.Type]): Universe.Type

Создатель типа пересечения, где пересечения одного типа заменяются самим типом.

Definition Classes
InternalApi

abstract def isErroneous(symbol: Universe.Symbol): Boolean

Является ли этот символ или его базовый тип ошибкой проверки типов?

Definition Classes
InternalApi

abstract def isFreeTerm(symbol: Universe.Symbol): Boolean

Представляет ли этот символ свободный термин, захваченный реификацией? Если да, то isTerm также гарантированно будет истинным.

Definition Classes
InternalApi

abstract def isFreeType(symbol: Universe.Symbol): Boolean

Представляет ли этот символ свободный тип, захваченный реификацией? Если да, то isType также гарантированно будет истинным.

Definition Classes
InternalApi

abstract def isSkolem(symbol: Universe.Symbol): Boolean

Представляет ли этот символ определение сколема? Сколемы используются во время проверки типов для представления параметров типов, рассматриваемых изнутри своих областей видимости.

Definition Classes
InternalApi

abstract def labelDef(sym: Universe.Symbol, params: List[Universe.Symbol], rhs: Universe.Tree): Universe.LabelDef

Метод-фабрика для узлов LabelDef.

Definition Classes
InternalApi

abstract def methodType(params: List[Universe.Symbol], resultType: Universe.Type): Universe.MethodType

Создатель типов MethodType.

Definition Classes
InternalApi

abstract def moduleDef(sym: Universe.Symbol, impl: Universe.Template): Universe.ModuleDef

Метод-фабрика для узлов ModuleDef.

Definition Classes
InternalApi

abstract def newClassSymbol(owner: Universe.Symbol, name: Universe.TypeName, pos: Universe.Position = NoPosition, flags: Universe.FlagSet = NoFlags): Universe.ClassSymbol

Definition Classes
InternalApi

abstract def newFreeTerm(name: String, value: => Any, flags: Universe.FlagSet = NoFlags, origin: String = null): Universe.FreeTermSymbol

Definition Classes
InternalApi

abstract def newFreeType(name: String, flags: Universe.FlagSet = NoFlags, origin: String = null): Universe.FreeTypeSymbol

Definition Classes
InternalApi

abstract def newMethodSymbol(owner: Universe.Symbol, name: Universe.TermName, pos: Universe.Position = NoPosition, flags: Universe.FlagSet = NoFlags): Universe.MethodSymbol

Definition Classes
InternalApi

abstract def newModuleAndClassSymbol(owner: Universe.Symbol, name: Universe.Name, pos: Universe.Position = NoPosition, flags: Universe.FlagSet = NoFlags): (Universe.ModuleSymbol, Universe.ClassSymbol)

Definition Classes
InternalApi

abstract def newScopeWith(elems: Universe.Symbol*): Universe.Scope

Создайте новую область видимости с заданными начальными элементами.

Definition Classes
InternalApi

abstract def newTermSymbol(owner: Universe.Symbol, name: Universe.TermName, pos: Universe.Position = NoPosition, flags: Universe.FlagSet = NoFlags): Universe.TermSymbol

Definition Classes
InternalApi

abstract def newTypeSymbol(owner: Universe.Symbol, name: Universe.TypeName, pos: Universe.Position = NoPosition, flags: Universe.FlagSet = NoFlags): Universe.TypeSymbol

Definition Classes
InternalApi

abstract def nullaryMethodType(resultType: Universe.Type): Universe.NullaryMethodType

Создатель типов NullaryMethodType.

Definition Classes
InternalApi

abstract def polyType(tparams: List[Universe.Symbol], tpe: Universe.Type): Universe.PolyType

Создатель параметризаций типов, который удаляет пустые списки параметров типов. Используйте этот фабричный метод, чтобы указать, что тип имеет вид * (это полиморфное значение), пока мы не начнем отслеживать явные виды, эквивалентные typeFun (за исключением того, что последний требует tparams nonEmpty).

Definition Classes
InternalApi

abstract def referenceCapturedVariable(vble: Universe.Symbol): Universe.Tree

Пометить данный идентификатор как ссылку на саму захваченную переменную, подавляя обращение к ней с помощью поля elem.

Definition Classes
MacroInternalApi

abstract def refinedType(parents: List[Universe.Type], owner: Universe.Symbol, decls: Universe.Scope, pos: Universe.Position): Universe.Type

Создатель типов RefinedType.

Definition Classes
InternalApi

abstract def refinedType(parents: List[Universe.Type], owner: Universe.Symbol, decls: Universe.Scope): Universe.Type

Создатель типов RefinedType.

Definition Classes
InternalApi

abstract def refinedType(parents: List[Universe.Type], owner: Universe.Symbol): Universe.Type

Создатель типов RefinedType.

Definition Classes
InternalApi

abstract def refinedType(parents: List[Universe.Type], decls: Universe.Scope, clazz: Universe.Symbol): Universe.RefinedType

Создатель для типов RefinedType.

Классы-определения
InternalApi

абстрактный def refinedType(parents: Список[Тип Вселенной], decls: Область Вселенной): Очищенный тип Вселенной

Создатель для типов RefinedType.

Классы-определения
InternalApi

абстрактный val reificationSupport: Интерфейс поддержки реификации Вселенной

Это внутренний модуль реализации.

Классы-определения
InternalApi

абстрактный def removeAttachment[T](tree: Дерево Вселенной)(неявный arg0: ClassTag[T]): tree.type

Обновить прикрепление с удаленным содержимым заданного типа класса T. Возвращает само дерево.

Классы-определения
Интерфейс макроса Вселенной

абстрактный def removeAttachment[T](symbol: Символ Вселенной)(неявный arg0: ClassTag[T]): symbol.type

Обновить прикрепление с удаленным содержимым заданного типа класса T. Возвращает сам символ.

Классы-определения
Интерфейс макроса Вселенной

абстрактный def resetFlag(symbol: Символ Вселенной, flags: Набор флагов Вселенной): symbol.type

Отключает flags для символа.

Классы-определения
Интерфейс макроса Вселенной

абстрактный def setAnnotations(symbol: Символ Вселенной, annots: Аннотация Вселенной*): symbol.type

Устанавливает annotations символа.

Классы-определения
Интерфейс макроса Вселенной

абстрактный def setFlag(symbol: Символ Вселенной, flags: Набор флагов Вселенной): symbol.type

Включает flags для символа.

Классы-определения
Интерфейс макроса Вселенной

абстрактный def setInfo(symbol: Символ Вселенной, tpe: Тип Вселенной): symbol.type

Устанавливает info символа.

Классы-определения
Интерфейс макроса Вселенной

абстрактный def setName(symbol: Символ Вселенной, name: Имя Вселенной): symbol.type

Устанавливает name символа.

Классы-определения
Интерфейс макроса Вселенной

абстрактный def setOriginal(tt: Дерево типа Вселенной, original: Дерево Вселенной): Дерево типа Вселенной

Устанавливает поле original дерева типа.

Классы-определения
Интерфейс макроса Вселенной

абстрактный метод setOwner(symbol: Universe.Symbol, newowner: Universe.Symbol): symbol.type

Устанавливает owner символа.

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

абстрактный метод setPos(tree: Universe.Tree, newpos: Universe.Position): tree.type

Устанавливает pos дерева. Возвращает само дерево.

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

абстрактный метод setPrivateWithin(symbol: Universe.Symbol, sym: Universe.Symbol): symbol.type

Устанавливает privateWithin символа.

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

абстрактный метод setSymbol(tree: Universe.Tree, sym: Universe.Symbol): tree.type

Устанавливает symbol дерева. Возвращает само дерево.

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

абстрактный метод setType(tree: Universe.Tree, tp: Universe.Type): tree.type

Устанавливает tpe дерева. Возвращает само дерево.

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

абстрактный метод singleType(pre: Universe.Type, sym: Universe.Symbol): Universe.Type

Создатель для типов SingleType.

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

абстрактный метод subpatterns(tree: Universe.Tree): Option[List[Universe.Tree]]

Возвращает неустановленный список подпатернов, присоединённых к селектору-заглушке узла UnApply. Полезно при написании макросов квазицитирования, выполняющих сопоставление с образцом.

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

абстрактный метод substituteSymbols(tree: Universe.Tree, from: List[Universe.Symbol], to: List[Universe.Symbol]): Universe.Tree

Заменяет символы в to на соответствующие вхождения ссылок на символы from в этом типе.

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

абстрактный метод substituteThis(tree: Universe.Tree, clazz: Universe.Symbol, to: => Universe.Tree): Universe.Tree

Заменяет данное дерево to на вхождения узлов, представляющих C.this, где C относится к заданному классу clazz.

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

абстрактный метод substituteTypes(tree: Universe.Tree, from: List[Universe.Symbol], to: List[Universe.Type]): Universe.Tree

Заменяет типы в to на соответствующие вхождения ссылок на символы from в этом дереве.

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

abstract def superType(thistpe: Universe.Type, supertpe: Universe.Type): Universe.Type

A creator for SuperType types.

Definition Classes
InternalApi

abstract def thisType(sym: Universe.Symbol): Universe.Type

A creator for ThisType types.

Definition Classes
InternalApi

abstract def transform(tree: blackbox.Context.Tree)(transformer: (blackbox.Context.Tree, TransformApi) => blackbox.Context.Tree): blackbox.Context.Tree

Преобразует заданное дерево, используя предоставленную функцию.

См. также

TransformApi

abstract def typeBounds(lo: Universe.Type, hi: Universe.Type): Universe.TypeBounds

A creator for TypeBounds types.

Definition Classes
InternalApi

abstract def typeDef(sym: Universe.Symbol): Universe.TypeDef

A factory method for TypeDef nodes.

Definition Classes
InternalApi

abstract def typeDef(sym: Universe.Symbol, rhs: Universe.Tree): Universe.TypeDef

A factory method for TypeDef nodes.

Definition Classes
InternalApi

abstract def typeRef(pre: Universe.Type, sym: Universe.Symbol, args: List[Universe.Type]): Universe.Type

A creator for TypeRef types.

Definition Classes
InternalApi

abstract def typingTransform(tree: blackbox.Context.Tree, owner: blackbox.Context.Symbol)(transformer: (blackbox.Context.Tree, TypingTransformApi) => blackbox.Context.Tree): blackbox.Context.Tree

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

См. также

TypingTransformApi

abstract def typingTransform(tree: blackbox.Context.Tree)(transformer: (blackbox.Context.Tree, TypingTransformApi) => blackbox.Context.Tree): blackbox.Context.Tree

Преобразует заданное дерево с помощью предоставленной функции.

См. также

TypingTransformApi

абстрактный def unlink(scope: Universe.Scope, sym: Universe.Symbol): scope.type

Удаляет заданный символ из данного области видимости.

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

абстрактный def updateAttachment[T](tree: Universe.Tree, attachment: T)(неявный arg0: ClassTag[T]): tree.type

Обновляет привязку с помощью слота загрузки T, добавленного/обновленного с предоставленным значением. Заменяет существующую загрузку того же типа, если она существует. Возвращает само дерево.

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

абстрактный def updateAttachment[T](symbol: Universe.Symbol, attachment: T)(неявный arg0: ClassTag[T]): symbol.type

Обновляет привязку с помощью слота загрузки T, добавленного/обновленного с предоставленным значением. Заменяет существующую загрузку того же типа, если она существует. Возвращает сам символ.

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

абстрактный def valDef(sym: Universe.Symbol): Universe.ValDef

Метод-фабрика для узлов ValDef.

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

абстрактный def valDef(sym: Universe.Symbol, rhs: Universe.Tree): Universe.ValDef

Метод-фабрика для узлов ValDef.

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

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

final def !=(arg0: Any): Boolean

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

final def ##(): Int

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

def +(other: String): String

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

def ->[B](y: B): (blackbox.Context.ContextInternalApi, B)

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

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

def ensuring(cond: (blackbox.Context.ContextInternalApi) => Boolean): blackbox.Context.ContextInternalApi

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

def ensuring(cond: Boolean, msg: => Any): blackbox.Context.ContextInternalApi

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

def ensuring(cond: Boolean): blackbox.Context.ContextInternalApi

Неявный
Этот член добавляется неявным преобразованием из blackbox.Context.ContextInternalApi в Ensuring[blackbox.Context.ContextInternalApi] выполненным методом 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

Неявный
Этот член добавляется неявным преобразованием из blackbox.Context.ContextInternalApi в StringFormat[blackbox.Context.ContextInternalApi] выполненным методом 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

def manifestToTypeTag[T](mirror: Any, manifest: Manifest[T]): api.Universe.TypeTag[T]

Преобразование scala.reflect.Manifest в scala.reflect.api.TypeTags#TypeTag.

Компилятор обычно автоматически генерирует эти преобразования, когда манифест для типа T находится в области видимости, и требуется неявное значение типа TypeTag[T], но этот метод также можно вызывать вручную. Например:

manifestToTypeTag(scala.reflect.runtime.currentMirror, implicitly[Manifest[String]])
Классы определения
InternalApi

final def ne(arg0: AnyRef): Boolean

Классы определения
AnyRef

final def notify(): Unit

Классы определения
AnyRef
Аннотации
@native()

final def notifyAll(): Unit

Классы определения
AnyRef
Аннотации
@native()

final def synchronized[T0](arg0: => T0): T0

Классы определения
AnyRef

def toString(): String

Классы определения
AnyRef → Any

def typeTagToManifest[T](mirror: Any, tag: api.Universe.TypeTag[T])(implicit arg0: ClassTag[T]): Manifest[T]

Преобразование scala.reflect.api.TypeTags#TypeTag в scala.reflect.Manifest.

Компилятор обычно автоматически генерирует эти преобразования, когда метка типа для типа T находится в области видимости, и требуется неявное значение типа Manifest[T], но этот метод также можно вызывать вручную. Например:

typeTagToManifest(scala.reflect.runtime.currentMirror, implicitly[TypeTag[String]])
Классы определения
InternalApi

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/macros/Internals$ContextInternalApi.html

Spec-Zone.ru

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