Unverified Commit dcc7cfe4 authored by Oleksandr Karpovich's avatar Oleksandr Karpovich Committed by GitHub

Add js exports generation (#844)

* Use compiler plugin to generate setup.mjs

* Include generation of setup.mjs into build pipeline

* Add support of TestHelpers to generation

* add mavenCentral repo

* Refactoring

---------
Co-authored-by: 's avatarIlya Goncharov <ilya.goncharov@jetbrains.com>
Co-authored-by: 's avatarOleksandr.Karpovich <a.n.karpovich@gmail.com>
parent 63dbbb7e
......@@ -12,6 +12,9 @@ plugins {
id("org.gradle.crypto.checksum") version "1.4.0"
}
apply<WasmImportsGeneratorCompilerPluginSupportPlugin>()
apply<WasmImportsGeneratorForTestCompilerPluginSupportPlugin>()
val coroutinesVersion = "1.8.0-RC"
val atomicfuVersion = "0.23.1"
......@@ -24,6 +27,7 @@ val targetArch = skiko.targetArch
val skikoProjectContext = SkikoProjectContext(
project = project,
skiko = skiko,
kotlin = kotlin,
windowsSdkPathProvider = {
findWindowsSdkPaths(gradle, targetArch)
},
......@@ -99,7 +103,9 @@ kotlin {
}
generateVersion(OS.Wasm, Arch.Wasm, skiko)
val main by compilations.getting
val test by compilations.getting
val linkWasmTasks = skikoProjectContext.createWasmLinkTasks()
project.tasks.named<Copy>(test.processResourcesTaskName) {
from(linkWasmTasks.linkWasm!!) {
......@@ -109,7 +115,12 @@ kotlin {
from(linkWasmTasks.linkWasmWithES6!!) {
include("*.mjs")
}
from(skikoTestMjs)
dependsOn(test.compileTaskProvider)
}
setupImportsGeneratorPlugin()
}
}
......@@ -224,6 +235,10 @@ kotlin {
}
val wasmJsTest by getting {
dependsOn(jsWasmTest)
dependencies {
implementation(kotlin("test-wasm-js"))
}
}
}
}
......@@ -554,4 +569,4 @@ tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinNativeCompile>().configur
tasks.withType<org.jetbrains.kotlin.gradle.dsl.KotlinCompile<*>>().configureEach {
kotlinOptions.freeCompilerArgs += "-Xexpect-actual-classes"
}
\ No newline at end of file
}
......@@ -5,11 +5,13 @@ import org.gradle.api.provider.Provider
import org.gradle.api.tasks.Copy
import org.gradle.api.tasks.TaskProvider
import org.gradle.api.tasks.bundling.Jar
import org.jetbrains.kotlin.gradle.dsl.KotlinMultiplatformExtension
import java.io.File
class SkikoProjectContext(
val project: Project,
val skiko: SkikoProperties,
val kotlin: KotlinMultiplatformExtension,
val windowsSdkPathProvider: () -> WindowsSdkPaths,
val createChecksumsTask: (OS, Arch, Provider<File>) -> TaskProvider<*>
) {
......
import org.gradle.api.Project
val Project.wasmImports
get() = buildDir.resolve("imports")
val Project.setupMjs
get() = wasmImports.resolve("setup.mjs")
val Project.skikoTestMjs
get() = wasmImports.resolve("skiko-test.mjs")
const val IMPORT_GENERATOR = "import-generator"
\ No newline at end of file
......@@ -2,20 +2,29 @@ package tasks.configuration
import Arch
import CompileSkikoCppTask
import IMPORT_GENERATOR
import LinkSkikoWasmTask
import OS
import SkikoProjectContext
import compilerForTarget
import linkerForTarget
import org.gradle.api.Project
import org.gradle.api.provider.Provider
import org.gradle.api.tasks.TaskProvider
import org.gradle.api.tasks.bundling.Jar
import org.gradle.kotlin.dsl.getValue
import org.gradle.kotlin.dsl.getting
import org.gradle.kotlin.dsl.provideDelegate
import org.gradle.kotlin.dsl.registering
import org.jetbrains.kotlin.gradle.plugin.*
import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinWasmJsTargetDsl
import projectDirs
import registerOrGetSkiaDirProvider
import setupMjs
import skikoTestMjs
import supportJs
import supportWasm
import java.io.File
data class LinkWasmTasks(
val linkWasm: TaskProvider<LinkSkikoWasmTask>?,
......@@ -56,7 +65,7 @@ fun SkikoProjectContext.createWasmLinkTasks(): LinkWasmTasks = with(this.project
)
}
val configureCommon: LinkSkikoWasmTask.(outputES6: Boolean) -> Unit = { outputES6 ->
val configureCommon: LinkSkikoWasmTask.(outputES6: Boolean, prefixPath: String) -> Unit = { outputES6, prefixPath ->
val osArch = OS.Wasm to Arch.Wasm
dependsOn(compileWasm)
......@@ -74,7 +83,6 @@ fun SkikoProjectContext.createWasmLinkTasks(): LinkWasmTasks = with(this.project
include("**/*.o")
}
val jsFileExtension = if (outputES6) "mjs" else "js"
val wasmFileName = if (outputES6) {
"skikomjs.wasm"
} else {
......@@ -91,7 +99,7 @@ fun SkikoProjectContext.createWasmLinkTasks(): LinkWasmTasks = with(this.project
skikoJsPrefix.from(
// the order matters
project.layout.projectDirectory.file("src/jsWasmMain/resources/skikoCallbacks.js"),
project.layout.projectDirectory.file("src/jsWasmMain/resources/setup.$jsFileExtension")
project.layout.projectDirectory.file(prefixPath)
)
@OptIn(kotlin.ExperimentalStdlibApi::class)
......@@ -147,12 +155,15 @@ fun SkikoProjectContext.createWasmLinkTasks(): LinkWasmTasks = with(this.project
}
val linkWasmWithES6 by tasks.registering(LinkSkikoWasmTask::class) {
configureCommon(true)
val wasmJsTarget = kotlin.wasmJs()
val main by wasmJsTarget.compilations
dependsOn(main.compileTaskProvider)
configureCommon(true, setupMjs.normalize().absolutePath)
}
val linkWasm by tasks.registering(LinkSkikoWasmTask::class) {
dependsOn(linkWasmWithES6)
configureCommon(false)
configureCommon(false, "src/jsWasmMain/resources/setup.js")
}
// skikoWasmJar is used by task name
......@@ -178,4 +189,68 @@ fun SkikoProjectContext.createWasmLinkTasks(): LinkWasmTasks = with(this.project
}
return LinkWasmTasks(linkWasm, linkWasmWithES6)
}
abstract class AbstractImportGeneratorCompilerPluginSupportPlugin(
val compilationName: String,
val outputFileProvider: (Project) -> File,
val prefixFileProvider: (Project) -> File
) : KotlinCompilerPluginSupportPlugin {
override fun applyToCompilation(kotlinCompilation: KotlinCompilation<*>): Provider<List<SubpluginOption>> {
val project = kotlinCompilation.target.project
val outputFile = outputFileProvider(project)
val prefixFile = prefixFileProvider(project)
return project.provider {
listOf(
SubpluginOption("import-generator-path", outputFile.normalize().absolutePath),
SubpluginOption("import-generator-prefix", prefixFile.normalize().absolutePath)
)
}
}
override fun getCompilerPluginId() = "org.jetbrains.skiko.imports.generator"
override fun getPluginArtifact(): SubpluginArtifact =
SubpluginArtifact(SkikoArtifacts.groupId, IMPORT_GENERATOR)
override fun isApplicable(kotlinCompilation: KotlinCompilation<*>): Boolean {
return kotlinCompilation.platformType == KotlinPlatformType.wasm
&& kotlinCompilation.name == compilationName
}
}
class WasmImportsGeneratorCompilerPluginSupportPlugin : AbstractImportGeneratorCompilerPluginSupportPlugin(
KotlinCompilation.MAIN_COMPILATION_NAME,
{ it.setupMjs },
{ it.projectDir.resolve("src/jsWasmMain/resources/pre-setup.mjs") }
)
class WasmImportsGeneratorForTestCompilerPluginSupportPlugin : AbstractImportGeneratorCompilerPluginSupportPlugin(
KotlinCompilation.TEST_COMPILATION_NAME,
{ it.skikoTestMjs },
{ it.projectDir.resolve("src/jsWasmMain/resources/pre-skiko-test.mjs") }
)
fun KotlinWasmJsTargetDsl.setupImportsGeneratorPlugin() {
val main by compilations.getting
val test by compilations.getting
main.compileTaskProvider.configure {
outputs.file(project.setupMjs)
}
test.compileTaskProvider.configure {
outputs.file(project.skikoTestMjs)
}
listOf(main, test).forEach {
// By default, it will try to use the same version as kotlin, because we use version=null in getPluginArtifact.
// But we don't publish the artifact, therefore we substitute it for project dependency.
it.configurations.pluginConfiguration.resolutionStrategy.dependencySubstitution {
substitute(module("${SkikoArtifacts.groupId}:$IMPORT_GENERATOR"))
.using(project(":import-generator"))
}
}
}
\ No newline at end of file
val kspVersion: String by project
plugins {
kotlin("multiplatform")
}
repositories {
mavenCentral()
}
kotlin {
jvm()
sourceSets {
val jvmMain by getting {
dependencies {
compileOnly(kotlin("compiler-embeddable"))
}
}
}
}
\ No newline at end of file
package org.jetbrains.skiko
import org.jetbrains.kotlin.compiler.plugin.*
import org.jetbrains.kotlin.config.CompilerConfiguration
import org.jetbrains.skiko.ImportGeneratorConfigurationKeys.PATH
import org.jetbrains.skiko.ImportGeneratorConfigurationKeys.PREFIX
@OptIn(ExperimentalCompilerApi::class)
class ImportGeneratorCommandLineProcessor : CommandLineProcessor {
override val pluginId = "org.jetbrains.skiko.imports.generator"
override val pluginOptions = listOf(PATH_OPTION, PREFIX_OPTION)
override fun processOption(option: AbstractCliOption, value: String, configuration: CompilerConfiguration) =
when (option) {
PATH_OPTION -> configuration.put(PATH, value)
PREFIX_OPTION -> configuration.put(PREFIX, value)
else -> throw CliOptionProcessingException("Unknown option: ${option.optionName}")
}
companion object {
val PATH_OPTION = CliOption(
PATH_OPTION_NAME, "<path>",
"path",
required = true, allowMultipleOccurrences = false
)
val PREFIX_OPTION = CliOption(
PREFIX_OPTION_NAME, "<path>",
"prefix",
required = false, allowMultipleOccurrences = false
)
}
}
\ No newline at end of file
package org.jetbrains.skiko
import org.jetbrains.kotlin.config.CompilerConfigurationKey
object ImportGeneratorConfigurationKeys {
val PATH: CompilerConfigurationKey<String> = CompilerConfigurationKey.create(
PATH_OPTION_NAME
)
val PREFIX: CompilerConfigurationKey<String> = CompilerConfigurationKey.create(
PREFIX_OPTION_NAME
)
}
\ No newline at end of file
package org.jetbrains.skiko
import org.jetbrains.kotlin.backend.common.extensions.IrGenerationExtension
import org.jetbrains.kotlin.backend.common.extensions.IrPluginContext
import org.jetbrains.kotlin.ir.declarations.IrModuleFragment
import java.io.File
internal class ImportGeneratorExtension(
private val path: String,
private val prefix: String?
) : IrGenerationExtension {
override fun generate(
moduleFragment: IrModuleFragment,
pluginContext: IrPluginContext,
) {
val outputFile = File(path)
outputFile.parentFile.mkdirs()
val prefixFile = prefix?.let { File(it) }
outputFile.writer().use { writer ->
prefixFile?.let { writer.appendLine(it.readText()) }
writer.appendLine("export const {")
moduleFragment.transformChildren(ImportGeneratorTransformer(), writer)
writer.appendLine("} = loadedWasm.wasmExports;")
}
}
}
\ No newline at end of file
package org.jetbrains.skiko
import org.jetbrains.kotlin.backend.common.extensions.IrGenerationExtension
import org.jetbrains.kotlin.compiler.plugin.CompilerPluginRegistrar
import org.jetbrains.kotlin.compiler.plugin.ExperimentalCompilerApi
import org.jetbrains.kotlin.config.CompilerConfiguration
@OptIn(ExperimentalCompilerApi::class)
class ImportGeneratorRegistrar : CompilerPluginRegistrar() {
override val supportsK2: Boolean = true
override fun ExtensionStorage.registerExtensions(
configuration: CompilerConfiguration,
) {
IrGenerationExtension.registerExtension(
ImportGeneratorExtension(
configuration.get(ImportGeneratorConfigurationKeys.PATH)!!,
configuration.get(ImportGeneratorConfigurationKeys.PREFIX)
)
)
}
}
\ No newline at end of file
package org.jetbrains.skiko
import org.jetbrains.kotlin.ir.IrStatement
import org.jetbrains.kotlin.ir.declarations.IrFunction
import org.jetbrains.kotlin.ir.expressions.IrConst
import org.jetbrains.kotlin.ir.util.getAnnotation
import org.jetbrains.kotlin.ir.util.getValueArgument
import org.jetbrains.kotlin.ir.visitors.IrElementTransformer
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.Name
import java.io.OutputStreamWriter
internal class ImportGeneratorTransformer : IrElementTransformer<OutputStreamWriter> {
override fun visitFunction(declaration: IrFunction, data: OutputStreamWriter): IrStatement {
return super.visitFunction(declaration, data).apply {
val wasmImportAnnotation = declaration.getAnnotation(FqName("kotlin.wasm.WasmImport"))
?: return@apply
@Suppress("UNCHECKED_CAST")
val const = wasmImportAnnotation.getValueArgument(Name.identifier("name")) as IrConst<String>
data.appendLine(" ${const.value},")
}
}
}
\ No newline at end of file
package org.jetbrains.skiko
const val PATH_OPTION_NAME = "import-generator-path"
const val PREFIX_OPTION_NAME = "import-generator-prefix"
\ No newline at end of file
org.jetbrains.skiko.ImportGeneratorCommandLineProcessor
\ No newline at end of file
......@@ -23,3 +23,4 @@ pluginManagement {
}
rootProject.name = "skiko"
include("ci")
include("import-generator")
......@@ -80,57 +80,57 @@ class TestHelpers {
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nFillByteArrayOf5")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillByteArrayOf5")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillByteArrayOf5")
private external fun _nFillByteArrayOf5(interopPointer: InteropPointer)
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nFillFloatArrayOf5")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillFloatArrayOf5")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillFloatArrayOf5")
private external fun _nFillFloatArrayOf5(interopPointer: InteropPointer)
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nFillShortArrayOf5")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillShortArrayOf5")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillShortArrayOf5")
private external fun _nFillShortArrayOf5(interopPointer: InteropPointer)
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nFillIntArrayOf5")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillIntArrayOf5")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillIntArrayOf5")
private external fun _nFillIntArrayOf5(interopPointer: InteropPointer)
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nFillDoubleArrayOf5")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillDoubleArrayOf5")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nFillDoubleArrayOf5")
private external fun _nFillDoubleArrayOf5(interopPointer: InteropPointer)
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nWriteArraysOfInts")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nWriteArraysOfInts")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nWriteArraysOfInts")
private external fun _nWriteArraysOfInts(interopPointer: InteropPointer): NativePointer
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__nStringByIndex")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__nStringByIndex")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__nStringByIndex")
private external fun _nStringByIndex(index: Int): NativePointer
internal fun nativeStringByIndex(index: Int): NativePointer = _nStringByIndex(index)
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nCreateTestGlContext")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nCreateTestGlContext")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nCreateTestGlContext")
private external fun TestGlContext_nCreate(): NativePointer
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nGlContextGetFinalizer")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nGlContextGetFinalizer")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nGlContextGetFinalizer")
private external fun TestGlContext_nGetFinalizer(): NativePointer
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nMakeGlContextCurrent")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nMakeGlContextCurrent")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nMakeGlContextCurrent")
private external fun TestGlContext_nMakeCurrent(ptr: NativePointer)
@Suppress("OPTIONAL_DECLARATION_USAGE_IN_NON_COMMON_SOURCE") // See KT-44014
@ExternalSymbolName("org_jetbrains_skiko_tests_TestHelpers__1nGlContextSwapBuffers")
@ModuleImport("./skiko.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nGlContextSwapBuffers")
@ModuleImport("./skiko-test.mjs", "org_jetbrains_skiko_tests_TestHelpers__1nGlContextSwapBuffers")
private external fun TestGlContext_nSwapBuffers(ptr: NativePointer)
// This file is merged with skiko.mjs by emcc")
export const {
_callCallback,
_registerCallback,
_releaseCallback,
_createLocalCallbackScope,
_releaseLocalCallbackScope
} = SkikoCallbacks;
export const loadedWasm = await loadSkikoWASM();
export const { GL } = loadedWasm;
\ No newline at end of file
import { loadedWasm } from "./skiko.mjs";
\ No newline at end of file
// This file is merged with skiko.mjs by emcc
export const { _callCallback, _registerCallback, _releaseCallback, _createLocalCallbackScope, _releaseLocalCallbackScope } = SkikoCallbacks;
const loadedWasm = await loadSkikoWASM()
export const { GL } = loadedWasm;
export const {
BackendRenderTarget_MakeDirect3D,
org_jetbrains_skia_BackendRenderTarget__1nMakeGL,
BackendRenderTarget_nMakeMetal,
org_jetbrains_skia_BackendRenderTarget__1nGetFinalizer,
org_jetbrains_skia_Bitmap__1nAllocPixels,
org_jetbrains_skia_Bitmap__1nAllocPixelsFlags,
org_jetbrains_skia_Bitmap__1nAllocPixelsRowBytes,
org_jetbrains_skia_Bitmap__1nComputeByteSize,
org_jetbrains_skia_Bitmap__1nComputeIsOpaque,
org_jetbrains_skia_Bitmap__1nErase,
org_jetbrains_skia_Bitmap__1nEraseColor,
org_jetbrains_skia_Bitmap__1nExtractAlpha,
org_jetbrains_skia_Bitmap__1nExtractSubset,
org_jetbrains_skia_Bitmap__1nGetAlphaf,
org_jetbrains_skia_Bitmap__1nGetGenerationId,
org_jetbrains_skia_Bitmap__1nGetImageInfo,
org_jetbrains_skia_Bitmap__1nGetPixelRef,
org_jetbrains_skia_Bitmap__1nGetPixelRefOriginX,
org_jetbrains_skia_Bitmap__1nGetPixelRefOriginY,
org_jetbrains_skia_Bitmap__1nGetPixmap,
org_jetbrains_skia_Bitmap__1nGetRowBytes,
org_jetbrains_skia_Bitmap__1nGetRowBytesAsPixels,
org_jetbrains_skia_Bitmap__1nInstallPixels,
org_jetbrains_skia_Bitmap__1nIsImmutable,
org_jetbrains_skia_Bitmap__1nIsNull,
org_jetbrains_skia_Bitmap__1nIsReadyToDraw,
org_jetbrains_skia_Bitmap__1nIsVolatile,
org_jetbrains_skia_Bitmap__1nMake,
org_jetbrains_skia_Bitmap__1nMakeClone,
org_jetbrains_skia_Bitmap__1nMakeShader,
org_jetbrains_skia_Bitmap__1nNotifyPixelsChanged,
org_jetbrains_skia_Bitmap__1nPeekPixels,
org_jetbrains_skia_Bitmap__1nReadPixels,
org_jetbrains_skia_Bitmap__1nReset,
org_jetbrains_skia_Bitmap__1nSetAlphaType,
org_jetbrains_skia_Bitmap__1nSetImageInfo,
org_jetbrains_skia_Bitmap__1nSetImmutable,
org_jetbrains_skia_Bitmap__1nSetPixelRef,
org_jetbrains_skia_Bitmap__1nSetVolatile,
org_jetbrains_skia_Bitmap__1nSwap,
org_jetbrains_skia_Bitmap__1nGetColor,
org_jetbrains_skia_Bitmap__1nGetFinalizer,
org_jetbrains_skia_BreakIterator__1nClone,
org_jetbrains_skia_BreakIterator__1nCurrent,
org_jetbrains_skia_BreakIterator__1nFirst,
org_jetbrains_skia_BreakIterator__1nFollowing,
org_jetbrains_skia_BreakIterator__1nGetRuleStatus,
org_jetbrains_skia_BreakIterator__1nGetRuleStatuses,
org_jetbrains_skia_BreakIterator__1nGetRuleStatusesLen,
org_jetbrains_skia_BreakIterator__1nIsBoundary,
org_jetbrains_skia_BreakIterator__1nLast,
org_jetbrains_skia_BreakIterator__1nMake,
org_jetbrains_skia_BreakIterator__1nNext,
org_jetbrains_skia_BreakIterator__1nPreceding,
org_jetbrains_skia_BreakIterator__1nPrevious,
org_jetbrains_skia_BreakIterator__1nSetText,
org_jetbrains_skia_BreakIterator__1nGetFinalizer,
org_jetbrains_skia_Canvas__1nClear,
org_jetbrains_skia_Canvas__1nClipPath,
org_jetbrains_skia_Canvas__1nClipRect,
org_jetbrains_skia_Canvas__1nClipRegion,
org_jetbrains_skia_Canvas__1nClipRRect,
org_jetbrains_skia_Canvas__1nConcat,
org_jetbrains_skia_Canvas__1nConcat44,
org_jetbrains_skia_Canvas__1nDrawArc,
org_jetbrains_skia_Canvas__1nDrawDrawable,
org_jetbrains_skia_Canvas__1nDrawDRRect,
org_jetbrains_skia_Canvas__1nDrawImageNine,
org_jetbrains_skia_Canvas__1nDrawImageRect,
org_jetbrains_skia_Canvas__1nDrawLine,
org_jetbrains_skia_Canvas__1nDrawOval,
org_jetbrains_skia_Canvas__1nDrawPaint,
org_jetbrains_skia_Canvas__1nDrawPatch,
org_jetbrains_skia_Canvas__1nDrawPath,
org_jetbrains_skia_Canvas__1nDrawPicture,
org_jetbrains_skia_Canvas__1nDrawPoint,
org_jetbrains_skia_Canvas__1nDrawPoints,
org_jetbrains_skia_Canvas__1nDrawRect,
org_jetbrains_skia_Canvas__1nDrawRegion,
org_jetbrains_skia_Canvas__1nDrawRRect,
org_jetbrains_skia_Canvas__1nDrawString,
org_jetbrains_skia_Canvas__1nDrawTextBlob,
org_jetbrains_skia_Canvas__1nDrawVertices,
org_jetbrains_skia_Canvas__1nGetLocalToDevice,
org_jetbrains_skia_Canvas__1nGetSaveCount,
org_jetbrains_skia_Canvas__1nMakeFromBitmap,
org_jetbrains_skia_Canvas__1nReadPixels,
org_jetbrains_skia_Canvas__1nResetMatrix,
org_jetbrains_skia_Canvas__1nRestore,
org_jetbrains_skia_Canvas__1nRestoreToCount,
org_jetbrains_skia_Canvas__1nRotate,
org_jetbrains_skia_Canvas__1nSave,
org_jetbrains_skia_Canvas__1nSaveLayer,
org_jetbrains_skia_Canvas__1nSaveLayerRect,
org_jetbrains_skia_Canvas__1nScale,
org_jetbrains_skia_Canvas__1nSetMatrix,
org_jetbrains_skia_Canvas__1nSkew,
org_jetbrains_skia_Canvas__1nTranslate,
org_jetbrains_skia_Canvas__1nWritePixels,
org_jetbrains_skia_Canvas__1nGetFinalizer,
org_jetbrains_skia_Codec__1nGetEncodedImageFormat,
org_jetbrains_skia_Codec__1nGetEncodedOrigin,
org_jetbrains_skia_Codec__1nGetFrameCount,
org_jetbrains_skia_Codec__1nGetFrameInfo,
org_jetbrains_skia_Codec__1nGetFramesInfo,
org_jetbrains_skia_Codec__1nGetRepetitionCount,
org_jetbrains_skia_Codec__1nGetSizeHeight,
org_jetbrains_skia_Codec__1nGetSizeWidth,
org_jetbrains_skia_Codec__1nMakeFromData,
org_jetbrains_skia_Codec__1nGetFinalizer,
org_jetbrains_skia_Codec__1nGetImageInfo,
org_jetbrains_skia_Codec__1nReadPixels,
org_jetbrains_skia_Codec__1nFramesInfo_Delete,
org_jetbrains_skia_Codec__1nFramesInfo_GetInfos,
org_jetbrains_skia_Codec__1nFramesInfo_GetSize,
org_jetbrains_skia_ColorFilter__1nGetLinearToSRGBGamma,
org_jetbrains_skia_ColorFilter__1nGetLuma,
org_jetbrains_skia_ColorFilter__1nGetSRGBToLinearGamma,
org_jetbrains_skia_ColorFilter__1nMakeBlend,
org_jetbrains_skia_ColorFilter__1nMakeComposed,
org_jetbrains_skia_ColorFilter__1nMakeHighContrast,
org_jetbrains_skia_ColorFilter__1nMakeHSLAMatrix,
org_jetbrains_skia_ColorFilter__1nMakeLerp,
org_jetbrains_skia_ColorFilter__1nMakeLighting,
org_jetbrains_skia_ColorFilter__1nMakeMatrix,
org_jetbrains_skia_ColorFilter__1nMakeOverdraw,
org_jetbrains_skia_ColorFilter__1nMakeTable,
org_jetbrains_skia_ColorFilter__1nMakeTableARGB,
org_jetbrains_skia_ColorSpace__nConvert,
org_jetbrains_skia_ColorSpace__1nIsGammaCloseToSRGB,
org_jetbrains_skia_ColorSpace__1nIsGammaLinear,
org_jetbrains_skia_ColorSpace__1nIsSRGB,
org_jetbrains_skia_ColorSpace__1nMakeDisplayP3,
org_jetbrains_skia_ColorSpace__1nMakeSRGB,
org_jetbrains_skia_ColorSpace__1nMakeSRGBLinear,
org_jetbrains_skia_ColorSpace__1nGetFinalizer,
org_jetbrains_skia_ColorType__1nIsAlwaysOpaque,
org_jetbrains_skia_Data__1nBytes,
org_jetbrains_skia_Data__1nEquals,
org_jetbrains_skia_Data__1nMakeEmpty,
org_jetbrains_skia_Data__1nMakeFromBytes,
org_jetbrains_skia_Data__1nMakeFromFileName,
org_jetbrains_skia_Data__1nMakeSubset,
org_jetbrains_skia_Data__1nMakeUninitialized,
org_jetbrains_skia_Data__1nMakeWithoutCopy,
org_jetbrains_skia_Data__1nSize,
org_jetbrains_skia_Data__1nWritableData,
org_jetbrains_skia_Data__1nGetFinalizer,
org_jetbrains_skia_DirectContext__1nAbandon,
org_jetbrains_skia_DirectContext__1nMakeDirect3D,
org_jetbrains_skia_DirectContext__1nMakeGL,
org_jetbrains_skia_DirectContext__1nMakeMetal,
org_jetbrains_skia_DirectContext__1nReset,
org_jetbrains_skia_DirectContext__1nSubmit,
org_jetbrains_skia_DirectContext__1nFlush,
org_jetbrains_skia_Drawable__1nDraw,
org_jetbrains_skia_Drawable__1nGetOnDrawCanvas,
org_jetbrains_skia_Drawable__1nMakePictureSnapshot,
org_jetbrains_skia_Drawable__1nNotifyDrawingChanged,
org_jetbrains_skia_Drawable__1nSetBounds,
org_jetbrains_skia_Drawable__1nGetBounds,
org_jetbrains_skia_Drawable__1nGetFinalizer,
org_jetbrains_skia_Drawable__1nGetGenerationId,
org_jetbrains_skia_Drawable__1nInit,
org_jetbrains_skia_Drawable__1nMake,
org_jetbrains_skia_Font__1nAreBitmapsEmbedded,
org_jetbrains_skia_Font__1nAreMetricsLinear,
org_jetbrains_skia_Font__1nGetBounds,
org_jetbrains_skia_Font__1nGetEdging,
org_jetbrains_skia_Font__1nGetHinting,
org_jetbrains_skia_Font__1nGetMetrics,
org_jetbrains_skia_Font__1nGetPath,
org_jetbrains_skia_Font__1nGetPaths,
org_jetbrains_skia_Font__1nGetPositions,
org_jetbrains_skia_Font__1nGetScaleX,
org_jetbrains_skia_Font__1nGetSkewX,
org_jetbrains_skia_Font__1nGetSpacing,
org_jetbrains_skia_Font__1nGetStringGlyphsCount,
org_jetbrains_skia_Font__1nGetTypeface,
org_jetbrains_skia_Font__1nGetTypefaceOrDefault,
org_jetbrains_skia_Font__1nGetUTF32Glyph,
org_jetbrains_skia_Font__1nGetUTF32Glyphs,
org_jetbrains_skia_Font__1nGetWidths,
org_jetbrains_skia_Font__1nGetXPositions,
org_jetbrains_skia_Font__1nIsAutoHintingForced,
org_jetbrains_skia_Font__1nIsBaselineSnapped,
org_jetbrains_skia_Font__1nIsEmboldened,
org_jetbrains_skia_Font__1nIsSubpixel,
org_jetbrains_skia_Font__1nMakeDefault,
org_jetbrains_skia_Font__1nMakeTypeface,
org_jetbrains_skia_Font__1nMakeTypefaceSize,
org_jetbrains_skia_Font__1nMakeTypefaceSizeScaleSkew,
org_jetbrains_skia_Font__1nMeasureText,
org_jetbrains_skia_Font__1nMeasureTextWidth,
org_jetbrains_skia_Font__1nSetAutoHintingForced,
org_jetbrains_skia_Font__1nSetBaselineSnapped,
org_jetbrains_skia_Font__1nSetBitmapsEmbedded,
org_jetbrains_skia_Font__1nSetEdging,
org_jetbrains_skia_Font__1nSetEmboldened,
org_jetbrains_skia_Font__1nSetHinting,
org_jetbrains_skia_Font__1nSetMetricsLinear,
org_jetbrains_skia_Font__1nSetScaleX,
org_jetbrains_skia_Font__1nSetSize,
org_jetbrains_skia_Font__1nSetSkewX,
org_jetbrains_skia_Font__1nSetSubpixel,
org_jetbrains_skia_Font__1nSetTypeface,
org_jetbrains_skia_Font__1nEquals,
org_jetbrains_skia_Font__1nGetFinalizer,
org_jetbrains_skia_Font__1nGetSize,
org_jetbrains_skia_Font__1nMakeClone,
org_jetbrains_skia_FontMgr__1nDefault,
org_jetbrains_skia_FontMgr__1nGetFamiliesCount,
org_jetbrains_skia_FontMgr__1nGetFamilyName,
org_jetbrains_skia_FontMgr__1nMakeFromData,
org_jetbrains_skia_FontMgr__1nMakeStyleSet,
org_jetbrains_skia_FontMgr__1nMatchFamily,
org_jetbrains_skia_FontMgr__1nMatchFamilyStyle,
org_jetbrains_skia_FontMgr__1nMatchFamilyStyleCharacter,
org_jetbrains_skia_FontStyleSet__1nCount,
org_jetbrains_skia_FontStyleSet__1nGetStyle,
org_jetbrains_skia_FontStyleSet__1nGetStyleName,
org_jetbrains_skia_FontStyleSet__1nGetTypeface,
org_jetbrains_skia_FontStyleSet__1nMatchStyle,
org_jetbrains_skia_FontStyleSet__1nMakeEmpty,
org_jetbrains_skia_GraphicsKt__1nGetFontCacheCountLimit,
org_jetbrains_skia_GraphicsKt__1nGetFontCacheCountUsed,
org_jetbrains_skia_GraphicsKt__1nGetFontCacheLimit,
org_jetbrains_skia_GraphicsKt__1nGetFontCacheUsed,
org_jetbrains_skia_GraphicsKt__1nGetResourceCacheSingleAllocationByteLimit,
org_jetbrains_skia_GraphicsKt__1nGetResourceCacheTotalByteLimit,
org_jetbrains_skia_GraphicsKt__1nGetResourceCacheTotalBytesUsed,
org_jetbrains_skia_GraphicsKt__1nPurgeAllCaches,
org_jetbrains_skia_GraphicsKt__1nPurgeFontCache,
org_jetbrains_skia_GraphicsKt__1nPurgeResourceCache,
org_jetbrains_skia_GraphicsKt__1nSetFontCacheCountLimit,
org_jetbrains_skia_GraphicsKt__1nSetFontCacheLimit,
org_jetbrains_skia_GraphicsKt__1nSetResourceCacheSingleAllocationByteLimit,
org_jetbrains_skia_GraphicsKt__1nSetResourceCacheTotalByteLimit,
org_jetbrains_skia_Image__1nEncodeToData,
org_jetbrains_skia_Image__1nMakeFromBitmap,
org_jetbrains_skia_Image__1nMakeFromEncoded,
org_jetbrains_skia_Image__1nMakeFromPixmap,
org_jetbrains_skia_Image__1nMakeRaster,
org_jetbrains_skia_Image__1nMakeRasterData,
org_jetbrains_skia_Image__1nPeekPixelsToPixmap,
org_jetbrains_skia_Image__1nReadPixelsBitmap,
org_jetbrains_skia_Image__1nReadPixelsPixmap,
org_jetbrains_skia_Image__1nScalePixels,
org_jetbrains_skia_Image__1nGetImageInfo,
org_jetbrains_skia_Image__1nMakeShader,
org_jetbrains_skia_Image__1nPeekPixels,
org_jetbrains_skia_ImageFilter__1nMakeArithmetic,
org_jetbrains_skia_ImageFilter__1nMakeBlend,
org_jetbrains_skia_ImageFilter__1nMakeBlur,
org_jetbrains_skia_ImageFilter__1nMakeColorFilter,
org_jetbrains_skia_ImageFilter__1nMakeCompose,
org_jetbrains_skia_ImageFilter__1nMakeDilate,
org_jetbrains_skia_ImageFilter__1nMakeDisplacementMap,
org_jetbrains_skia_ImageFilter__1nMakeDistantLitDiffuse,
org_jetbrains_skia_ImageFilter__1nMakeDistantLitSpecular,
org_jetbrains_skia_ImageFilter__1nMakeDropShadow,
org_jetbrains_skia_ImageFilter__1nMakeDropShadowOnly,
org_jetbrains_skia_ImageFilter__1nMakeErode,
org_jetbrains_skia_ImageFilter__1nMakeImage,
org_jetbrains_skia_ImageFilter__1nMakeMagnifier,
org_jetbrains_skia_ImageFilter__1nMakeMatrixConvolution,
org_jetbrains_skia_ImageFilter__1nMakeMatrixTransform,
org_jetbrains_skia_ImageFilter__1nMakeMerge,
org_jetbrains_skia_ImageFilter__1nMakeOffset,
org_jetbrains_skia_ImageFilter__1nMakePicture,
org_jetbrains_skia_ImageFilter__1nMakePointLitDiffuse,
org_jetbrains_skia_ImageFilter__1nMakePointLitSpecular,
org_jetbrains_skia_ImageFilter__1nMakeRuntimeShader,
org_jetbrains_skia_ImageFilter__1nMakeRuntimeShaderFromArray,
org_jetbrains_skia_ImageFilter__1nMakeShader,
org_jetbrains_skia_ImageFilter__1nMakeSpotLitDiffuse,
org_jetbrains_skia_ImageFilter__1nMakeSpotLitSpecular,
org_jetbrains_skia_ImageFilter__1nMakeTile,
org_jetbrains_skia_ManagedString__1nAppend,
org_jetbrains_skia_ManagedString__1nInsert,
org_jetbrains_skia_ManagedString__1nMake,
org_jetbrains_skia_ManagedString__1nRemove,
org_jetbrains_skia_ManagedString__1nRemoveSuffix,
org_jetbrains_skia_ManagedString__nStringData,
org_jetbrains_skia_ManagedString__nStringSize,
org_jetbrains_skia_ManagedString__1nGetFinalizer,
org_jetbrains_skia_MaskFilter__1nMakeBlur,
org_jetbrains_skia_MaskFilter__1nMakeClip,
org_jetbrains_skia_MaskFilter__1nMakeGamma,
org_jetbrains_skia_MaskFilter__1nMakeShader,
org_jetbrains_skia_MaskFilter__1nMakeTable,
org_jetbrains_skia_Paint__1nGetBlendMode,
org_jetbrains_skia_Paint__1nGetColor4f,
org_jetbrains_skia_Paint__1nGetColorFilter,
org_jetbrains_skia_Paint__1nGetImageFilter,
org_jetbrains_skia_Paint__1nGetMaskFilter,
org_jetbrains_skia_Paint__1nGetMode,
org_jetbrains_skia_Paint__1nGetPathEffect,
org_jetbrains_skia_Paint__1nGetShader,
org_jetbrains_skia_Paint__1nGetStrokeCap,
org_jetbrains_skia_Paint__1nGetStrokeJoin,
org_jetbrains_skia_Paint__1nGetStrokeMiter,
org_jetbrains_skia_Paint__1nGetStrokeWidth,
org_jetbrains_skia_Paint__1nHasNothingToDraw,
org_jetbrains_skia_Paint__1nIsAntiAlias,
org_jetbrains_skia_Paint__1nIsDither,
org_jetbrains_skia_Paint__1nSetAntiAlias,
org_jetbrains_skia_Paint__1nSetBlendMode,
org_jetbrains_skia_Paint__1nSetColor,
org_jetbrains_skia_Paint__1nSetColor4f,
org_jetbrains_skia_Paint__1nSetColorFilter,
org_jetbrains_skia_Paint__1nSetDither,
org_jetbrains_skia_Paint__1nSetImageFilter,
org_jetbrains_skia_Paint__1nSetMaskFilter,
org_jetbrains_skia_Paint__1nSetMode,
org_jetbrains_skia_Paint__1nSetPathEffect,
org_jetbrains_skia_Paint__1nSetShader,
org_jetbrains_skia_Paint__1nSetStrokeCap,
org_jetbrains_skia_Paint__1nSetStrokeJoin,
org_jetbrains_skia_Paint__1nSetStrokeMiter,
org_jetbrains_skia_Paint__1nSetStrokeWidth,
org_jetbrains_skia_Paint__1nEquals,
org_jetbrains_skia_Paint__1nGetColor,
org_jetbrains_skia_Paint__1nGetFinalizer,
org_jetbrains_skia_Paint__1nMake,
org_jetbrains_skia_Paint__1nMakeClone,
org_jetbrains_skia_Paint__1nReset,
org_jetbrains_skia_PaintFilterCanvas__1nGetOnFilterPaint,
org_jetbrains_skia_PaintFilterCanvas__1nInit,
org_jetbrains_skia_PaintFilterCanvas__1nMake,
org_jetbrains_skia_Path__1nAddArc,
org_jetbrains_skia_Path__1nAddCircle,
org_jetbrains_skia_Path__1nAddOval,
org_jetbrains_skia_Path__1nAddPath,
org_jetbrains_skia_Path__1nAddPathOffset,
org_jetbrains_skia_Path__1nAddPathTransform,
org_jetbrains_skia_Path__1nAddPoly,
org_jetbrains_skia_Path__1nAddRect,
org_jetbrains_skia_Path__1nAddRRect,
org_jetbrains_skia_Path__1nApproximateBytesUsed,
org_jetbrains_skia_Path__1nArcTo,
org_jetbrains_skia_Path__1nClosePath,
org_jetbrains_skia_Path__1nComputeTightBounds,
org_jetbrains_skia_Path__1nConicTo,
org_jetbrains_skia_Path__1nConservativelyContainsRect,
org_jetbrains_skia_Path__1nContains,
org_jetbrains_skia_Path__1nConvertConicToQuads,
org_jetbrains_skia_Path__1nCountVerbs,
org_jetbrains_skia_Path__1nCubicTo,
org_jetbrains_skia_Path__1nDump,
org_jetbrains_skia_Path__1nDumpHex,
org_jetbrains_skia_Path__1nEllipticalArcTo,
org_jetbrains_skia_Path__1nGetBounds,
org_jetbrains_skia_Path__1nGetFillMode,
org_jetbrains_skia_Path__1nGetLastPt,
org_jetbrains_skia_Path__1nGetPoint,
org_jetbrains_skia_Path__1nGetPoints,
org_jetbrains_skia_Path__1nGetPointsCount,
org_jetbrains_skia_Path__1nGetSegmentMasks,
org_jetbrains_skia_Path__1nGetVerbs,
org_jetbrains_skia_Path__1nIncReserve,
org_jetbrains_skia_Path__1nIsConvex,
org_jetbrains_skia_Path__1nIsCubicDegenerate,
org_jetbrains_skia_Path__1nIsEmpty,
org_jetbrains_skia_Path__1nIsFinite,
org_jetbrains_skia_Path__1nIsInterpolatable,
org_jetbrains_skia_Path__1nIsLastContourClosed,
org_jetbrains_skia_Path__1nIsLineDegenerate,
org_jetbrains_skia_Path__1nIsOval,
org_jetbrains_skia_Path__1nIsQuadDegenerate,
org_jetbrains_skia_Path__1nIsRect,
org_jetbrains_skia_Path__1nIsRRect,
org_jetbrains_skia_Path__1nIsValid,
org_jetbrains_skia_Path__1nLineTo,
org_jetbrains_skia_Path__1nMakeCombining,
org_jetbrains_skia_Path__1nMakeFromBytes,
org_jetbrains_skia_Path__1nMakeFromSVGString,
org_jetbrains_skia_Path__1nMakeLerp,
org_jetbrains_skia_Path__1nMaybeGetAsLine,
org_jetbrains_skia_Path__1nMoveTo,
org_jetbrains_skia_Path__1nOffset,
org_jetbrains_skia_Path__1nQuadTo,
org_jetbrains_skia_Path__1nRConicTo,
org_jetbrains_skia_Path__1nRCubicTo,
org_jetbrains_skia_Path__1nREllipticalArcTo,
org_jetbrains_skia_Path__1nReverseAddPath,
org_jetbrains_skia_Path__1nRewind,
org_jetbrains_skia_Path__1nRLineTo,
org_jetbrains_skia_Path__1nRMoveTo,
org_jetbrains_skia_Path__1nRQuadTo,
org_jetbrains_skia_Path__1nSerializeToBytes,
org_jetbrains_skia_Path__1nSetFillMode,
org_jetbrains_skia_Path__1nSetLastPt,
org_jetbrains_skia_Path__1nTangentArcTo,
org_jetbrains_skia_Path__1nTransform,
org_jetbrains_skia_Path__1nUpdateBoundsCache,
org_jetbrains_skia_Path__1nEquals,
org_jetbrains_skia_Path__1nGetFinalizer,
org_jetbrains_skia_Path__1nGetGenerationId,
org_jetbrains_skia_Path__1nIsVolatile,
org_jetbrains_skia_Path__1nMake,
org_jetbrains_skia_Path__1nReset,
org_jetbrains_skia_Path__1nSetVolatile,
org_jetbrains_skia_Path__1nSwap,
org_jetbrains_skia_PathEffect__1nMakeCorner,
org_jetbrains_skia_PathEffect__1nMakeDash,
org_jetbrains_skia_PathEffect__1nMakeDiscrete,
org_jetbrains_skia_PathEffect__1nMakeLine2D,
org_jetbrains_skia_PathEffect__1nMakePath1D,
org_jetbrains_skia_PathEffect__1nMakePath2D,
org_jetbrains_skia_PathEffect__1nMakeSum,
org_jetbrains_skia_PathEffect__1nMakeCompose,
org_jetbrains_skia_PathMeasure__1nGetLength,
org_jetbrains_skia_PathMeasure__1nGetMatrix,
org_jetbrains_skia_PathMeasure__1nGetPosition,
org_jetbrains_skia_PathMeasure__1nGetRSXform,
org_jetbrains_skia_PathMeasure__1nGetSegment,
org_jetbrains_skia_PathMeasure__1nGetTangent,
org_jetbrains_skia_PathMeasure__1nIsClosed,
org_jetbrains_skia_PathMeasure__1nMakePath,
org_jetbrains_skia_PathMeasure__1nNextContour,
org_jetbrains_skia_PathMeasure__1nSetPath,
org_jetbrains_skia_PathMeasure__1nGetFinalizer,
org_jetbrains_skia_PathMeasure__1nMake,
org_jetbrains_skia_PathSegmentIterator__1nMake,
org_jetbrains_skia_PathSegmentIterator__1nGetFinalizer,
org_jetbrains_skia_PathSegmentIterator__1nNext,
org_jetbrains_skia_PathUtils__1nFillPathWithPaint,
org_jetbrains_skia_PathUtils__1nFillPathWithPaintCull,
org_jetbrains_skia_Picture__1nGetApproximateBytesUsed,
org_jetbrains_skia_Picture__1nGetApproximateOpCount,
org_jetbrains_skia_Picture__1nGetCullRect,
org_jetbrains_skia_Picture__1nGetUniqueId,
org_jetbrains_skia_Picture__1nMakePlaceholder,
org_jetbrains_skia_Picture__1nMakeShader,
org_jetbrains_skia_Picture__1nPlayback,
org_jetbrains_skia_Picture__1nSerializeToData,
org_jetbrains_skia_Picture__1nMakeFromData,
org_jetbrains_skia_PictureRecorder__1nBeginRecording,
org_jetbrains_skia_PictureRecorder__1nFinishRecordingAsDrawable,
org_jetbrains_skia_PictureRecorder__1nFinishRecordingAsPicture,
org_jetbrains_skia_PictureRecorder__1nFinishRecordingAsPictureWithCull,
org_jetbrains_skia_PictureRecorder__1nGetRecordingCanvas,
org_jetbrains_skia_PictureRecorder__1nGetFinalizer,
org_jetbrains_skia_PictureRecorder__1nMake,
org_jetbrains_skia_PixelRef__1nGetHeight,
org_jetbrains_skia_PixelRef__1nGetWidth,
org_jetbrains_skia_PixelRef__1nGetGenerationId,
org_jetbrains_skia_PixelRef__1nGetRowBytes,
org_jetbrains_skia_PixelRef__1nIsImmutable,
org_jetbrains_skia_PixelRef__1nNotifyPixelsChanged,
org_jetbrains_skia_PixelRef__1nSetImmutable,
org_jetbrains_skia_Pixmap__1nErase,
org_jetbrains_skia_Pixmap__1nEraseSubset,
org_jetbrains_skia_Pixmap__1nGetAddr,
org_jetbrains_skia_Pixmap__1nGetAddrAt,
org_jetbrains_skia_Pixmap__1nGetAlphaF,
org_jetbrains_skia_Pixmap__1nGetInfo,
org_jetbrains_skia_Pixmap__1nMakeNull,
org_jetbrains_skia_Pixmap__1nReadPixels,
org_jetbrains_skia_Pixmap__1nReadPixelsFromPoint,
org_jetbrains_skia_Pixmap__1nReadPixelsToPixmap,
org_jetbrains_skia_Pixmap__1nReadPixelsToPixmapFromPoint,
org_jetbrains_skia_Pixmap__1nResetWithInfo,
org_jetbrains_skia_Pixmap__1nScalePixels,
org_jetbrains_skia_Pixmap__1nSetColorSpace,
org_jetbrains_skia_Pixmap__1nComputeByteSize,
org_jetbrains_skia_Pixmap__1nComputeIsOpaque,
org_jetbrains_skia_Pixmap__1nExtractSubset,
org_jetbrains_skia_Pixmap__1nGetColor,
org_jetbrains_skia_Pixmap__1nGetFinalizer,
org_jetbrains_skia_Pixmap__1nGetRowBytes,
org_jetbrains_skia_Pixmap__1nGetRowBytesAsPixels,
org_jetbrains_skia_Pixmap__1nMake,
org_jetbrains_skia_Pixmap__1nReset,
org_jetbrains_skia_Region__1nComputeRegionComplexity,
org_jetbrains_skia_Region__1nContainsIPoint,
org_jetbrains_skia_Region__1nContainsIRect,
org_jetbrains_skia_Region__1nContainsRegion,
org_jetbrains_skia_Region__1nGetBoundaryPath,
org_jetbrains_skia_Region__1nGetBounds,
org_jetbrains_skia_Region__1nGetFinalizer,
org_jetbrains_skia_Region__1nIntersectsIRect,
org_jetbrains_skia_Region__1nIntersectsRegion,
org_jetbrains_skia_Region__1nIsComplex,
org_jetbrains_skia_Region__1nIsEmpty,
org_jetbrains_skia_Region__1nIsRect,
org_jetbrains_skia_Region__1nMake,
org_jetbrains_skia_Region__1nOpIRect,
org_jetbrains_skia_Region__1nOpIRectRegion,
org_jetbrains_skia_Region__1nOpRegion,
org_jetbrains_skia_Region__1nOpRegionIRect,
org_jetbrains_skia_Region__1nOpRegionRegion,
org_jetbrains_skia_Region__1nQuickContains,
org_jetbrains_skia_Region__1nQuickRejectIRect,
org_jetbrains_skia_Region__1nQuickRejectRegion,
org_jetbrains_skia_Region__1nSet,
org_jetbrains_skia_Region__1nSetEmpty,
org_jetbrains_skia_Region__1nSetPath,
org_jetbrains_skia_Region__1nSetRect,
org_jetbrains_skia_Region__1nSetRects,
org_jetbrains_skia_Region__1nSetRegion,
org_jetbrains_skia_Region__1nTranslate,
org_jetbrains_skia_RuntimeEffect__1nMakeForColorFilter,
org_jetbrains_skia_RuntimeEffect__1nMakeForShader,
org_jetbrains_skia_RuntimeEffect__1nMakeShader,
org_jetbrains_skia_RuntimeEffect__1Result_nDestroy,
org_jetbrains_skia_RuntimeEffect__1Result_nGetError,
org_jetbrains_skia_RuntimeEffect__1Result_nGetPtr,
org_jetbrains_skia_RuntimeShaderBuilder__1nChildColorFilter,
org_jetbrains_skia_RuntimeShaderBuilder__1nChildShader,
org_jetbrains_skia_RuntimeShaderBuilder__1nMakeFromRuntimeEffect,
org_jetbrains_skia_RuntimeShaderBuilder__1nMakeShader,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformFloat,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformFloat2,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformFloat3,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformFloat4,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformFloatMatrix22,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformFloatMatrix33,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformFloatMatrix44,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformInt,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformInt2,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformInt3,
org_jetbrains_skia_RuntimeShaderBuilder__1nUniformInt4,
org_jetbrains_skia_RuntimeShaderBuilder__1nGetFinalizer,
org_jetbrains_skia_Shader__1nMakeBlend,
org_jetbrains_skia_Shader__1nMakeColor,
org_jetbrains_skia_Shader__1nMakeColorCS,
org_jetbrains_skia_Shader__1nMakeFractalNoise,
org_jetbrains_skia_Shader__1nMakeLinearGradient,
org_jetbrains_skia_Shader__1nMakeLinearGradientCS,
org_jetbrains_skia_Shader__1nMakeRadialGradient,
org_jetbrains_skia_Shader__1nMakeRadialGradientCS,
org_jetbrains_skia_Shader__1nMakeSweepGradient,
org_jetbrains_skia_Shader__1nMakeSweepGradientCS,
org_jetbrains_skia_Shader__1nMakeTurbulence,
org_jetbrains_skia_Shader__1nMakeTwoPointConicalGradient,
org_jetbrains_skia_Shader__1nMakeTwoPointConicalGradientCS,
org_jetbrains_skia_Shader__1nMakeWithColorFilter,
org_jetbrains_skia_Shader__1nMakeEmpty,
org_jetbrains_skia_ShadowUtils__1nComputeTonalAmbientColor,
org_jetbrains_skia_ShadowUtils__1nComputeTonalSpotColor,
org_jetbrains_skia_ShadowUtils__1nDrawShadow,
org_jetbrains_skia_StdVectorDecoder__1nDisposeArray,
org_jetbrains_skia_StdVectorDecoder__1nGetArraySize,
org_jetbrains_skia_StdVectorDecoder__1nReleaseElement,
org_jetbrains_skia_Surface__1nDraw,
org_jetbrains_skia_Surface__1nFlushAndSubmit,
org_jetbrains_skia_Surface__1nGenerationId,
org_jetbrains_skia_Surface__1nGetCanvas,
org_jetbrains_skia_Surface__1nGetRecordingContext,
org_jetbrains_skia_Surface__1nMakeFromBackendRenderTarget,
org_jetbrains_skia_Surface__1nMakeFromMTKView,
org_jetbrains_skia_Surface__1nMakeImageSnapshot,
org_jetbrains_skia_Surface__1nMakeImageSnapshotR,
org_jetbrains_skia_Surface__1nMakeNull,
org_jetbrains_skia_Surface__1nMakeRaster,
org_jetbrains_skia_Surface__1nMakeRasterDirect,
org_jetbrains_skia_Surface__1nMakeRasterDirectWithPixmap,
org_jetbrains_skia_Surface__1nMakeRasterN32Premul,
org_jetbrains_skia_Surface__1nMakeRenderTarget,
org_jetbrains_skia_Surface__1nMakeSurface,
org_jetbrains_skia_Surface__1nMakeSurfaceI,
org_jetbrains_skia_Surface__1nNotifyContentWillChange,
org_jetbrains_skia_Surface__1nPeekPixels,
org_jetbrains_skia_Surface__1nReadPixelsToPixmap,
org_jetbrains_skia_Surface__1nUnique,
org_jetbrains_skia_Surface__1nWritePixelsFromPixmap,
org_jetbrains_skia_Surface__1nFlush,
org_jetbrains_skia_Surface__1nGetHeight,
org_jetbrains_skia_Surface__1nGetImageInfo,
org_jetbrains_skia_Surface__1nGetWidth,
org_jetbrains_skia_Surface__1nReadPixels,
org_jetbrains_skia_Surface__1nWritePixels,
org_jetbrains_skia_TextBlob__1nBounds,
org_jetbrains_skia_TextBlob__1nGetBlockBounds,
org_jetbrains_skia_TextBlob__1nGetClusters,
org_jetbrains_skia_TextBlob__1nGetClustersLength,
org_jetbrains_skia_TextBlob__1nGetFirstBaseline,
org_jetbrains_skia_TextBlob__1nGetGlyphs,
org_jetbrains_skia_TextBlob__1nGetGlyphsLength,
org_jetbrains_skia_TextBlob__1nGetIntercepts,
org_jetbrains_skia_TextBlob__1nGetInterceptsLength,
org_jetbrains_skia_TextBlob__1nGetLastBaseline,
org_jetbrains_skia_TextBlob__1nGetPositions,
org_jetbrains_skia_TextBlob__1nGetPositionsLength,
org_jetbrains_skia_TextBlob__1nGetTightBounds,
org_jetbrains_skia_TextBlob__1nMakeFromPos,
org_jetbrains_skia_TextBlob__1nMakeFromPosH,
org_jetbrains_skia_TextBlob__1nMakeFromRSXform,
org_jetbrains_skia_TextBlob_Iter__1nCreate,
org_jetbrains_skia_TextBlob_Iter__1nFetch,
org_jetbrains_skia_TextBlob_Iter__1nGetFinalizer,
org_jetbrains_skia_TextBlob_Iter__1nGetGlyphCount,
org_jetbrains_skia_TextBlob_Iter__1nGetGlyphs,
org_jetbrains_skia_TextBlob_Iter__1nGetTypeface,
org_jetbrains_skia_TextBlob_Iter__1nHasNext,
org_jetbrains_skia_TextBlob__1nGetFinalizer,
org_jetbrains_skia_TextBlob__1nGetUniqueId,
org_jetbrains_skia_TextBlob__1nMakeFromData,
org_jetbrains_skia_TextBlob__1nSerializeToData,
org_jetbrains_skia_TextBlobBuilder__1nAppendRun,
org_jetbrains_skia_TextBlobBuilder__1nAppendRunPos,
org_jetbrains_skia_TextBlobBuilder__1nAppendRunPosH,
org_jetbrains_skia_TextBlobBuilder__1nAppendRunRSXform,
org_jetbrains_skia_TextBlobBuilder__1nBuild,
org_jetbrains_skia_TextBlobBuilder__1nGetFinalizer,
org_jetbrains_skia_TextBlobBuilder__1nMake,
org_jetbrains_skia_TextLine__1nGetAscent,
org_jetbrains_skia_TextLine__1nGetBreakOffsets,
org_jetbrains_skia_TextLine__1nGetBreakOffsetsCount,
org_jetbrains_skia_TextLine__1nGetBreakPositions,
org_jetbrains_skia_TextLine__1nGetBreakPositionsCount,
org_jetbrains_skia_TextLine__1nGetCapHeight,
org_jetbrains_skia_TextLine__1nGetCoordAtOffset,
org_jetbrains_skia_TextLine__1nGetDescent,
org_jetbrains_skia_TextLine__1nGetLeading,
org_jetbrains_skia_TextLine__1nGetLeftOffsetAtCoord,
org_jetbrains_skia_TextLine__1nGetOffsetAtCoord,
org_jetbrains_skia_TextLine__1nGetRunPositions,
org_jetbrains_skia_TextLine__1nGetRunPositionsCount,
org_jetbrains_skia_TextLine__1nGetTextBlob,
org_jetbrains_skia_TextLine__1nGetXHeight,
org_jetbrains_skia_TextLine__1nGetFinalizer,
org_jetbrains_skia_TextLine__1nGetGlyphs,
org_jetbrains_skia_TextLine__1nGetGlyphsLength,
org_jetbrains_skia_TextLine__1nGetHeight,
org_jetbrains_skia_TextLine__1nGetPositions,
org_jetbrains_skia_TextLine__1nGetWidth,
org_jetbrains_skia_Typeface__1nGetFamilyName,
org_jetbrains_skia_Typeface__1nGetFamilyNames,
org_jetbrains_skia_Typeface__1nGetFontStyle,
org_jetbrains_skia_Typeface__1nGetGlyphsCount,
org_jetbrains_skia_Typeface__1nGetKerningPairAdjustments,
org_jetbrains_skia_Typeface__1nGetTableData,
org_jetbrains_skia_Typeface__1nGetTablesCount,
org_jetbrains_skia_Typeface__1nGetTableSize,
org_jetbrains_skia_Typeface__1nGetTableTags,
org_jetbrains_skia_Typeface__1nGetTableTagsCount,
org_jetbrains_skia_Typeface__1nGetUnitsPerEm,
org_jetbrains_skia_Typeface__1nGetVariationAxes,
org_jetbrains_skia_Typeface__1nGetVariationAxesCount,
org_jetbrains_skia_Typeface__1nGetVariations,
org_jetbrains_skia_Typeface__1nGetVariationsCount,
org_jetbrains_skia_Typeface__1nIsFixedPitch,
org_jetbrains_skia_Typeface__1nMakeClone,
org_jetbrains_skia_Typeface__1nMakeFromData,
org_jetbrains_skia_Typeface__1nMakeFromFile,
org_jetbrains_skia_Typeface__1nMakeFromName,
org_jetbrains_skia_Typeface__1nEquals,
org_jetbrains_skia_Typeface__1nGetBounds,
org_jetbrains_skia_Typeface__1nGetUniqueId,
org_jetbrains_skia_Typeface__1nGetUTF32Glyph,
org_jetbrains_skia_Typeface__1nGetUTF32Glyphs,
org_jetbrains_skia_Typeface__1nMakeDefault,
org_jetbrains_skia_U16String__1nGetFinalizer,
org_jetbrains_skia_icu_Unicode_charDirection,
org_jetbrains_skia_paragraph_FontCollection__1nDefaultFallback,
org_jetbrains_skia_paragraph_FontCollection__1nDefaultFallbackChar,
org_jetbrains_skia_paragraph_FontCollection__1nFindTypefaces,
org_jetbrains_skia_paragraph_FontCollection__1nGetFallbackManager,
org_jetbrains_skia_paragraph_FontCollection__1nGetFontManagersCount,
org_jetbrains_skia_paragraph_FontCollection__1nGetParagraphCache,
org_jetbrains_skia_paragraph_FontCollection__1nMake,
org_jetbrains_skia_paragraph_FontCollection__1nSetAssetFontManager,
org_jetbrains_skia_paragraph_FontCollection__1nSetDefaultFontManager,
org_jetbrains_skia_paragraph_FontCollection__1nSetDynamicFontManager,
org_jetbrains_skia_paragraph_FontCollection__1nSetEnableFallback,
org_jetbrains_skia_paragraph_FontCollection__1nSetTestFontManager,
org_jetbrains_skia_paragraph_LineMetrics__1nDisposeArray,
org_jetbrains_skia_paragraph_LineMetrics__1nGetArrayElement,
org_jetbrains_skia_paragraph_LineMetrics__1nGetArraySize,
org_jetbrains_skia_paragraph_Paragraph__1nDidExceedMaxLines,
org_jetbrains_skia_paragraph_Paragraph__1nGetAlphabeticBaseline,
org_jetbrains_skia_paragraph_Paragraph__1nGetGlyphPositionAtCoordinate,
org_jetbrains_skia_paragraph_Paragraph__1nGetHeight,
org_jetbrains_skia_paragraph_Paragraph__1nGetIdeographicBaseline,
org_jetbrains_skia_paragraph_Paragraph__1nGetLineMetrics,
org_jetbrains_skia_paragraph_Paragraph__1nGetLineNumber,
org_jetbrains_skia_paragraph_Paragraph__1nGetLongestLine,
org_jetbrains_skia_paragraph_Paragraph__1nGetMaxIntrinsicWidth,
org_jetbrains_skia_paragraph_Paragraph__1nGetMaxWidth,
org_jetbrains_skia_paragraph_Paragraph__1nGetMinIntrinsicWidth,
org_jetbrains_skia_paragraph_Paragraph__1nGetRectsForPlaceholders,
org_jetbrains_skia_paragraph_Paragraph__1nGetRectsForRange,
org_jetbrains_skia_paragraph_Paragraph__1nGetUnresolvedGlyphsCount,
org_jetbrains_skia_paragraph_Paragraph__1nGetWordBoundary,
org_jetbrains_skia_paragraph_Paragraph__1nLayout,
org_jetbrains_skia_paragraph_Paragraph__1nMarkDirty,
org_jetbrains_skia_paragraph_Paragraph__1nPaint,
org_jetbrains_skia_paragraph_Paragraph__1nUpdateAlignment,
org_jetbrains_skia_paragraph_Paragraph__1nUpdateBackgroundPaint,
org_jetbrains_skia_paragraph_Paragraph__1nUpdateFontSize,
org_jetbrains_skia_paragraph_Paragraph__1nUpdateForegroundPaint,
org_jetbrains_skia_paragraph_Paragraph__1nGetFinalizer,
org_jetbrains_skia_paragraph_ParagraphBuilder__1nAddPlaceholder,
org_jetbrains_skia_paragraph_ParagraphBuilder__1nAddText,
org_jetbrains_skia_paragraph_ParagraphBuilder__1nBuild,
org_jetbrains_skia_paragraph_ParagraphBuilder__1nMake,
org_jetbrains_skia_paragraph_ParagraphBuilder__1nPopStyle,
org_jetbrains_skia_paragraph_ParagraphBuilder__1nPushStyle,
org_jetbrains_skia_paragraph_ParagraphBuilder__1nGetFinalizer,
org_jetbrains_skia_paragraph_ParagraphCache__1nAbandon,
org_jetbrains_skia_paragraph_ParagraphCache__1nFindParagraph,
org_jetbrains_skia_paragraph_ParagraphCache__1nGetCount,
org_jetbrains_skia_paragraph_ParagraphCache__1nPrintStatistics,
org_jetbrains_skia_paragraph_ParagraphCache__1nReset,
org_jetbrains_skia_paragraph_ParagraphCache__1nSetEnabled,
org_jetbrains_skia_paragraph_ParagraphCache__1nUpdateParagraph,
org_jetbrains_skia_paragraph_ParagraphStyle__1nDisableHinting,
org_jetbrains_skia_paragraph_ParagraphStyle__1nEquals,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetAlignment,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetDirection,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetEdging,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetEffectiveAlignment,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetEllipsis,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetHeightMode,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetHinting,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetMaxLinesCount,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetStrutStyle,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetSubpixel,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetTextIndent,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetTextStyle,
org_jetbrains_skia_paragraph_ParagraphStyle__1nIsHintingEnabled,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetAlignment,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetDirection,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetEllipsis,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetFontRastrSettings,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetHeight,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetHeightMode,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetMaxLinesCount,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetStrutStyle,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetTextIndent,
org_jetbrains_skia_paragraph_ParagraphStyle__1nSetTextStyle,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetFinalizer,
org_jetbrains_skia_paragraph_ParagraphStyle__1nGetHeight,
org_jetbrains_skia_paragraph_ParagraphStyle__1nMake,
org_jetbrains_skia_paragraph_StrutStyle__1nGetFontFamilies,
org_jetbrains_skia_paragraph_StrutStyle__1nGetFontSize,
org_jetbrains_skia_paragraph_StrutStyle__1nGetFontStyle,
org_jetbrains_skia_paragraph_StrutStyle__1nGetLeading,
org_jetbrains_skia_paragraph_StrutStyle__1nIsEnabled,
org_jetbrains_skia_paragraph_StrutStyle__1nIsHalfLeading,
org_jetbrains_skia_paragraph_StrutStyle__1nIsHeightForced,
org_jetbrains_skia_paragraph_StrutStyle__1nIsHeightOverridden,
org_jetbrains_skia_paragraph_StrutStyle__1nSetFontSize,
org_jetbrains_skia_paragraph_StrutStyle__1nSetFontStyle,
org_jetbrains_skia_paragraph_StrutStyle__1nSetHalfLeading,
org_jetbrains_skia_paragraph_StrutStyle__1nSetHeightForced,
org_jetbrains_skia_paragraph_StrutStyle__1nSetHeightOverridden,
org_jetbrains_skia_paragraph_StrutStyle__1nSetLeading,
org_jetbrains_skia_paragraph_StrutStyle__1nEquals,
org_jetbrains_skia_paragraph_StrutStyle__1nGetFinalizer,
org_jetbrains_skia_paragraph_StrutStyle__1nGetHeight,
org_jetbrains_skia_paragraph_StrutStyle__1nMake,
org_jetbrains_skia_paragraph_StrutStyle__1nSetEnabled,
org_jetbrains_skia_paragraph_StrutStyle__1nSetFontFamilies,
org_jetbrains_skia_paragraph_StrutStyle__1nSetHeight,
org_jetbrains_skia_paragraph_TextBox__1nDisposeArray,
org_jetbrains_skia_paragraph_TextBox__1nGetArrayElement,
org_jetbrains_skia_paragraph_TextBox__1nGetArraySize,
org_jetbrains_skia_paragraph_TextStyle__1nAddFontFeature,
org_jetbrains_skia_paragraph_TextStyle__1nAddShadow,
org_jetbrains_skia_paragraph_TextStyle__1nAttributeEquals,
org_jetbrains_skia_paragraph_TextStyle__1nClearFontFeatures,
org_jetbrains_skia_paragraph_TextStyle__1nClearShadows,
org_jetbrains_skia_paragraph_TextStyle__1nGetBackground,
org_jetbrains_skia_paragraph_TextStyle__1nGetBaselineMode,
org_jetbrains_skia_paragraph_TextStyle__1nGetColor,
org_jetbrains_skia_paragraph_TextStyle__1nGetDecorationStyle,
org_jetbrains_skia_paragraph_TextStyle__1nGetFontFeatures,
org_jetbrains_skia_paragraph_TextStyle__1nGetFontFeaturesSize,
org_jetbrains_skia_paragraph_TextStyle__1nGetFontMetrics,
org_jetbrains_skia_paragraph_TextStyle__1nGetForeground,
org_jetbrains_skia_paragraph_TextStyle__1nGetLetterSpacing,
org_jetbrains_skia_paragraph_TextStyle__1nGetLocale,
org_jetbrains_skia_paragraph_TextStyle__1nGetShadows,
org_jetbrains_skia_paragraph_TextStyle__1nGetShadowsCount,
org_jetbrains_skia_paragraph_TextStyle__1nGetTypeface,
org_jetbrains_skia_paragraph_TextStyle__1nGetWordSpacing,
org_jetbrains_skia_paragraph_TextStyle__1nIsPlaceholder,
org_jetbrains_skia_paragraph_TextStyle__1nSetBackground,
org_jetbrains_skia_paragraph_TextStyle__1nSetBaselineMode,
org_jetbrains_skia_paragraph_TextStyle__1nSetColor,
org_jetbrains_skia_paragraph_TextStyle__1nSetDecorationStyle,
org_jetbrains_skia_paragraph_TextStyle__1nSetFontFamilies,
org_jetbrains_skia_paragraph_TextStyle__1nSetForeground,
org_jetbrains_skia_paragraph_TextStyle__1nSetLetterSpacing,
org_jetbrains_skia_paragraph_TextStyle__1nSetLocale,
org_jetbrains_skia_paragraph_TextStyle__1nSetPlaceholder,
org_jetbrains_skia_paragraph_TextStyle__1nSetTypeface,
org_jetbrains_skia_paragraph_TextStyle__1nSetWordSpacing,
org_jetbrains_skia_paragraph_TextStyle__1nEquals,
org_jetbrains_skia_paragraph_TextStyle__1nGetBaselineShift,
org_jetbrains_skia_paragraph_TextStyle__1nGetFinalizer,
org_jetbrains_skia_paragraph_TextStyle__1nGetFontFamilies,
org_jetbrains_skia_paragraph_TextStyle__1nGetFontSize,
org_jetbrains_skia_paragraph_TextStyle__1nGetFontStyle,
org_jetbrains_skia_paragraph_TextStyle__1nGetHalfLeading,
org_jetbrains_skia_paragraph_TextStyle__1nGetHeight,
org_jetbrains_skia_paragraph_TextStyle__1nMake,
org_jetbrains_skia_paragraph_TextStyle__1nSetBaselineShift,
org_jetbrains_skia_paragraph_TextStyle__1nSetFontSize,
org_jetbrains_skia_paragraph_TextStyle__1nSetFontStyle,
org_jetbrains_skia_paragraph_TextStyle__1nSetHalfLeading,
org_jetbrains_skia_paragraph_TextStyle__1nSetHeight,
org_jetbrains_skia_paragraph_TypefaceFontProvider__1nRegisterTypeface,
org_jetbrains_skia_paragraph_TypefaceFontProvider__1nMake,
org_jetbrains_skia_shaper_FontMgrRunIterator__1nGetCurrentFont,
org_jetbrains_skia_shaper_FontMgrRunIterator__1nMake,
org_jetbrains_skia_shaper_HbIcuScriptRunIterator__1nGetCurrentScriptTag,
org_jetbrains_skia_shaper_HbIcuScriptRunIterator__1nMake,
org_jetbrains_skia_shaper_IcuBidiRunIterator__1nGetCurrentLevel,
org_jetbrains_skia_shaper_IcuBidiRunIterator__1nMake,
org_jetbrains_skia_shaper_ManagedRunIterator__1nConsume,
org_jetbrains_skia_shaper_ManagedRunIterator__1nGetEndOfCurrentRun,
org_jetbrains_skia_shaper_ManagedRunIterator__1nGetFinalizer,
org_jetbrains_skia_shaper_ManagedRunIterator__1nIsAtEnd,
org_jetbrains_skia_shaper_Shaper__1nMakeCoreText,
org_jetbrains_skia_shaper_Shaper__1nMakePrimitive,
org_jetbrains_skia_shaper_Shaper__1nMakeShapeDontWrapOrReorder,
org_jetbrains_skia_shaper_Shaper__1nMakeShaperDrivenWrapper,
org_jetbrains_skia_shaper_Shaper__1nMakeShapeThenWrap,
org_jetbrains_skia_shaper_Shaper__1nShapeBlob,
org_jetbrains_skia_shaper_Shaper__1nShapeLine,
org_jetbrains_skia_shaper_Shaper_RunHandler_1nCreate,
org_jetbrains_skia_shaper_Shaper_RunHandler_1nGetClusters,
org_jetbrains_skia_shaper_Shaper_RunHandler_1nGetFinalizer,
org_jetbrains_skia_shaper_Shaper_RunHandler_1nGetGlyphs,
org_jetbrains_skia_shaper_Shaper_RunHandler_1nGetPositions,
org_jetbrains_skia_shaper_Shaper_RunHandler_1nGetRunInfo,
org_jetbrains_skia_shaper_Shaper_RunHandler_1nInit,
org_jetbrains_skia_shaper_Shaper_RunHandler_1nSetOffset,
org_jetbrains_skia_shaper_Shaper_RunIterator_1nCreateRunIterator,
org_jetbrains_skia_shaper_Shaper_RunIterator_1nGetFinalizer,
org_jetbrains_skia_shaper_Shaper_RunIterator_1nInitRunIterator,
org_jetbrains_skia_shaper_Shaper__1nGetFinalizer,
org_jetbrains_skia_shaper_Shaper__1nMake,
org_jetbrains_skia_shaper_Shaper__1nShape,
org_jetbrains_skia_TextBlobBuilderRunHandler__1nMakeBlob,
org_jetbrains_skia_TextBlobBuilderRunHandler__1nGetFinalizer,
org_jetbrains_skia_TextBlobBuilderRunHandler__1nMake,
org_jetbrains_skia_skottie_Animation__1nGetDuration,
org_jetbrains_skia_skottie_Animation__1nGetFinalizer,
org_jetbrains_skia_skottie_Animation__1nGetFPS,
org_jetbrains_skia_skottie_Animation__1nGetInPoint,
org_jetbrains_skia_skottie_Animation__1nGetOutPoint,
org_jetbrains_skia_skottie_Animation__1nGetSize,
org_jetbrains_skia_skottie_Animation__1nGetVersion,
org_jetbrains_skia_skottie_Animation__1nMakeFromData,
org_jetbrains_skia_skottie_Animation__1nMakeFromFile,
org_jetbrains_skia_skottie_Animation__1nMakeFromString,
org_jetbrains_skia_skottie_Animation__1nRender,
org_jetbrains_skia_skottie_Animation__1nSeek,
org_jetbrains_skia_skottie_Animation__1nSeekFrame,
org_jetbrains_skia_skottie_Animation__1nSeekFrameTime,
org_jetbrains_skia_skottie_AnimationBuilder__1nBuildFromData,
org_jetbrains_skia_skottie_AnimationBuilder__1nBuildFromFile,
org_jetbrains_skia_skottie_AnimationBuilder__1nBuildFromString,
org_jetbrains_skia_skottie_AnimationBuilder__1nSetFontManager,
org_jetbrains_skia_skottie_AnimationBuilder__1nSetLogger,
org_jetbrains_skia_skottie_AnimationBuilder__1nGetFinalizer,
org_jetbrains_skia_skottie_AnimationBuilder__1nMake,
org_jetbrains_skia_skottie_Logger__1nMake,
org_jetbrains_skia_skottie_Logger__1nGetLogJson,
org_jetbrains_skia_skottie_Logger__1nGetLogLevel,
org_jetbrains_skia_skottie_Logger__1nGetLogMessage,
org_jetbrains_skia_skottie_Logger__1nInit,
org_jetbrains_skia_sksg_InvalidationController_nGetBounds,
org_jetbrains_skia_sksg_InvalidationController_nGetFinalizer,
org_jetbrains_skia_sksg_InvalidationController_nInvalidate,
org_jetbrains_skia_sksg_InvalidationController_nMake,
org_jetbrains_skia_sksg_InvalidationController_nReset,
org_jetbrains_skia_svg_SVGCanvasKt__1nMake,
org_jetbrains_skia_svg_SVGDOM__1nGetContainerSize,
org_jetbrains_skia_svg_SVGDOM__1nGetRoot,
org_jetbrains_skia_svg_SVGDOM__1nMakeFromData,
org_jetbrains_skia_svg_SVGDOM__1nRender,
org_jetbrains_skia_svg_SVGDOM__1nSetContainerSize,
org_jetbrains_skia_svg_SVGNode__1nGetTag,
org_jetbrains_skia_svg_SVGSVG__1nGetHeight,
org_jetbrains_skia_svg_SVGSVG__1nGetIntrinsicSize,
org_jetbrains_skia_svg_SVGSVG__1nGetPreserveAspectRatio,
org_jetbrains_skia_svg_SVGSVG__1nGetViewBox,
org_jetbrains_skia_svg_SVGSVG__1nGetWidth,
org_jetbrains_skia_svg_SVGSVG__1nGetX,
org_jetbrains_skia_svg_SVGSVG__1nGetY,
org_jetbrains_skia_svg_SVGSVG__1nSetHeight,
org_jetbrains_skia_svg_SVGSVG__1nSetPreserveAspectRatio,
org_jetbrains_skia_svg_SVGSVG__1nSetViewBox,
org_jetbrains_skia_svg_SVGSVG__1nSetWidth,
org_jetbrains_skia_svg_SVGSVG__1nSetX,
org_jetbrains_skia_svg_SVGSVG__1nSetY,
org_jetbrains_skiko_tests_TestHelpers__1nFillByteArrayOf5,
org_jetbrains_skiko_tests_TestHelpers__1nFillDoubleArrayOf5,
org_jetbrains_skiko_tests_TestHelpers__1nFillFloatArrayOf5,
org_jetbrains_skiko_tests_TestHelpers__1nFillIntArrayOf5,
org_jetbrains_skiko_tests_TestHelpers__1nFillShortArrayOf5,
org_jetbrains_skiko_tests_TestHelpers__nStringByIndex,
org_jetbrains_skiko_tests_TestHelpers__1nWriteArraysOfInts,
org_jetbrains_skiko_tests_TestHelpers__1nCreateTestGlContext,
org_jetbrains_skiko_tests_TestHelpers__1nGlContextGetFinalizer,
org_jetbrains_skiko_tests_TestHelpers__1nMakeGlContextCurrent,
org_jetbrains_skiko_tests_TestHelpers__1nGlContextSwapBuffers,
org_jetbrains_skia_impl_Managed__invokeFinalizer,
free,
malloc,
org_jetbrains_skia_impl_RefCnt__getRefCount,
org_jetbrains_skia_impl_RefCnt__getFinalizer,
org_jetbrains_skia_OutputWStream__1nMake,
org_jetbrains_skia_OutputWStream__1nGetFinalizer,
skia_memGetByte,
skia_memGetChar,
skia_memGetDouble,
skia_memGetFloat,
skia_memGetInt,
skia_memGetShort,
skia_memSetByte,
skia_memSetChar,
skia_memSetDouble,
skia_memSetFloat,
skia_memSetInt,
skia_memSetShort
} = loadedWasm.wasmExports;
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment