nucleation 0.10.22 → 0.10.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -0
- package/Schematic.d.mts +23 -0
- package/Schematic.d.ts +23 -0
- package/Schematic.mjs +70 -0
- package/nucleation.wasm +0 -0
- package/package.json +7 -2
- package/renderer/AnimationEffect.d.mts +44 -0
- package/renderer/AnimationEffect.d.ts +44 -0
- package/renderer/AnimationEffect.mjs +204 -0
- package/renderer/Autostack.d.mts +43 -0
- package/renderer/Autostack.d.ts +43 -0
- package/renderer/Autostack.mjs +134 -0
- package/renderer/BlockPos.d.mts +28 -0
- package/renderer/BlockPos.d.ts +28 -0
- package/renderer/BlockPos.mjs +130 -0
- package/renderer/BlockState.d.mts +39 -0
- package/renderer/BlockState.d.ts +39 -0
- package/renderer/BlockState.mjs +134 -0
- package/renderer/Blocks.d.mts +91 -0
- package/renderer/Blocks.d.ts +91 -0
- package/renderer/Blocks.mjs +308 -0
- package/renderer/Brush.d.mts +99 -0
- package/renderer/Brush.d.ts +99 -0
- package/renderer/Brush.mjs +335 -0
- package/renderer/BuildAnimation.d.mts +179 -0
- package/renderer/BuildAnimation.d.ts +179 -0
- package/renderer/BuildAnimation.mjs +1148 -0
- package/renderer/BuildingTool.d.mts +46 -0
- package/renderer/BuildingTool.d.ts +46 -0
- package/renderer/BuildingTool.mjs +121 -0
- package/renderer/CellExecutor.d.mts +51 -0
- package/renderer/CellExecutor.d.ts +51 -0
- package/renderer/CellExecutor.mjs +171 -0
- package/renderer/CellularSdfConfig.d.mts +22 -0
- package/renderer/CellularSdfConfig.d.ts +22 -0
- package/renderer/CellularSdfConfig.mjs +69 -0
- package/renderer/ChunkMeshResult.d.mts +75 -0
- package/renderer/ChunkMeshResult.d.ts +75 -0
- package/renderer/ChunkMeshResult.mjs +253 -0
- package/renderer/CircuitBuilder.d.mts +118 -0
- package/renderer/CircuitBuilder.d.ts +118 -0
- package/renderer/CircuitBuilder.mjs +516 -0
- package/renderer/Curve3D.d.mts +27 -0
- package/renderer/Curve3D.d.ts +27 -0
- package/renderer/Curve3D.mjs +101 -0
- package/renderer/DefinitionRegion.d.mts +274 -0
- package/renderer/DefinitionRegion.d.ts +274 -0
- package/renderer/DefinitionRegion.mjs +973 -0
- package/renderer/Design.d.mts +348 -0
- package/renderer/Design.d.ts +348 -0
- package/renderer/Design.mjs +1334 -0
- package/renderer/Diff.d.mts +88 -0
- package/renderer/Diff.d.ts +88 -0
- package/renderer/Diff.mjs +316 -0
- package/renderer/Dimensions.d.mts +28 -0
- package/renderer/Dimensions.d.ts +28 -0
- package/renderer/Dimensions.mjs +130 -0
- package/renderer/DistanceField.d.mts +39 -0
- package/renderer/DistanceField.d.ts +39 -0
- package/renderer/DistanceField.mjs +114 -0
- package/renderer/ExecutionMode.d.mts +42 -0
- package/renderer/ExecutionMode.d.ts +42 -0
- package/renderer/ExecutionMode.mjs +127 -0
- package/renderer/Field3.d.mts +40 -0
- package/renderer/Field3.d.ts +40 -0
- package/renderer/Field3.mjs +160 -0
- package/renderer/FieldProgram.d.mts +40 -0
- package/renderer/FieldProgram.d.ts +40 -0
- package/renderer/FieldProgram.mjs +167 -0
- package/renderer/FieldProgramBinaryOp.d.mts +42 -0
- package/renderer/FieldProgramBinaryOp.d.ts +42 -0
- package/renderer/FieldProgramBinaryOp.mjs +118 -0
- package/renderer/FieldProgramBuilder.d.mts +104 -0
- package/renderer/FieldProgramBuilder.d.ts +104 -0
- package/renderer/FieldProgramBuilder.mjs +486 -0
- package/renderer/FieldProgramDistanceKind.d.mts +26 -0
- package/renderer/FieldProgramDistanceKind.d.ts +26 -0
- package/renderer/FieldProgramDistanceKind.mjs +78 -0
- package/renderer/FieldProgramUnaryOp.d.mts +34 -0
- package/renderer/FieldProgramUnaryOp.d.ts +34 -0
- package/renderer/FieldProgramUnaryOp.mjs +102 -0
- package/renderer/FieldProgramValueType.d.mts +25 -0
- package/renderer/FieldProgramValueType.d.ts +25 -0
- package/renderer/FieldProgramValueType.mjs +75 -0
- package/renderer/FieldRange.d.mts +15 -0
- package/renderer/FieldRange.d.ts +15 -0
- package/renderer/FieldRange.mjs +109 -0
- package/renderer/Fingerprint.d.mts +44 -0
- package/renderer/Fingerprint.d.ts +44 -0
- package/renderer/Fingerprint.mjs +197 -0
- package/renderer/GeneratedChunk.d.mts +35 -0
- package/renderer/GeneratedChunk.d.ts +35 -0
- package/renderer/GeneratedChunk.mjs +178 -0
- package/renderer/GeneratedChunkCoverage.d.mts +25 -0
- package/renderer/GeneratedChunkCoverage.d.ts +25 -0
- package/renderer/GeneratedChunkCoverage.mjs +75 -0
- package/renderer/GeneratedChunkOverlayMode.d.mts +24 -0
- package/renderer/GeneratedChunkOverlayMode.d.ts +24 -0
- package/renderer/GeneratedChunkOverlayMode.mjs +72 -0
- package/renderer/GeneratedWorldStream.d.mts +28 -0
- package/renderer/GeneratedWorldStream.d.ts +28 -0
- package/renderer/GeneratedWorldStream.mjs +86 -0
- package/renderer/Geo.d.mts +41 -0
- package/renderer/Geo.d.ts +41 -0
- package/renderer/Geo.mjs +121 -0
- package/renderer/Hdl.d.mts +56 -0
- package/renderer/Hdl.d.ts +56 -0
- package/renderer/Hdl.mjs +163 -0
- package/renderer/InterpolationSpace.d.mts +25 -0
- package/renderer/InterpolationSpace.d.ts +25 -0
- package/renderer/InterpolationSpace.mjs +73 -0
- package/renderer/IoLayout.d.mts +26 -0
- package/renderer/IoLayout.d.ts +26 -0
- package/renderer/IoLayout.mjs +81 -0
- package/renderer/IoLayoutBuilder.d.mts +73 -0
- package/renderer/IoLayoutBuilder.d.ts +73 -0
- package/renderer/IoLayoutBuilder.mjs +315 -0
- package/renderer/IoType.d.mts +41 -0
- package/renderer/IoType.d.ts +41 -0
- package/renderer/IoType.mjs +125 -0
- package/renderer/ItemModelConfig.d.mts +65 -0
- package/renderer/ItemModelConfig.d.ts +65 -0
- package/renderer/ItemModelConfig.mjs +223 -0
- package/renderer/ItemModelPackBuilder.d.mts +32 -0
- package/renderer/ItemModelPackBuilder.d.ts +32 -0
- package/renderer/ItemModelPackBuilder.mjs +104 -0
- package/renderer/ItemModelResult.d.mts +72 -0
- package/renderer/ItemModelResult.d.ts +72 -0
- package/renderer/ItemModelResult.mjs +268 -0
- package/renderer/ItemScale.d.mts +31 -0
- package/renderer/ItemScale.d.ts +31 -0
- package/renderer/ItemScale.mjs +133 -0
- package/renderer/LayoutFunction.d.mts +52 -0
- package/renderer/LayoutFunction.d.ts +52 -0
- package/renderer/LayoutFunction.mjs +159 -0
- package/renderer/MchprsWorld.d.mts +131 -0
- package/renderer/MchprsWorld.d.ts +131 -0
- package/renderer/MchprsWorld.mjs +423 -0
- package/renderer/MeshBounds.d.mts +40 -0
- package/renderer/MeshBounds.d.ts +40 -0
- package/renderer/MeshBounds.mjs +181 -0
- package/renderer/MeshConfig.d.mts +101 -0
- package/renderer/MeshConfig.d.ts +101 -0
- package/renderer/MeshConfig.mjs +306 -0
- package/renderer/MeshJob.d.mts +44 -0
- package/renderer/MeshJob.d.ts +44 -0
- package/renderer/MeshJob.mjs +116 -0
- package/renderer/MeshPhase.d.mts +38 -0
- package/renderer/MeshPhase.d.ts +38 -0
- package/renderer/MeshPhase.mjs +90 -0
- package/renderer/MeshProgress.d.mts +32 -0
- package/renderer/MeshProgress.d.ts +32 -0
- package/renderer/MeshProgress.mjs +134 -0
- package/renderer/MeshResult.d.mts +76 -0
- package/renderer/MeshResult.d.ts +76 -0
- package/renderer/MeshResult.mjs +269 -0
- package/renderer/MultiMeshResult.d.mts +50 -0
- package/renderer/MultiMeshResult.d.ts +50 -0
- package/renderer/MultiMeshResult.mjs +166 -0
- package/renderer/Nbt.d.mts +50 -0
- package/renderer/Nbt.d.ts +50 -0
- package/renderer/Nbt.mjs +161 -0
- package/renderer/NucleationError.d.mts +53 -0
- package/renderer/NucleationError.d.ts +53 -0
- package/renderer/NucleationError.mjs +136 -0
- package/renderer/OutputCondition.d.mts +45 -0
- package/renderer/OutputCondition.d.ts +45 -0
- package/renderer/OutputCondition.mjs +129 -0
- package/renderer/Palette.d.mts +157 -0
- package/renderer/Palette.d.ts +157 -0
- package/renderer/Palette.mjs +487 -0
- package/renderer/PaletteBuilder.d.mts +119 -0
- package/renderer/PaletteBuilder.d.ts +119 -0
- package/renderer/PaletteBuilder.mjs +457 -0
- package/renderer/README.md +67 -0
- package/renderer/RawMeshExport.d.mts +74 -0
- package/renderer/RawMeshExport.d.ts +74 -0
- package/renderer/RawMeshExport.mjs +243 -0
- package/renderer/RedstoneGraph.d.mts +58 -0
- package/renderer/RedstoneGraph.d.ts +58 -0
- package/renderer/RedstoneGraph.mjs +242 -0
- package/renderer/RegionBounds.d.mts +41 -0
- package/renderer/RegionBounds.d.ts +41 -0
- package/renderer/RegionBounds.mjs +182 -0
- package/renderer/RenderConfig.d.mts +101 -0
- package/renderer/RenderConfig.d.ts +101 -0
- package/renderer/RenderConfig.mjs +271 -0
- package/renderer/Renderer.d.mts +51 -0
- package/renderer/Renderer.d.ts +51 -0
- package/renderer/Renderer.mjs +219 -0
- package/renderer/ResourcePack.d.mts +105 -0
- package/renderer/ResourcePack.d.ts +105 -0
- package/renderer/ResourcePack.mjs +447 -0
- package/renderer/ResourcePackList.d.mts +32 -0
- package/renderer/ResourcePackList.d.ts +32 -0
- package/renderer/ResourcePackList.mjs +96 -0
- package/renderer/Routing.d.mts +66 -0
- package/renderer/Routing.d.ts +66 -0
- package/renderer/Routing.mjs +220 -0
- package/renderer/Schematic.d.mts +977 -0
- package/renderer/Schematic.d.ts +977 -0
- package/renderer/Schematic.mjs +3820 -0
- package/renderer/SchematicBuilder.d.mts +103 -0
- package/renderer/SchematicBuilder.d.ts +103 -0
- package/renderer/SchematicBuilder.mjs +401 -0
- package/renderer/SchematicRegions.d.mts +93 -0
- package/renderer/SchematicRegions.d.ts +93 -0
- package/renderer/SchematicRegions.mjs +411 -0
- package/renderer/SchematicSplitResult.d.mts +26 -0
- package/renderer/SchematicSplitResult.d.ts +26 -0
- package/renderer/SchematicSplitResult.mjs +84 -0
- package/renderer/Scripting.d.mts +40 -0
- package/renderer/Scripting.d.ts +40 -0
- package/renderer/Scripting.mjs +138 -0
- package/renderer/Sdf.d.mts +234 -0
- package/renderer/Sdf.d.ts +234 -0
- package/renderer/Sdf.mjs +1234 -0
- package/renderer/SdfAxis.d.mts +25 -0
- package/renderer/SdfAxis.d.ts +25 -0
- package/renderer/SdfAxis.mjs +75 -0
- package/renderer/SdfBounds.d.mts +19 -0
- package/renderer/SdfBounds.d.ts +19 -0
- package/renderer/SdfBounds.mjs +161 -0
- package/renderer/SdfCellMode.d.mts +26 -0
- package/renderer/SdfCellMode.d.ts +26 -0
- package/renderer/SdfCellMode.mjs +78 -0
- package/renderer/SdfNormal.d.mts +16 -0
- package/renderer/SdfNormal.d.ts +16 -0
- package/renderer/SdfNormal.mjs +122 -0
- package/renderer/Shape.d.mts +143 -0
- package/renderer/Shape.d.ts +143 -0
- package/renderer/Shape.mjs +458 -0
- package/renderer/SortStrategy.d.mts +86 -0
- package/renderer/SortStrategy.d.ts +86 -0
- package/renderer/SortStrategy.mjs +272 -0
- package/renderer/Store.d.mts +83 -0
- package/renderer/Store.d.ts +83 -0
- package/renderer/Store.mjs +369 -0
- package/renderer/StoreIo.d.mts +71 -0
- package/renderer/StoreIo.d.ts +71 -0
- package/renderer/StoreIo.mjs +292 -0
- package/renderer/TextureAtlas.d.mts +40 -0
- package/renderer/TextureAtlas.d.ts +40 -0
- package/renderer/TextureAtlas.mjs +122 -0
- package/renderer/TextureInfo.d.mts +34 -0
- package/renderer/TextureInfo.d.ts +34 -0
- package/renderer/TextureInfo.mjs +149 -0
- package/renderer/TickSettleMode.d.mts +34 -0
- package/renderer/TickSettleMode.d.ts +34 -0
- package/renderer/TickSettleMode.mjs +84 -0
- package/renderer/TickSimulation.d.mts +572 -0
- package/renderer/TickSimulation.d.ts +572 -0
- package/renderer/TickSimulation.mjs +1299 -0
- package/renderer/TypedCircuitExecutor.d.mts +101 -0
- package/renderer/TypedCircuitExecutor.d.ts +101 -0
- package/renderer/TypedCircuitExecutor.mjs +378 -0
- package/renderer/Value.d.mts +73 -0
- package/renderer/Value.d.ts +73 -0
- package/renderer/Value.mjs +275 -0
- package/renderer/VideoConfig.d.mts +15 -0
- package/renderer/VideoConfig.d.ts +15 -0
- package/renderer/VideoConfig.mjs +44 -0
- package/renderer/VoxelModel.d.mts +34 -0
- package/renderer/VoxelModel.d.ts +34 -0
- package/renderer/VoxelModel.mjs +113 -0
- package/renderer/Voxelizer.d.mts +80 -0
- package/renderer/Voxelizer.d.ts +80 -0
- package/renderer/Voxelizer.mjs +261 -0
- package/renderer/WorldChunkView.d.mts +75 -0
- package/renderer/WorldChunkView.d.ts +75 -0
- package/renderer/WorldChunkView.mjs +224 -0
- package/renderer/WorldGenerator.d.mts +75 -0
- package/renderer/WorldGenerator.d.ts +75 -0
- package/renderer/WorldGenerator.mjs +255 -0
- package/renderer/WorldSink.d.mts +50 -0
- package/renderer/WorldSink.d.ts +50 -0
- package/renderer/WorldSink.mjs +177 -0
- package/renderer/WorldStream.d.mts +45 -0
- package/renderer/WorldStream.d.ts +45 -0
- package/renderer/WorldStream.mjs +184 -0
- package/renderer/WsPartitionHints.d.mts +29 -0
- package/renderer/WsPartitionHints.d.ts +29 -0
- package/renderer/WsPartitionHints.mjs +102 -0
- package/renderer/WsProfile.d.mts +46 -0
- package/renderer/WsProfile.d.ts +46 -0
- package/renderer/WsProfile.mjs +152 -0
- package/renderer/WsRunResult.d.mts +83 -0
- package/renderer/WsRunResult.d.ts +83 -0
- package/renderer/WsRunResult.mjs +326 -0
- package/renderer/WsSegmentJob.d.mts +28 -0
- package/renderer/WsSegmentJob.d.ts +28 -0
- package/renderer/WsSegmentJob.mjs +81 -0
- package/renderer/diplomat-runtime.d.mts +15 -0
- package/renderer/diplomat-runtime.d.ts +15 -0
- package/renderer/diplomat-runtime.mjs +779 -0
- package/renderer/diplomat-wasm.mjs +52 -0
- package/renderer/diplomat.config.mjs +5 -0
- package/renderer/index.d.mts +193 -0
- package/renderer/index.d.ts +193 -0
- package/renderer/index.mjs +196 -0
- package/renderer/nucleation.wasm +0 -0
- package/renderer/veneer/design.d.ts +167 -0
- package/renderer/veneer/design.mjs +480 -0
|
@@ -0,0 +1,486 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import { FieldProgram } from "./FieldProgram.mjs"
|
|
3
|
+
import { FieldProgramBinaryOp } from "./FieldProgramBinaryOp.mjs"
|
|
4
|
+
import { FieldProgramDistanceKind } from "./FieldProgramDistanceKind.mjs"
|
|
5
|
+
import { FieldProgramUnaryOp } from "./FieldProgramUnaryOp.mjs"
|
|
6
|
+
import { FieldProgramValueType } from "./FieldProgramValueType.mjs"
|
|
7
|
+
import { NucleationError } from "./NucleationError.mjs"
|
|
8
|
+
import wasm from "./diplomat-wasm.mjs";
|
|
9
|
+
import * as diplomatRuntime from "./diplomat-runtime.mjs";
|
|
10
|
+
|
|
11
|
+
const FieldProgramBuilder_box_destroy_registry = new FinalizationRegistry((ptr) => {
|
|
12
|
+
wasm.FieldProgramBuilder_destroy(ptr);
|
|
13
|
+
});
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Programmatic builder for a {@link FieldProgram}: append typed stack
|
|
17
|
+
* instructions, then {@link FieldProgramBuilder::build} to validate and
|
|
18
|
+
* obtain a {@link FieldProgram}. Consuming: every method after `build()`
|
|
19
|
+
* (successful or not) returns `AlreadyConsumed`.
|
|
20
|
+
*/
|
|
21
|
+
export class FieldProgramBuilder {
|
|
22
|
+
// Internal ptr reference:
|
|
23
|
+
#ptr = null;
|
|
24
|
+
|
|
25
|
+
// Lifetimes are only to keep dependencies alive.
|
|
26
|
+
// Since JS won't garbage collect until there are no incoming edges.
|
|
27
|
+
#selfEdge = [];
|
|
28
|
+
|
|
29
|
+
#internalConstructor(symbol, ptr, selfEdge) {
|
|
30
|
+
if (symbol !== diplomatRuntime.internalConstructor) {
|
|
31
|
+
console.error("FieldProgramBuilder is an Opaque type. You cannot call its constructor.");
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
this.#ptr = ptr;
|
|
35
|
+
this.#selfEdge = selfEdge;
|
|
36
|
+
|
|
37
|
+
// Are we being borrowed? If not, we can register.
|
|
38
|
+
if (this.#selfEdge.length === 0) {
|
|
39
|
+
FieldProgramBuilder_box_destroy_registry.register(this, this.#ptr);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
return this;
|
|
43
|
+
}
|
|
44
|
+
/** @internal */
|
|
45
|
+
get ffiValue() {
|
|
46
|
+
return this.#ptr;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
static create() {
|
|
51
|
+
|
|
52
|
+
const result = wasm.FieldProgramBuilder_create();
|
|
53
|
+
|
|
54
|
+
try {
|
|
55
|
+
return new FieldProgramBuilder(diplomatRuntime.internalConstructor, result, []);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
finally {
|
|
59
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Declare a new typed local slot and return its index.
|
|
65
|
+
*/
|
|
66
|
+
addSlot(valueType) {
|
|
67
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 2, true);
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
const result = wasm.FieldProgramBuilder_add_slot(diplomatReceive.buffer, this.ffiValue, valueType.ffiValue);
|
|
71
|
+
|
|
72
|
+
try {
|
|
73
|
+
if (!diplomatReceive.resultFlag) {
|
|
74
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
75
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
76
|
+
}
|
|
77
|
+
return (new Uint16Array(wasm.memory.buffer, diplomatReceive.buffer, 1))[0];
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
finally {
|
|
81
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
82
|
+
diplomatReceive.free();
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
pushConstScalar(value) {
|
|
87
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
const result = wasm.FieldProgramBuilder_push_const_scalar(diplomatReceive.buffer, this.ffiValue, value);
|
|
91
|
+
|
|
92
|
+
try {
|
|
93
|
+
if (!diplomatReceive.resultFlag) {
|
|
94
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
95
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
finally {
|
|
100
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
101
|
+
diplomatReceive.free();
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
pushConstVec3(x, y, z) {
|
|
106
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
const result = wasm.FieldProgramBuilder_push_const_vec3(diplomatReceive.buffer, this.ffiValue, x, y, z);
|
|
110
|
+
|
|
111
|
+
try {
|
|
112
|
+
if (!diplomatReceive.resultFlag) {
|
|
113
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
114
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
finally {
|
|
119
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
120
|
+
diplomatReceive.free();
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
pushConstBool(value) {
|
|
125
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
const result = wasm.FieldProgramBuilder_push_const_bool(diplomatReceive.buffer, this.ffiValue, value);
|
|
129
|
+
|
|
130
|
+
try {
|
|
131
|
+
if (!diplomatReceive.resultFlag) {
|
|
132
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
133
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
finally {
|
|
138
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
139
|
+
diplomatReceive.free();
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
/**
|
|
144
|
+
* Push the `Vec3` position the program is being evaluated at.
|
|
145
|
+
*/
|
|
146
|
+
pushPos() {
|
|
147
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
const result = wasm.FieldProgramBuilder_push_pos(diplomatReceive.buffer, this.ffiValue);
|
|
151
|
+
|
|
152
|
+
try {
|
|
153
|
+
if (!diplomatReceive.resultFlag) {
|
|
154
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
155
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
finally {
|
|
160
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
161
|
+
diplomatReceive.free();
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
loadLocal(slot) {
|
|
166
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
const result = wasm.FieldProgramBuilder_load_local(diplomatReceive.buffer, this.ffiValue, slot);
|
|
170
|
+
|
|
171
|
+
try {
|
|
172
|
+
if (!diplomatReceive.resultFlag) {
|
|
173
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
174
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
finally {
|
|
179
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
180
|
+
diplomatReceive.free();
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
storeLocal(slot) {
|
|
185
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
const result = wasm.FieldProgramBuilder_store_local(diplomatReceive.buffer, this.ffiValue, slot);
|
|
189
|
+
|
|
190
|
+
try {
|
|
191
|
+
if (!diplomatReceive.resultFlag) {
|
|
192
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
193
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
finally {
|
|
198
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
199
|
+
diplomatReceive.free();
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* Discard the top of the stack.
|
|
205
|
+
*/
|
|
206
|
+
pop() {
|
|
207
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
208
|
+
|
|
209
|
+
|
|
210
|
+
const result = wasm.FieldProgramBuilder_pop(diplomatReceive.buffer, this.ffiValue);
|
|
211
|
+
|
|
212
|
+
try {
|
|
213
|
+
if (!diplomatReceive.resultFlag) {
|
|
214
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
215
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
finally {
|
|
220
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
221
|
+
diplomatReceive.free();
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
unaryOp(op) {
|
|
226
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
const result = wasm.FieldProgramBuilder_unary_op(diplomatReceive.buffer, this.ffiValue, op.ffiValue);
|
|
230
|
+
|
|
231
|
+
try {
|
|
232
|
+
if (!diplomatReceive.resultFlag) {
|
|
233
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
234
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
finally {
|
|
239
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
240
|
+
diplomatReceive.free();
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
binaryOp(op) {
|
|
245
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
246
|
+
|
|
247
|
+
|
|
248
|
+
const result = wasm.FieldProgramBuilder_binary_op(diplomatReceive.buffer, this.ffiValue, op.ffiValue);
|
|
249
|
+
|
|
250
|
+
try {
|
|
251
|
+
if (!diplomatReceive.resultFlag) {
|
|
252
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
253
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
finally {
|
|
258
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
259
|
+
diplomatReceive.free();
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
/**
|
|
264
|
+
* Pop `(x, lo, hi)`, push `x` clamped to `[lo, hi]`.
|
|
265
|
+
*/
|
|
266
|
+
clamp() {
|
|
267
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
268
|
+
|
|
269
|
+
|
|
270
|
+
const result = wasm.FieldProgramBuilder_clamp(diplomatReceive.buffer, this.ffiValue);
|
|
271
|
+
|
|
272
|
+
try {
|
|
273
|
+
if (!diplomatReceive.resultFlag) {
|
|
274
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
275
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
finally {
|
|
280
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
281
|
+
diplomatReceive.free();
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
/**
|
|
286
|
+
* Pop `(a, b, cond)`, push `a` if `cond` else `b`.
|
|
287
|
+
*/
|
|
288
|
+
select() {
|
|
289
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
const result = wasm.FieldProgramBuilder_select(diplomatReceive.buffer, this.ffiValue);
|
|
293
|
+
|
|
294
|
+
try {
|
|
295
|
+
if (!diplomatReceive.resultFlag) {
|
|
296
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
297
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
finally {
|
|
302
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
303
|
+
diplomatReceive.free();
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
/**
|
|
308
|
+
* Pop `(x, y, z)`, push `Vec3([x, y, z])`.
|
|
309
|
+
*/
|
|
310
|
+
makeVec3() {
|
|
311
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
312
|
+
|
|
313
|
+
|
|
314
|
+
const result = wasm.FieldProgramBuilder_make_vec3(diplomatReceive.buffer, this.ffiValue);
|
|
315
|
+
|
|
316
|
+
try {
|
|
317
|
+
if (!diplomatReceive.resultFlag) {
|
|
318
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
319
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
finally {
|
|
324
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
325
|
+
diplomatReceive.free();
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
|
|
329
|
+
/**
|
|
330
|
+
* Pop a `Bool`; if true, stop the nearest enclosing repeat after
|
|
331
|
+
* this iteration. Only valid inside `beginRepeat`/`endRepeat`.
|
|
332
|
+
*/
|
|
333
|
+
breakIf() {
|
|
334
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
335
|
+
|
|
336
|
+
|
|
337
|
+
const result = wasm.FieldProgramBuilder_break_if(diplomatReceive.buffer, this.ffiValue);
|
|
338
|
+
|
|
339
|
+
try {
|
|
340
|
+
if (!diplomatReceive.resultFlag) {
|
|
341
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
342
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
finally {
|
|
347
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
348
|
+
diplomatReceive.free();
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
/**
|
|
353
|
+
* Open a new statically bounded repeat block; subsequent
|
|
354
|
+
* instructions append to its body until `endRepeat`.
|
|
355
|
+
*/
|
|
356
|
+
beginRepeat(count) {
|
|
357
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
const result = wasm.FieldProgramBuilder_begin_repeat(diplomatReceive.buffer, this.ffiValue, count);
|
|
361
|
+
|
|
362
|
+
try {
|
|
363
|
+
if (!diplomatReceive.resultFlag) {
|
|
364
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
365
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
finally {
|
|
370
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
371
|
+
diplomatReceive.free();
|
|
372
|
+
}
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
/**
|
|
376
|
+
* Close the innermost open repeat block.
|
|
377
|
+
*/
|
|
378
|
+
endRepeat() {
|
|
379
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
380
|
+
|
|
381
|
+
|
|
382
|
+
const result = wasm.FieldProgramBuilder_end_repeat(diplomatReceive.buffer, this.ffiValue);
|
|
383
|
+
|
|
384
|
+
try {
|
|
385
|
+
if (!diplomatReceive.resultFlag) {
|
|
386
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
387
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
|
|
391
|
+
finally {
|
|
392
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
393
|
+
diplomatReceive.free();
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
/**
|
|
398
|
+
* Declare which scalar slot holds the program's output.
|
|
399
|
+
*/
|
|
400
|
+
setOutput(slot) {
|
|
401
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
402
|
+
|
|
403
|
+
|
|
404
|
+
const result = wasm.FieldProgramBuilder_set_output(diplomatReceive.buffer, this.ffiValue, slot);
|
|
405
|
+
|
|
406
|
+
try {
|
|
407
|
+
if (!diplomatReceive.resultFlag) {
|
|
408
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
409
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
|
|
413
|
+
finally {
|
|
414
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
415
|
+
diplomatReceive.free();
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
|
|
419
|
+
/**
|
|
420
|
+
* Set the program's explicit, author-asserted finite bounds.
|
|
421
|
+
*/
|
|
422
|
+
setBounds(minX, minY, minZ, maxX, maxY, maxZ) {
|
|
423
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
const result = wasm.FieldProgramBuilder_set_bounds(diplomatReceive.buffer, this.ffiValue, minX, minY, minZ, maxX, maxY, maxZ);
|
|
427
|
+
|
|
428
|
+
try {
|
|
429
|
+
if (!diplomatReceive.resultFlag) {
|
|
430
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
431
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
|
|
435
|
+
finally {
|
|
436
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
437
|
+
diplomatReceive.free();
|
|
438
|
+
}
|
|
439
|
+
}
|
|
440
|
+
|
|
441
|
+
setDistanceKind(kind) {
|
|
442
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
443
|
+
|
|
444
|
+
|
|
445
|
+
const result = wasm.FieldProgramBuilder_set_distance_kind(diplomatReceive.buffer, this.ffiValue, kind.ffiValue);
|
|
446
|
+
|
|
447
|
+
try {
|
|
448
|
+
if (!diplomatReceive.resultFlag) {
|
|
449
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
450
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
451
|
+
}
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
finally {
|
|
455
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
456
|
+
diplomatReceive.free();
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
|
|
460
|
+
/**
|
|
461
|
+
* Validate and finalize. Consumes the builder even on failure.
|
|
462
|
+
*/
|
|
463
|
+
build() {
|
|
464
|
+
const diplomatReceive = new diplomatRuntime.DiplomatReceiveBuf(wasm, 5, 4, true);
|
|
465
|
+
|
|
466
|
+
|
|
467
|
+
const result = wasm.FieldProgramBuilder_build(diplomatReceive.buffer, this.ffiValue);
|
|
468
|
+
|
|
469
|
+
try {
|
|
470
|
+
if (!diplomatReceive.resultFlag) {
|
|
471
|
+
const cause = new NucleationError(diplomatRuntime.internalConstructor, diplomatRuntime.enumDiscriminant(wasm, diplomatReceive.buffer));
|
|
472
|
+
throw new globalThis.Error('NucleationError.' + cause.value, { cause });
|
|
473
|
+
}
|
|
474
|
+
return new FieldProgram(diplomatRuntime.internalConstructor, diplomatRuntime.ptrRead(wasm, diplomatReceive.buffer), []);
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
finally {
|
|
478
|
+
diplomatRuntime.FUNCTION_PARAM_ALLOC.clean();
|
|
479
|
+
diplomatReceive.free();
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
|
|
483
|
+
constructor(symbol, ptr, selfEdge) {
|
|
484
|
+
return this.#internalConstructor(...arguments)
|
|
485
|
+
}
|
|
486
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import type { pointer, codepoint } from "./diplomat-runtime.d.ts";
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* What kind of distance a field program's output represents.
|
|
8
|
+
*/
|
|
9
|
+
export class FieldProgramDistanceKind {
|
|
10
|
+
|
|
11
|
+
/** @internal */
|
|
12
|
+
static fromValue(value: FieldProgramDistanceKind | string): FieldProgramDistanceKind;
|
|
13
|
+
|
|
14
|
+
get value(): string;
|
|
15
|
+
|
|
16
|
+
/** @internal */
|
|
17
|
+
get ffiValue(): number;
|
|
18
|
+
|
|
19
|
+
static Exact : FieldProgramDistanceKind;
|
|
20
|
+
static LowerBound : FieldProgramDistanceKind;
|
|
21
|
+
static Estimate : FieldProgramDistanceKind;
|
|
22
|
+
static Implicit : FieldProgramDistanceKind;
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
constructor(value: FieldProgramDistanceKind | string );
|
|
26
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import type { pointer, codepoint } from "./diplomat-runtime.d.ts";
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* What kind of distance a field program's output represents.
|
|
8
|
+
*/
|
|
9
|
+
export class FieldProgramDistanceKind {
|
|
10
|
+
|
|
11
|
+
/** @internal */
|
|
12
|
+
static fromValue(value: FieldProgramDistanceKind | string): FieldProgramDistanceKind;
|
|
13
|
+
|
|
14
|
+
get value(): string;
|
|
15
|
+
|
|
16
|
+
/** @internal */
|
|
17
|
+
get ffiValue(): number;
|
|
18
|
+
|
|
19
|
+
static Exact : FieldProgramDistanceKind;
|
|
20
|
+
static LowerBound : FieldProgramDistanceKind;
|
|
21
|
+
static Estimate : FieldProgramDistanceKind;
|
|
22
|
+
static Implicit : FieldProgramDistanceKind;
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
constructor(value: FieldProgramDistanceKind | string );
|
|
26
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import wasm from "./diplomat-wasm.mjs";
|
|
3
|
+
import * as diplomatRuntime from "./diplomat-runtime.mjs";
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* What kind of distance a field program's output represents.
|
|
9
|
+
*/
|
|
10
|
+
export class FieldProgramDistanceKind {
|
|
11
|
+
#value = undefined;
|
|
12
|
+
|
|
13
|
+
static #values = new Map([
|
|
14
|
+
["Exact", 0],
|
|
15
|
+
["LowerBound", 1],
|
|
16
|
+
["Estimate", 2],
|
|
17
|
+
["Implicit", 3]
|
|
18
|
+
]);
|
|
19
|
+
|
|
20
|
+
static getAllEntries() {
|
|
21
|
+
return FieldProgramDistanceKind.#values.entries();
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
#internalConstructor(value) {
|
|
25
|
+
if (arguments.length > 1 && arguments[0] === diplomatRuntime.internalConstructor) {
|
|
26
|
+
// We pass in two internalConstructor arguments to create *new*
|
|
27
|
+
// instances of this type, otherwise the enums are treated as singletons.
|
|
28
|
+
if (arguments[1] === diplomatRuntime.internalConstructor ) {
|
|
29
|
+
this.#value = arguments[2];
|
|
30
|
+
return this;
|
|
31
|
+
}
|
|
32
|
+
return FieldProgramDistanceKind.#objectValues[arguments[1]];
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
if (value instanceof FieldProgramDistanceKind) {
|
|
36
|
+
return value;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
let intVal = FieldProgramDistanceKind.#values.get(value);
|
|
40
|
+
|
|
41
|
+
// Nullish check, checks for null or undefined
|
|
42
|
+
if (intVal != null) {
|
|
43
|
+
return FieldProgramDistanceKind.#objectValues[intVal];
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
throw TypeError(value + " is not a FieldProgramDistanceKind and does not correspond to any of its enumerator values.");
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/** @internal */
|
|
50
|
+
static fromValue(value) {
|
|
51
|
+
return new FieldProgramDistanceKind(value);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
get value(){
|
|
55
|
+
return [...FieldProgramDistanceKind.#values.keys()][this.#value];
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/** @internal */
|
|
59
|
+
get ffiValue(){
|
|
60
|
+
return this.#value;
|
|
61
|
+
}
|
|
62
|
+
static #objectValues = [
|
|
63
|
+
new FieldProgramDistanceKind(diplomatRuntime.internalConstructor, diplomatRuntime.internalConstructor, 0),
|
|
64
|
+
new FieldProgramDistanceKind(diplomatRuntime.internalConstructor, diplomatRuntime.internalConstructor, 1),
|
|
65
|
+
new FieldProgramDistanceKind(diplomatRuntime.internalConstructor, diplomatRuntime.internalConstructor, 2),
|
|
66
|
+
new FieldProgramDistanceKind(diplomatRuntime.internalConstructor, diplomatRuntime.internalConstructor, 3),
|
|
67
|
+
];
|
|
68
|
+
|
|
69
|
+
static Exact = FieldProgramDistanceKind.#objectValues[0];
|
|
70
|
+
static LowerBound = FieldProgramDistanceKind.#objectValues[1];
|
|
71
|
+
static Estimate = FieldProgramDistanceKind.#objectValues[2];
|
|
72
|
+
static Implicit = FieldProgramDistanceKind.#objectValues[3];
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
constructor(value) {
|
|
76
|
+
return this.#internalConstructor(...arguments)
|
|
77
|
+
}
|
|
78
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import type { pointer, codepoint } from "./diplomat-runtime.d.ts";
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Unary field-program operations (see `crate::sdf::UnaryOp`).
|
|
8
|
+
*/
|
|
9
|
+
export class FieldProgramUnaryOp {
|
|
10
|
+
|
|
11
|
+
/** @internal */
|
|
12
|
+
static fromValue(value: FieldProgramUnaryOp | string): FieldProgramUnaryOp;
|
|
13
|
+
|
|
14
|
+
get value(): string;
|
|
15
|
+
|
|
16
|
+
/** @internal */
|
|
17
|
+
get ffiValue(): number;
|
|
18
|
+
|
|
19
|
+
static Neg : FieldProgramUnaryOp;
|
|
20
|
+
static Abs : FieldProgramUnaryOp;
|
|
21
|
+
static Sqrt : FieldProgramUnaryOp;
|
|
22
|
+
static Log : FieldProgramUnaryOp;
|
|
23
|
+
static Sin : FieldProgramUnaryOp;
|
|
24
|
+
static Cos : FieldProgramUnaryOp;
|
|
25
|
+
static Acos : FieldProgramUnaryOp;
|
|
26
|
+
static VecX : FieldProgramUnaryOp;
|
|
27
|
+
static VecY : FieldProgramUnaryOp;
|
|
28
|
+
static VecZ : FieldProgramUnaryOp;
|
|
29
|
+
static Length : FieldProgramUnaryOp;
|
|
30
|
+
static Normalize : FieldProgramUnaryOp;
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
constructor(value: FieldProgramUnaryOp | string );
|
|
34
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// generated by diplomat-tool
|
|
2
|
+
import type { pointer, codepoint } from "./diplomat-runtime.d.ts";
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Unary field-program operations (see `crate::sdf::UnaryOp`).
|
|
8
|
+
*/
|
|
9
|
+
export class FieldProgramUnaryOp {
|
|
10
|
+
|
|
11
|
+
/** @internal */
|
|
12
|
+
static fromValue(value: FieldProgramUnaryOp | string): FieldProgramUnaryOp;
|
|
13
|
+
|
|
14
|
+
get value(): string;
|
|
15
|
+
|
|
16
|
+
/** @internal */
|
|
17
|
+
get ffiValue(): number;
|
|
18
|
+
|
|
19
|
+
static Neg : FieldProgramUnaryOp;
|
|
20
|
+
static Abs : FieldProgramUnaryOp;
|
|
21
|
+
static Sqrt : FieldProgramUnaryOp;
|
|
22
|
+
static Log : FieldProgramUnaryOp;
|
|
23
|
+
static Sin : FieldProgramUnaryOp;
|
|
24
|
+
static Cos : FieldProgramUnaryOp;
|
|
25
|
+
static Acos : FieldProgramUnaryOp;
|
|
26
|
+
static VecX : FieldProgramUnaryOp;
|
|
27
|
+
static VecY : FieldProgramUnaryOp;
|
|
28
|
+
static VecZ : FieldProgramUnaryOp;
|
|
29
|
+
static Length : FieldProgramUnaryOp;
|
|
30
|
+
static Normalize : FieldProgramUnaryOp;
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
constructor(value: FieldProgramUnaryOp | string );
|
|
34
|
+
}
|