Spec-Zone.ru › OpenJDK 17

Пакет jdk.dynalink.linker

package jdk.dynalink.linker

Содержит интерфейсы и классы, необходимые языковым средам выполнения для реализации собственных языкоспецифичных моделей объектов и преобразований типов. Основной точкой входа является интерфейс GuardingDynamicLinker. Он должен быть реализован для обеспечения связывания для собственной модели объектов среды выполнения. Языковая среда выполнения может иметь более одной реализации динамического связующего звена. При конфигурировании Dynalink для себя среда выполнения обычно устанавливает эти связующие звенья в качестве приоритетных связующих звеньев в своем DynamicLinkerFactory (и, возможно, некоторые из них в качестве резервных связующих звеньев, например, для обработки «метод не найден» и аналогичных ошибок языкоспецифичным образом, если ни одно другое связующее звено не смогло обработать операцию.)

Языковая среда выполнения, которая хочет сделать по крайней мере некоторые из своих связующих звеньев доступными другим языковым средам выполнения для межъязыковой совместимости, должна использовать GuardingDynamicLinkerExporter.

Большинство языковых сред выполнения смогут реализовать свою собственную логику связывания, реализовав TypeBasedGuardingDynamicLinker вместо GuardingDynamicLinker; это позволяет ускорить отправку связывания на основе типа.

Языковые среды выполнения, которые позволяют выполнять преобразования типов, отличные от тех, которые предоставляются Java, должны реализовать интерфейс своего динамического связующего звена (или связующих звеньев) также и интерфейс GuardingTypeConverterFactory для предоставления логики этих преобразований.

Since:
9
Пакет Описание
jdk.dynalink
Содержит интерфейсы и классы, которые используются для связывания места вызова invokedynamic.
jdk.dynalink.linker.support
Содержит классы, которые облегчают языковым средам выполнения реализацию собственных языкоспецифичных моделей объектов и преобразований типов, предоставляя базовые реализации некоторых классов, а также различные утилиты.
jdk.dynalink.beans
Содержит связующее звено для обычных Java-объектов.
jdk.dynalink.support
Содержит классы, которые делают использование Dynalink более удобным, предоставляя базовые реализации некоторых классов, а также различные утилиты.
Класс Описание
ConversionComparator
Необязательный интерфейс, который должен быть реализован реализаторами GuardingTypeConverterFactory.
ConversionComparator.Comparison
Перечисление возможных результатов сравнения одного преобразования с другим.
GuardedInvocation
Представляет условно допустимую ссылку на метод.
GuardedInvocationTransformer
Интерфейс для объектов, используемых для преобразования одного защищенного вызова в другой.
GuardingDynamicLinker
Базовый интерфейс для языкоспецифичных динамических связующих звеньев.
GuardingDynamicLinkerExporter
Класс, работающий как поставщик динамических связующих звеньев, которые могут быть автоматически загружены другими языковыми средами выполнения.
GuardingTypeConverterFactory
Необязательный интерфейс, который может быть реализован реализациями GuardingDynamicLinker для предоставления языкоспецифичных возможностей преобразования типов.
LinkerServices
Интерфейс для служб, предоставляемых экземплярам GuardingDynamicLinker DynamicLinker, которые их владеют.
LinkRequest
Представляет запрос на связывание конкретного вызова в конкретном месте вызова.
MethodHandleTransformer
Общий интерфейс, описывающий операции преобразования ссылок на методы.
MethodTypeConversionStrategy
Интерфейс для объектов, представляющих стратегию преобразования ссылки на метод в новый тип.
TypeBasedGuardingDynamicLinker
Динамическое связующее звено, которое может определить, может ли оно связать место вызова исключительно на основе типа первого аргумента во время вызова связывания.

© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/jdk.dynalink/jdk/dynalink/linker/package-summary.html

Spec-Zone.ru

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