FrameworkFeature

interface FrameworkFeature : Feature

Framework: Feature

Registers a GraalVM "feature" implementation, which describes to the VM and compiler how to access reflective values needed for operation of apps built with Elide. Each framework implements a description for a different unit of functionality.

Inheritors

Functions

Link copied to clipboard
open fun afterAnalysis(access: Feature.AfterAnalysisAccess)
Link copied to clipboard
open fun afterCompilation(access: Feature.AfterCompilationAccess)
Link copied to clipboard
open fun afterHeapLayout(access: Feature.AfterHeapLayoutAccess)
Link copied to clipboard
open fun afterImageWrite(access: Feature.AfterImageWriteAccess)
Link copied to clipboard
open fun afterRegistration(access: Feature.AfterRegistrationAccess)
Link copied to clipboard
open fun beforeAnalysis(access: Feature.BeforeAnalysisAccess)
Link copied to clipboard
open fun beforeCompilation(access: Feature.BeforeCompilationAccess)
Link copied to clipboard
open fun beforeHeapLayout(access: Feature.BeforeHeapLayoutAccess)
Link copied to clipboard
open fun beforeImageWrite(access: Feature.BeforeImageWriteAccess)
Link copied to clipboard
open fun beforeUniverseBuilding(access: Feature.BeforeUniverseBuildingAccess)
Link copied to clipboard
open fun cleanup()
Link copied to clipboard
open fun duringAnalysis(access: Feature.DuringAnalysisAccess)
Link copied to clipboard
open fun duringSetup(access: Feature.DuringSetupAccess)
Link copied to clipboard
open fun findClassesInJar(urlConnection: JarURLConnection, packageName: String): List<String>

Find a list of classes for the provided packageName within the provided urlConnection.

Link copied to clipboard
abstract override fun getDescription(): String
Link copied to clipboard
open fun getMethodOrFail(clazz: Class<*>, methodName: String, vararg params: Class<*>?): Method

Returns the method of a class or fails if it is not present.

Link copied to clipboard
open fun getRequiredFeatures(): MutableList<Class<out Feature>>
Link copied to clipboard
open override fun getURL(): String
Link copied to clipboard
open fun isInConfiguration(access: Feature.IsInConfigurationAccess): Boolean
Link copied to clipboard
open fun logging(): Logger
Link copied to clipboard
open fun onAnalysisExit(access: Feature.OnAnalysisExitAccess)
Link copied to clipboard
open fun registerClassForReflection(access: Feature.FeatureAccess, name: String)

Registers an entire class for reflection use.

Link copied to clipboard
open fun registerClassHierarchyForReflection(access: Feature.FeatureAccess, className: String)

Registers the transitive class hierarchy of the provided className for reflection.

Link copied to clipboard
open fun registerConstructorsForReflection(access: Feature.FeatureAccess, name: String)

Registers all constructors of a class for reflection.

Link copied to clipboard
open fun registerForReflectiveInstantiation(access: Feature.FeatureAccess, className: String)

Registers a class for reflective construction via its default constructor.

Link copied to clipboard
open fun registerForUnsafeFieldAccess(access: Feature.FeatureAccess, className: String, vararg fields: String)

Registers a class for unsafe reflective field access.

Link copied to clipboard
open fun registerPackageForReflection(access: Feature.FeatureAccess, packageName: String)

Registers all the classes under the specified package for reflection.