@rezless/vm 0.1.0
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/LICENSE +202 -0
- package/NOTICE +32 -0
- package/dist/builtins/base64.d.ts +25 -0
- package/dist/builtins/base64.d.ts.map +1 -0
- package/dist/builtins/base64.js +43 -0
- package/dist/builtins/base64.js.map +1 -0
- package/dist/builtins/chat.d.ts +10 -0
- package/dist/builtins/chat.d.ts.map +1 -0
- package/dist/builtins/chat.js +36 -0
- package/dist/builtins/chat.js.map +1 -0
- package/dist/builtins/dataserver.d.ts +26 -0
- package/dist/builtins/dataserver.d.ts.map +1 -0
- package/dist/builtins/dataserver.js +20 -0
- package/dist/builtins/dataserver.js.map +1 -0
- package/dist/builtins/detected.d.ts +40 -0
- package/dist/builtins/detected.d.ts.map +1 -0
- package/dist/builtins/detected.js +23 -0
- package/dist/builtins/detected.js.map +1 -0
- package/dist/builtins/hash.d.ts +6 -0
- package/dist/builtins/hash.d.ts.map +1 -0
- package/dist/builtins/hash.js +34 -0
- package/dist/builtins/hash.js.map +1 -0
- package/dist/builtins/http.d.ts +40 -0
- package/dist/builtins/http.d.ts.map +1 -0
- package/dist/builtins/http.js +87 -0
- package/dist/builtins/http.js.map +1 -0
- package/dist/builtins/identity.d.ts +14 -0
- package/dist/builtins/identity.d.ts.map +1 -0
- package/dist/builtins/identity.js +17 -0
- package/dist/builtins/identity.js.map +1 -0
- package/dist/builtins/index.d.ts +8 -0
- package/dist/builtins/index.d.ts.map +1 -0
- package/dist/builtins/index.js +232 -0
- package/dist/builtins/index.js.map +1 -0
- package/dist/builtins/inventory.d.ts +33 -0
- package/dist/builtins/inventory.d.ts.map +1 -0
- package/dist/builtins/inventory.js +134 -0
- package/dist/builtins/inventory.js.map +1 -0
- package/dist/builtins/json.d.ts +7 -0
- package/dist/builtins/json.d.ts.map +1 -0
- package/dist/builtins/json.js +690 -0
- package/dist/builtins/json.js.map +1 -0
- package/dist/builtins/link-info.d.ts +10 -0
- package/dist/builtins/link-info.d.ts.map +1 -0
- package/dist/builtins/link-info.js +26 -0
- package/dist/builtins/link-info.js.map +1 -0
- package/dist/builtins/linked.d.ts +23 -0
- package/dist/builtins/linked.d.ts.map +1 -0
- package/dist/builtins/linked.js +20 -0
- package/dist/builtins/linked.js.map +1 -0
- package/dist/builtins/linksetdata.d.ts +20 -0
- package/dist/builtins/linksetdata.d.ts.map +1 -0
- package/dist/builtins/linksetdata.js +196 -0
- package/dist/builtins/linksetdata.js.map +1 -0
- package/dist/builtins/listen.d.ts +33 -0
- package/dist/builtins/listen.d.ts.map +1 -0
- package/dist/builtins/listen.js +45 -0
- package/dist/builtins/listen.js.map +1 -0
- package/dist/builtins/lists.d.ts +37 -0
- package/dist/builtins/lists.d.ts.map +1 -0
- package/dist/builtins/lists.js +275 -0
- package/dist/builtins/lists.js.map +1 -0
- package/dist/builtins/math.d.ts +32 -0
- package/dist/builtins/math.d.ts.map +1 -0
- package/dist/builtins/math.js +104 -0
- package/dist/builtins/math.js.map +1 -0
- package/dist/builtins/object.d.ts +29 -0
- package/dist/builtins/object.d.ts.map +1 -0
- package/dist/builtins/object.js +50 -0
- package/dist/builtins/object.js.map +1 -0
- package/dist/builtins/prim-accessors.d.ts +56 -0
- package/dist/builtins/prim-accessors.d.ts.map +1 -0
- package/dist/builtins/prim-accessors.js +353 -0
- package/dist/builtins/prim-accessors.js.map +1 -0
- package/dist/builtins/prim-params.d.ts +12 -0
- package/dist/builtins/prim-params.d.ts.map +1 -0
- package/dist/builtins/prim-params.js +124 -0
- package/dist/builtins/prim-params.js.map +1 -0
- package/dist/builtins/script-control.d.ts +13 -0
- package/dist/builtins/script-control.d.ts.map +1 -0
- package/dist/builtins/script-control.js +41 -0
- package/dist/builtins/script-control.js.map +1 -0
- package/dist/builtins/strings.d.ts +23 -0
- package/dist/builtins/strings.d.ts.map +1 -0
- package/dist/builtins/strings.js +130 -0
- package/dist/builtins/strings.js.map +1 -0
- package/dist/builtins/time.d.ts +28 -0
- package/dist/builtins/time.d.ts.map +1 -0
- package/dist/builtins/time.js +54 -0
- package/dist/builtins/time.js.map +1 -0
- package/dist/clock.d.ts +75 -0
- package/dist/clock.d.ts.map +1 -0
- package/dist/clock.js +125 -0
- package/dist/clock.js.map +1 -0
- package/dist/coverage.d.ts +110 -0
- package/dist/coverage.d.ts.map +1 -0
- package/dist/coverage.js +221 -0
- package/dist/coverage.js.map +1 -0
- package/dist/dispatch.d.ts +19 -0
- package/dist/dispatch.d.ts.map +1 -0
- package/dist/dispatch.js +42 -0
- package/dist/dispatch.js.map +1 -0
- package/dist/env.d.ts +33 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/env.js +76 -0
- package/dist/env.js.map +1 -0
- package/dist/generated/constants.d.ts +967 -0
- package/dist/generated/constants.d.ts.map +1 -0
- package/dist/generated/constants.js +969 -0
- package/dist/generated/constants.js.map +1 -0
- package/dist/generated/constants_table.d.ts +11 -0
- package/dist/generated/constants_table.d.ts.map +1 -0
- package/dist/generated/constants_table.js +978 -0
- package/dist/generated/constants_table.js.map +1 -0
- package/dist/generated/events.d.ts +545 -0
- package/dist/generated/events.d.ts.map +1 -0
- package/dist/generated/events.js +49 -0
- package/dist/generated/events.js.map +1 -0
- package/dist/generated/functions.d.ts +6051 -0
- package/dist/generated/functions.d.ts.map +1 -0
- package/dist/generated/functions.js +526 -0
- package/dist/generated/functions.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/interpreter.d.ts +39 -0
- package/dist/interpreter.d.ts.map +1 -0
- package/dist/interpreter.js +381 -0
- package/dist/interpreter.js.map +1 -0
- package/dist/inventory.d.ts +52 -0
- package/dist/inventory.d.ts.map +1 -0
- package/dist/inventory.js +45 -0
- package/dist/inventory.js.map +1 -0
- package/dist/linkset.d.ts +89 -0
- package/dist/linkset.d.ts.map +1 -0
- package/dist/linkset.js +179 -0
- package/dist/linkset.js.map +1 -0
- package/dist/prim-params.d.ts +221 -0
- package/dist/prim-params.d.ts.map +1 -0
- package/dist/prim-params.js +852 -0
- package/dist/prim-params.js.map +1 -0
- package/dist/prim.d.ts +79 -0
- package/dist/prim.d.ts.map +1 -0
- package/dist/prim.js +96 -0
- package/dist/prim.js.map +1 -0
- package/dist/random.d.ts +16 -0
- package/dist/random.d.ts.map +1 -0
- package/dist/random.js +29 -0
- package/dist/random.js.map +1 -0
- package/dist/runtime.d.ts +108 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +2 -0
- package/dist/runtime.js.map +1 -0
- package/dist/script.d.ts +248 -0
- package/dist/script.d.ts.map +1 -0
- package/dist/script.js +667 -0
- package/dist/script.js.map +1 -0
- package/dist/values/coerce.d.ts +22 -0
- package/dist/values/coerce.d.ts.map +1 -0
- package/dist/values/coerce.js +184 -0
- package/dist/values/coerce.js.map +1 -0
- package/dist/values/format.d.ts +20 -0
- package/dist/values/format.d.ts.map +1 -0
- package/dist/values/format.js +47 -0
- package/dist/values/format.js.map +1 -0
- package/dist/values/ops.d.ts +19 -0
- package/dist/values/ops.d.ts.map +1 -0
- package/dist/values/ops.js +345 -0
- package/dist/values/ops.js.map +1 -0
- package/dist/values/types.d.ts +39 -0
- package/dist/values/types.d.ts.map +1 -0
- package/dist/values/types.js +68 -0
- package/dist/values/types.js.map +1 -0
- package/package.json +52 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { NULL_KEY } from '../values/types.js';
|
|
2
|
+
import { HTTP_METHOD, HTTP_MIMETYPE, HTTP_CUSTOM_HEADER, } from '../generated/constants.js';
|
|
3
|
+
/** Generate a deterministic request key. */
|
|
4
|
+
function nextHttpKey(state) {
|
|
5
|
+
state.httpKeyCounter += 1;
|
|
6
|
+
return `http-req-${String(state.httpKeyCounter).padStart(8, '0')}`;
|
|
7
|
+
}
|
|
8
|
+
function parseOptions(raw) {
|
|
9
|
+
const out = {
|
|
10
|
+
method: 'GET',
|
|
11
|
+
mimetype: 'text/plain;charset=utf-8',
|
|
12
|
+
headers: [],
|
|
13
|
+
};
|
|
14
|
+
let i = 0;
|
|
15
|
+
while (i < raw.length) {
|
|
16
|
+
const code = raw[i];
|
|
17
|
+
if (typeof code !== 'number') {
|
|
18
|
+
i++;
|
|
19
|
+
continue;
|
|
20
|
+
}
|
|
21
|
+
switch (code) {
|
|
22
|
+
case HTTP_METHOD: {
|
|
23
|
+
const v = raw[i + 1];
|
|
24
|
+
if (typeof v === 'string')
|
|
25
|
+
out.method = v;
|
|
26
|
+
i += 2;
|
|
27
|
+
break;
|
|
28
|
+
}
|
|
29
|
+
case HTTP_MIMETYPE: {
|
|
30
|
+
const v = raw[i + 1];
|
|
31
|
+
if (typeof v === 'string')
|
|
32
|
+
out.mimetype = v;
|
|
33
|
+
i += 2;
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
case HTTP_CUSTOM_HEADER: {
|
|
37
|
+
const name = raw[i + 1];
|
|
38
|
+
const value = raw[i + 2];
|
|
39
|
+
if (typeof name === 'string' && typeof value === 'string') {
|
|
40
|
+
out.headers.push([name, value]);
|
|
41
|
+
}
|
|
42
|
+
i += 3;
|
|
43
|
+
break;
|
|
44
|
+
}
|
|
45
|
+
default:
|
|
46
|
+
// Unknown options take a single value; advance by 2 to be safe.
|
|
47
|
+
i += 2;
|
|
48
|
+
break;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return out;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* llHTTPRequest(string url, list options, string body) → key
|
|
55
|
+
*
|
|
56
|
+
* Captures the request into ScriptState.httpRequests and returns a
|
|
57
|
+
* deterministic key. Tests respond via Script.respondToHttp(key, ...),
|
|
58
|
+
* which schedules an http_response event.
|
|
59
|
+
*/
|
|
60
|
+
export const llHTTPRequest = (ctx, args) => {
|
|
61
|
+
const url = args[0] ?? '';
|
|
62
|
+
const rawOptions = args[1] ?? [];
|
|
63
|
+
const body = args[2] ?? '';
|
|
64
|
+
const parsed = parseOptions(rawOptions);
|
|
65
|
+
const key = nextHttpKey(ctx.state);
|
|
66
|
+
ctx.state.httpRequests.push({
|
|
67
|
+
key,
|
|
68
|
+
url,
|
|
69
|
+
method: parsed.method,
|
|
70
|
+
body,
|
|
71
|
+
mimetype: parsed.mimetype,
|
|
72
|
+
headers: parsed.headers,
|
|
73
|
+
rawOptions,
|
|
74
|
+
fulfilled: false,
|
|
75
|
+
});
|
|
76
|
+
return key;
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* llHTTPResponse(key request_id, integer status, string body) — used by
|
|
80
|
+
* scripts that hold an inbound HTTP request from llRequestURL. Captured
|
|
81
|
+
* but not otherwise modelled (no inbound URL feature in this PR).
|
|
82
|
+
*/
|
|
83
|
+
export const llHTTPResponse = () => {
|
|
84
|
+
return undefined;
|
|
85
|
+
};
|
|
86
|
+
export { NULL_KEY as HTTP_NULL_KEY };
|
|
87
|
+
//# sourceMappingURL=http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/builtins/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { BuiltinImpl } from '../runtime.js';
|
|
2
|
+
/** llGetOwner() — script's configured owner key. */
|
|
3
|
+
export declare const llGetOwner: BuiltinImpl;
|
|
4
|
+
/** llGetCreator() — for our purposes the same as the owner. */
|
|
5
|
+
export declare const llGetCreator: BuiltinImpl;
|
|
6
|
+
/** llGetKey() — the prim's key (= owner by default; configurable). */
|
|
7
|
+
export declare const llGetKey: BuiltinImpl;
|
|
8
|
+
/** llGetObjectName() — the prim's name. */
|
|
9
|
+
export declare const llGetObjectName: BuiltinImpl;
|
|
10
|
+
/** llSetObjectName(string name) — mutates the prim's name. */
|
|
11
|
+
export declare const llSetObjectName: BuiltinImpl;
|
|
12
|
+
/** llGetScriptName() — the script's filename (e.g. "greeter.lsl"). */
|
|
13
|
+
export declare const llGetScriptName: BuiltinImpl;
|
|
14
|
+
//# sourceMappingURL=identity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/builtins/identity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD,oDAAoD;AACpD,eAAO,MAAM,UAAU,EAAE,WAA+C,CAAA;AACxE,+DAA+D;AAC/D,eAAO,MAAM,YAAY,EAAE,WAA+C,CAAA;AAC1E,sEAAsE;AACtE,eAAO,MAAM,QAAQ,EAAE,WAAmD,CAAA;AAC1E,2CAA2C;AAC3C,eAAO,MAAM,eAAe,EAAE,WAAoD,CAAA;AAElF,8DAA8D;AAC9D,eAAO,MAAM,eAAe,EAAE,WAI7B,CAAA;AAED,sEAAsE;AACtE,eAAO,MAAM,eAAe,EAAE,WAAoD,CAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/** llGetOwner() — script's configured owner key. */
|
|
2
|
+
export const llGetOwner = (ctx) => ctx.state.identity.owner;
|
|
3
|
+
/** llGetCreator() — for our purposes the same as the owner. */
|
|
4
|
+
export const llGetCreator = (ctx) => ctx.state.identity.owner;
|
|
5
|
+
/** llGetKey() — the prim's key (= owner by default; configurable). */
|
|
6
|
+
export const llGetKey = (ctx) => ctx.state.identity.objectKey;
|
|
7
|
+
/** llGetObjectName() — the prim's name. */
|
|
8
|
+
export const llGetObjectName = (ctx) => ctx.state.identity.objectName;
|
|
9
|
+
/** llSetObjectName(string name) — mutates the prim's name. */
|
|
10
|
+
export const llSetObjectName = (ctx, args) => {
|
|
11
|
+
const name = args[0] ?? '';
|
|
12
|
+
ctx.state.identity.objectName = name;
|
|
13
|
+
return undefined;
|
|
14
|
+
};
|
|
15
|
+
/** llGetScriptName() — the script's filename (e.g. "greeter.lsl"). */
|
|
16
|
+
export const llGetScriptName = (ctx) => ctx.state.identity.scriptName;
|
|
17
|
+
//# sourceMappingURL=identity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../../src/builtins/identity.ts"],"names":[],"mappings":"AAEA,oDAAoD;AACpD,MAAM,CAAC,MAAM,UAAU,GAAgB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAA;AACxE,+DAA+D;AAC/D,MAAM,CAAC,MAAM,YAAY,GAAgB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAA;AAC1E,sEAAsE;AACtE,MAAM,CAAC,MAAM,QAAQ,GAAgB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAA;AAC1E,2CAA2C;AAC3C,MAAM,CAAC,MAAM,eAAe,GAAgB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAA;AAElF,8DAA8D;AAC9D,MAAM,CAAC,MAAM,eAAe,GAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;IACxD,MAAM,IAAI,GAAI,IAAI,CAAC,CAAC,CAAwB,IAAI,EAAE,CAAA;IAClD,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAA;IACpC,OAAO,SAAS,CAAA;AAClB,CAAC,CAAA;AAED,sEAAsE;AACtE,MAAM,CAAC,MAAM,eAAe,GAAgB,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BuiltinImpl } from '../runtime.js';
|
|
2
|
+
/**
|
|
3
|
+
* Map of `ll*` name → real implementation. Anything not in this map falls
|
|
4
|
+
* through to the auto-generated stub (returns the documented default value
|
|
5
|
+
* and records the call). User mocks (script.mock(...)) override either.
|
|
6
|
+
*/
|
|
7
|
+
export declare const REAL_BUILTINS: Readonly<Record<string, BuiltinImpl>>;
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAmNhD;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CA4M/D,CAAA"}
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import { llSay, llShout, llWhisper, llOwnerSay } from './chat.js';
|
|
2
|
+
import { llSetTimerEvent, llSleep, llGetTime, llGetAndResetTime, llResetTime, } from './time.js';
|
|
3
|
+
import { llHTTPRequest, llHTTPResponse } from './http.js';
|
|
4
|
+
import { llListen, llListenRemove, llListenControl } from './listen.js';
|
|
5
|
+
import { llAbs, llFabs, llRound, llCeil, llFloor, llPow, llSqrt, llSin, llCos, llTan, llAsin, llAcos, llAtan2, llLog, llLog10, llFrand, llVecMag, llVecNorm, llVecDist, llRot2Euler, llEuler2Rot, } from './math.js';
|
|
6
|
+
import { llStringLength, llSubStringIndex, llGetSubString, llDeleteSubString, llInsertString, llStringTrim, llToLower, llToUpper, llReplaceSubString, llEscapeURL, llUnescapeURL, } from './strings.js';
|
|
7
|
+
import { llGetListLength, llList2Integer, llList2Float, llList2String, llList2Key, llList2Vector, llList2Rot, llList2List, llDeleteSubList, llListInsertList, llListReplaceList, llListFindList, llDumpList2String, llCSV2List, llParseString2List, } from './lists.js';
|
|
8
|
+
import { llJson2List, llJsonGetValue, llJsonSetValue, llJsonValueType, llList2Json, } from './json.js';
|
|
9
|
+
import { llGetOwner, llGetCreator, llGetKey, llGetObjectName, llSetObjectName, llGetScriptName, } from './identity.js';
|
|
10
|
+
import { llMessageLinked } from './linked.js';
|
|
11
|
+
import { llRequestAgentData, llRequestInventoryData, llRequestSimulatorData, llRequestUsername, llRequestDisplayName, } from './dataserver.js';
|
|
12
|
+
import { llDetectedKey, llDetectedName, llDetectedOwner, llDetectedGroup, llDetectedPos, llDetectedRot, llDetectedVel, llDetectedType, llDetectedLinkNumber, llDetectedGrab, llDetectedTouchPos, } from './detected.js';
|
|
13
|
+
import { llMD5String, llSHA1String, llSHA256String, llHMAC } from './hash.js';
|
|
14
|
+
import { llStringToBase64, llBase64ToString, llIntegerToBase64, llBase64ToInteger, } from './base64.js';
|
|
15
|
+
import { llSetText, llSetObjectDesc, llGetObjectDesc, llDie, llResetScript, } from './object.js';
|
|
16
|
+
import { llGetLinkNumber, llGetNumberOfPrims, llGetLinkKey, llGetLinkName, } from './link-info.js';
|
|
17
|
+
import { llGetInventoryNumber, llGetInventoryName, llGetInventoryType, llGetInventoryKey, llGetInventoryCreator, llGetInventoryDesc, llGetInventoryAcquireTime, llGetInventoryPermMask, llGetNotecardLine, llGetNumberOfNotecardLines, } from './inventory.js';
|
|
18
|
+
import { llResetOtherScript, llSetScriptState, llGetScriptState, } from './script-control.js';
|
|
19
|
+
import { llLinksetDataWrite, llLinksetDataWriteProtected, llLinksetDataRead, llLinksetDataReadProtected, llLinksetDataDelete, llLinksetDataDeleteProtected, llLinksetDataDeleteFound, llLinksetDataReset, llLinksetDataAvailable, llLinksetDataCountKeys, llLinksetDataListKeys, llLinksetDataFindKeys, llLinksetDataCountFound, } from './linksetdata.js';
|
|
20
|
+
import { llSetPrimitiveParams, llSetLinkPrimitiveParams, llSetLinkPrimitiveParamsFast, llGetPrimitiveParams, llGetLinkPrimitiveParams, } from './prim-params.js';
|
|
21
|
+
import { llSetPos, llGetPos, llGetLocalPos, llGetRootPosition, llSetRot, llSetLocalRot, llGetRot, llGetLocalRot, llGetRootRotation, llSetScale, llGetScale, llScaleByFactor, llGetMaxScaleFactor, llGetMinScaleFactor, llSetColor, llGetColor, llSetAlpha, llGetAlpha, llSetTexture, llGetTexture, llGetTextureOffset, llGetTextureScale, llGetTextureRot, llScaleTexture, llOffsetTexture, llRotateTexture, llSetLinkColor, llSetLinkAlpha, llSetLinkTexture, llSetTextureAnim, llSetLinkTextureAnim, llSetLinkTextureAnimOverrideMe, llSetRenderMaterial, llGetRenderMaterial, llSetStatus, llGetStatus, llSetLinkStatus, llSetClickAction, llTargetOmega, llSetPhysicsMaterial, llGetPhysicsMaterial, llPassCollisions, llPassTouches, llSitTarget, llLinkSitTarget, llAvatarOnSitTarget, llAvatarOnLinkSitTarget, llSetLinkSitFlags, llGetLinkSitFlags, } from './prim-accessors.js';
|
|
22
|
+
/**
|
|
23
|
+
* Map of `ll*` name → real implementation. Anything not in this map falls
|
|
24
|
+
* through to the auto-generated stub (returns the documented default value
|
|
25
|
+
* and records the call). User mocks (script.mock(...)) override either.
|
|
26
|
+
*/
|
|
27
|
+
export const REAL_BUILTINS = {
|
|
28
|
+
llSay,
|
|
29
|
+
llShout,
|
|
30
|
+
llWhisper,
|
|
31
|
+
llOwnerSay,
|
|
32
|
+
llSetTimerEvent,
|
|
33
|
+
llSleep,
|
|
34
|
+
llGetTime,
|
|
35
|
+
llGetAndResetTime,
|
|
36
|
+
llResetTime,
|
|
37
|
+
llHTTPRequest,
|
|
38
|
+
llHTTPResponse,
|
|
39
|
+
llListen,
|
|
40
|
+
llListenRemove,
|
|
41
|
+
llListenControl,
|
|
42
|
+
// math
|
|
43
|
+
llAbs,
|
|
44
|
+
llFabs,
|
|
45
|
+
llRound,
|
|
46
|
+
llCeil,
|
|
47
|
+
llFloor,
|
|
48
|
+
llPow,
|
|
49
|
+
llSqrt,
|
|
50
|
+
llSin,
|
|
51
|
+
llCos,
|
|
52
|
+
llTan,
|
|
53
|
+
llAsin,
|
|
54
|
+
llAcos,
|
|
55
|
+
llAtan2,
|
|
56
|
+
llLog,
|
|
57
|
+
llLog10,
|
|
58
|
+
llFrand,
|
|
59
|
+
llVecMag,
|
|
60
|
+
llVecNorm,
|
|
61
|
+
llVecDist,
|
|
62
|
+
llRot2Euler,
|
|
63
|
+
llEuler2Rot,
|
|
64
|
+
// strings
|
|
65
|
+
llStringLength,
|
|
66
|
+
llSubStringIndex,
|
|
67
|
+
llGetSubString,
|
|
68
|
+
llDeleteSubString,
|
|
69
|
+
llInsertString,
|
|
70
|
+
llStringTrim,
|
|
71
|
+
llToLower,
|
|
72
|
+
llToUpper,
|
|
73
|
+
llReplaceSubString,
|
|
74
|
+
llEscapeURL,
|
|
75
|
+
llUnescapeURL,
|
|
76
|
+
// lists
|
|
77
|
+
llGetListLength,
|
|
78
|
+
llList2Integer,
|
|
79
|
+
llList2Float,
|
|
80
|
+
llList2String,
|
|
81
|
+
llList2Key,
|
|
82
|
+
llList2Vector,
|
|
83
|
+
llList2Rot,
|
|
84
|
+
llList2List,
|
|
85
|
+
llDeleteSubList,
|
|
86
|
+
llListInsertList,
|
|
87
|
+
llListReplaceList,
|
|
88
|
+
llListFindList,
|
|
89
|
+
llDumpList2String,
|
|
90
|
+
llCSV2List,
|
|
91
|
+
llParseString2List,
|
|
92
|
+
// json
|
|
93
|
+
llJson2List,
|
|
94
|
+
llJsonGetValue,
|
|
95
|
+
llJsonSetValue,
|
|
96
|
+
llJsonValueType,
|
|
97
|
+
llList2Json,
|
|
98
|
+
// identity
|
|
99
|
+
llGetOwner,
|
|
100
|
+
llGetCreator,
|
|
101
|
+
llGetKey,
|
|
102
|
+
llGetObjectName,
|
|
103
|
+
llSetObjectName,
|
|
104
|
+
llGetScriptName,
|
|
105
|
+
// linked
|
|
106
|
+
llMessageLinked,
|
|
107
|
+
// dataserver
|
|
108
|
+
llRequestAgentData,
|
|
109
|
+
llRequestInventoryData,
|
|
110
|
+
llRequestSimulatorData,
|
|
111
|
+
llRequestUsername,
|
|
112
|
+
llRequestDisplayName,
|
|
113
|
+
// detected
|
|
114
|
+
llDetectedKey,
|
|
115
|
+
llDetectedName,
|
|
116
|
+
llDetectedOwner,
|
|
117
|
+
llDetectedGroup,
|
|
118
|
+
llDetectedPos,
|
|
119
|
+
llDetectedRot,
|
|
120
|
+
llDetectedVel,
|
|
121
|
+
llDetectedType,
|
|
122
|
+
llDetectedLinkNumber,
|
|
123
|
+
llDetectedGrab,
|
|
124
|
+
llDetectedTouchPos,
|
|
125
|
+
// hash
|
|
126
|
+
llMD5String,
|
|
127
|
+
llSHA1String,
|
|
128
|
+
llSHA256String,
|
|
129
|
+
llHMAC,
|
|
130
|
+
// base64
|
|
131
|
+
llStringToBase64,
|
|
132
|
+
llBase64ToString,
|
|
133
|
+
llIntegerToBase64,
|
|
134
|
+
llBase64ToInteger,
|
|
135
|
+
// object
|
|
136
|
+
llSetText,
|
|
137
|
+
llSetObjectDesc,
|
|
138
|
+
llGetObjectDesc,
|
|
139
|
+
llDie,
|
|
140
|
+
llResetScript,
|
|
141
|
+
// link info
|
|
142
|
+
llGetLinkNumber,
|
|
143
|
+
llGetNumberOfPrims,
|
|
144
|
+
llGetLinkKey,
|
|
145
|
+
llGetLinkName,
|
|
146
|
+
// inventory
|
|
147
|
+
llGetInventoryNumber,
|
|
148
|
+
llGetInventoryName,
|
|
149
|
+
llGetInventoryType,
|
|
150
|
+
llGetInventoryKey,
|
|
151
|
+
llGetInventoryCreator,
|
|
152
|
+
llGetInventoryDesc,
|
|
153
|
+
llGetInventoryAcquireTime,
|
|
154
|
+
llGetInventoryPermMask,
|
|
155
|
+
llGetNotecardLine,
|
|
156
|
+
llGetNumberOfNotecardLines,
|
|
157
|
+
// script control
|
|
158
|
+
llResetOtherScript,
|
|
159
|
+
llSetScriptState,
|
|
160
|
+
llGetScriptState,
|
|
161
|
+
// linkset data
|
|
162
|
+
llLinksetDataWrite,
|
|
163
|
+
llLinksetDataWriteProtected,
|
|
164
|
+
llLinksetDataRead,
|
|
165
|
+
llLinksetDataReadProtected,
|
|
166
|
+
llLinksetDataDelete,
|
|
167
|
+
llLinksetDataDeleteProtected,
|
|
168
|
+
llLinksetDataDeleteFound,
|
|
169
|
+
llLinksetDataReset,
|
|
170
|
+
llLinksetDataAvailable,
|
|
171
|
+
llLinksetDataCountKeys,
|
|
172
|
+
llLinksetDataListKeys,
|
|
173
|
+
llLinksetDataFindKeys,
|
|
174
|
+
llLinksetDataCountFound,
|
|
175
|
+
// primitive params (rules-based)
|
|
176
|
+
llSetPrimitiveParams,
|
|
177
|
+
llSetLinkPrimitiveParams,
|
|
178
|
+
llSetLinkPrimitiveParamsFast,
|
|
179
|
+
llGetPrimitiveParams,
|
|
180
|
+
llGetLinkPrimitiveParams,
|
|
181
|
+
// primitive params (alternative accessors)
|
|
182
|
+
llSetPos,
|
|
183
|
+
llGetPos,
|
|
184
|
+
llGetLocalPos,
|
|
185
|
+
llGetRootPosition,
|
|
186
|
+
llSetRot,
|
|
187
|
+
llSetLocalRot,
|
|
188
|
+
llGetRot,
|
|
189
|
+
llGetLocalRot,
|
|
190
|
+
llGetRootRotation,
|
|
191
|
+
llSetScale,
|
|
192
|
+
llGetScale,
|
|
193
|
+
llScaleByFactor,
|
|
194
|
+
llGetMaxScaleFactor,
|
|
195
|
+
llGetMinScaleFactor,
|
|
196
|
+
llSetColor,
|
|
197
|
+
llGetColor,
|
|
198
|
+
llSetAlpha,
|
|
199
|
+
llGetAlpha,
|
|
200
|
+
llSetTexture,
|
|
201
|
+
llGetTexture,
|
|
202
|
+
llGetTextureOffset,
|
|
203
|
+
llGetTextureScale,
|
|
204
|
+
llGetTextureRot,
|
|
205
|
+
llScaleTexture,
|
|
206
|
+
llOffsetTexture,
|
|
207
|
+
llRotateTexture,
|
|
208
|
+
llSetLinkColor,
|
|
209
|
+
llSetLinkAlpha,
|
|
210
|
+
llSetLinkTexture,
|
|
211
|
+
llSetTextureAnim,
|
|
212
|
+
llSetLinkTextureAnim,
|
|
213
|
+
llSetLinkTextureAnimOverrideMe,
|
|
214
|
+
llSetRenderMaterial,
|
|
215
|
+
llGetRenderMaterial,
|
|
216
|
+
llSetStatus,
|
|
217
|
+
llGetStatus,
|
|
218
|
+
llSetLinkStatus,
|
|
219
|
+
llSetClickAction,
|
|
220
|
+
llTargetOmega,
|
|
221
|
+
llSetPhysicsMaterial,
|
|
222
|
+
llGetPhysicsMaterial,
|
|
223
|
+
llPassCollisions,
|
|
224
|
+
llPassTouches,
|
|
225
|
+
llSitTarget,
|
|
226
|
+
llLinkSitTarget,
|
|
227
|
+
llAvatarOnSitTarget,
|
|
228
|
+
llAvatarOnLinkSitTarget,
|
|
229
|
+
llSetLinkSitFlags,
|
|
230
|
+
llGetLinkSitFlags,
|
|
231
|
+
};
|
|
232
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/builtins/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { BuiltinImpl } from '../runtime.js';
|
|
2
|
+
/** llGetInventoryNumber(integer type) — count of items of that type. */
|
|
3
|
+
export declare const llGetInventoryNumber: BuiltinImpl;
|
|
4
|
+
/** llGetInventoryName(integer type, integer i) — i-th item name, or "". */
|
|
5
|
+
export declare const llGetInventoryName: BuiltinImpl;
|
|
6
|
+
/** llGetInventoryType(string name) — type code, or INVENTORY_NONE. */
|
|
7
|
+
export declare const llGetInventoryType: BuiltinImpl;
|
|
8
|
+
/** llGetInventoryKey(string name) — asset key, or NULL_KEY. */
|
|
9
|
+
export declare const llGetInventoryKey: BuiltinImpl;
|
|
10
|
+
/** llGetInventoryCreator(string name) — creator key, or NULL_KEY. */
|
|
11
|
+
export declare const llGetInventoryCreator: BuiltinImpl;
|
|
12
|
+
/** llGetInventoryDesc(string name) — description, or "". */
|
|
13
|
+
export declare const llGetInventoryDesc: BuiltinImpl;
|
|
14
|
+
/**
|
|
15
|
+
* llGetInventoryAcquireTime(string name) — UTC acquire timestamp formatted
|
|
16
|
+
* as `YYYY-MM-DDThh:mm:ssZ` per the LSL spec. We treat the stored
|
|
17
|
+
* `acquireTimeMs` as ms since the Unix epoch so the default value of 0
|
|
18
|
+
* formats to `1970-01-01T00:00:00Z`.
|
|
19
|
+
*/
|
|
20
|
+
export declare const llGetInventoryAcquireTime: BuiltinImpl;
|
|
21
|
+
/** llGetInventoryPermMask(string name, integer mask) — selected mask, or 0. */
|
|
22
|
+
export declare const llGetInventoryPermMask: BuiltinImpl;
|
|
23
|
+
/**
|
|
24
|
+
* llGetNotecardLine(string name, integer line) — schedule a dataserver
|
|
25
|
+
* response with the requested line. Returns the request key.
|
|
26
|
+
*/
|
|
27
|
+
export declare const llGetNotecardLine: BuiltinImpl;
|
|
28
|
+
/**
|
|
29
|
+
* llGetNumberOfNotecardLines(string name) — schedule a dataserver response
|
|
30
|
+
* with the line count for the named notecard. Returns the request key.
|
|
31
|
+
*/
|
|
32
|
+
export declare const llGetNumberOfNotecardLines: BuiltinImpl;
|
|
33
|
+
//# sourceMappingURL=inventory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inventory.d.ts","sourceRoot":"","sources":["../../src/builtins/inventory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAyBhD,wEAAwE;AACxE,eAAO,MAAM,oBAAoB,EAAE,WAGlC,CAAA;AAED,2EAA2E;AAC3E,eAAO,MAAM,kBAAkB,EAAE,WAKhC,CAAA;AAED,sEAAsE;AACtE,eAAO,MAAM,kBAAkB,EAAE,WAGhC,CAAA;AAED,+DAA+D;AAC/D,eAAO,MAAM,iBAAiB,EAAE,WAG/B,CAAA;AAED,qEAAqE;AACrE,eAAO,MAAM,qBAAqB,EAAE,WAGnC,CAAA;AAED,4DAA4D;AAC5D,eAAO,MAAM,kBAAkB,EAAE,WAGhC,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,EAAE,WAKvC,CAAA;AAED,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB,EAAE,WAmBpC,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,WAyB/B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,WAqBxC,CAAA"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { InventoryType } from '../inventory.js';
|
|
2
|
+
import { NULL_KEY } from '../values/types.js';
|
|
3
|
+
import { INVENTORY_ALL, INVENTORY_NONE, EOF, NAK, MASK_BASE, MASK_OWNER, MASK_GROUP, MASK_EVERYONE, MASK_NEXT, } from '../generated/constants.js';
|
|
4
|
+
function itemsOfType(items, type) {
|
|
5
|
+
if (type === INVENTORY_ALL)
|
|
6
|
+
return [...items];
|
|
7
|
+
return items.filter((it) => it.type === type);
|
|
8
|
+
}
|
|
9
|
+
function find(items, name) {
|
|
10
|
+
return items.find((it) => it.name === name);
|
|
11
|
+
}
|
|
12
|
+
/** llGetInventoryNumber(integer type) — count of items of that type. */
|
|
13
|
+
export const llGetInventoryNumber = (ctx, args) => {
|
|
14
|
+
const type = args[0] ?? INVENTORY_ALL;
|
|
15
|
+
return itemsOfType(ctx.prim.inventory, type).length;
|
|
16
|
+
};
|
|
17
|
+
/** llGetInventoryName(integer type, integer i) — i-th item name, or "". */
|
|
18
|
+
export const llGetInventoryName = (ctx, args) => {
|
|
19
|
+
const type = args[0] ?? INVENTORY_ALL;
|
|
20
|
+
const i = args[1] ?? 0;
|
|
21
|
+
const items = itemsOfType(ctx.prim.inventory, type);
|
|
22
|
+
return items[i]?.name ?? '';
|
|
23
|
+
};
|
|
24
|
+
/** llGetInventoryType(string name) — type code, or INVENTORY_NONE. */
|
|
25
|
+
export const llGetInventoryType = (ctx, args) => {
|
|
26
|
+
const name = args[0] ?? '';
|
|
27
|
+
return find(ctx.prim.inventory, name)?.type ?? INVENTORY_NONE;
|
|
28
|
+
};
|
|
29
|
+
/** llGetInventoryKey(string name) — asset key, or NULL_KEY. */
|
|
30
|
+
export const llGetInventoryKey = (ctx, args) => {
|
|
31
|
+
const name = args[0] ?? '';
|
|
32
|
+
return find(ctx.prim.inventory, name)?.key ?? NULL_KEY;
|
|
33
|
+
};
|
|
34
|
+
/** llGetInventoryCreator(string name) — creator key, or NULL_KEY. */
|
|
35
|
+
export const llGetInventoryCreator = (ctx, args) => {
|
|
36
|
+
const name = args[0] ?? '';
|
|
37
|
+
return find(ctx.prim.inventory, name)?.creator ?? NULL_KEY;
|
|
38
|
+
};
|
|
39
|
+
/** llGetInventoryDesc(string name) — description, or "". */
|
|
40
|
+
export const llGetInventoryDesc = (ctx, args) => {
|
|
41
|
+
const name = args[0] ?? '';
|
|
42
|
+
return find(ctx.prim.inventory, name)?.description ?? '';
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* llGetInventoryAcquireTime(string name) — UTC acquire timestamp formatted
|
|
46
|
+
* as `YYYY-MM-DDThh:mm:ssZ` per the LSL spec. We treat the stored
|
|
47
|
+
* `acquireTimeMs` as ms since the Unix epoch so the default value of 0
|
|
48
|
+
* formats to `1970-01-01T00:00:00Z`.
|
|
49
|
+
*/
|
|
50
|
+
export const llGetInventoryAcquireTime = (ctx, args) => {
|
|
51
|
+
const name = args[0] ?? '';
|
|
52
|
+
const item = find(ctx.prim.inventory, name);
|
|
53
|
+
if (!item)
|
|
54
|
+
return '';
|
|
55
|
+
return new Date(item.acquireTimeMs).toISOString().replace(/\.\d{3}Z$/, 'Z');
|
|
56
|
+
};
|
|
57
|
+
/** llGetInventoryPermMask(string name, integer mask) — selected mask, or 0. */
|
|
58
|
+
export const llGetInventoryPermMask = (ctx, args) => {
|
|
59
|
+
const name = args[0] ?? '';
|
|
60
|
+
const mask = args[1] ?? 0;
|
|
61
|
+
const item = find(ctx.prim.inventory, name);
|
|
62
|
+
if (!item)
|
|
63
|
+
return 0;
|
|
64
|
+
switch (mask) {
|
|
65
|
+
case MASK_BASE:
|
|
66
|
+
return item.permMask.base;
|
|
67
|
+
case MASK_OWNER:
|
|
68
|
+
return item.permMask.owner;
|
|
69
|
+
case MASK_GROUP:
|
|
70
|
+
return item.permMask.group;
|
|
71
|
+
case MASK_EVERYONE:
|
|
72
|
+
return item.permMask.everyone;
|
|
73
|
+
case MASK_NEXT:
|
|
74
|
+
return item.permMask.next;
|
|
75
|
+
default:
|
|
76
|
+
return 0;
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* llGetNotecardLine(string name, integer line) — schedule a dataserver
|
|
81
|
+
* response with the requested line. Returns the request key.
|
|
82
|
+
*/
|
|
83
|
+
export const llGetNotecardLine = (ctx, args) => {
|
|
84
|
+
const name = args[0] ?? '';
|
|
85
|
+
const line = args[1] ?? 0;
|
|
86
|
+
const item = find(ctx.prim.inventory, name);
|
|
87
|
+
ctx.state.dataserverKeyCounter += 1;
|
|
88
|
+
const key = `data-req-${String(ctx.state.dataserverKeyCounter).padStart(8, '0')}`;
|
|
89
|
+
ctx.state.dataserverRequests.push({
|
|
90
|
+
key,
|
|
91
|
+
source: 'notecard_line',
|
|
92
|
+
args: [name, line],
|
|
93
|
+
fulfilled: false,
|
|
94
|
+
});
|
|
95
|
+
// Per LSL spec: out-of-range line on an existing notecard yields EOF;
|
|
96
|
+
// a missing notecard yields NAK.
|
|
97
|
+
let text = NAK;
|
|
98
|
+
if (item && item.type === InventoryType.NOTECARD && item.notecardLines) {
|
|
99
|
+
text = line >= 0 && line < item.notecardLines.length ? item.notecardLines[line] : EOF;
|
|
100
|
+
}
|
|
101
|
+
// Schedule after the dispatcher's post-call throttle advance so the event
|
|
102
|
+
// fires after the call returns (matches real LSL).
|
|
103
|
+
const delayMs = (ctx.spec?.delay ?? 0) * 1000;
|
|
104
|
+
ctx.state.clock.schedule(ctx.state.clock.now + delayMs, 'dataserver', { queryid: key, data: text });
|
|
105
|
+
const req = ctx.state.dataserverRequests[ctx.state.dataserverRequests.length - 1];
|
|
106
|
+
req.fulfilled = true;
|
|
107
|
+
return key;
|
|
108
|
+
};
|
|
109
|
+
/**
|
|
110
|
+
* llGetNumberOfNotecardLines(string name) — schedule a dataserver response
|
|
111
|
+
* with the line count for the named notecard. Returns the request key.
|
|
112
|
+
*/
|
|
113
|
+
export const llGetNumberOfNotecardLines = (ctx, args) => {
|
|
114
|
+
const name = args[0] ?? '';
|
|
115
|
+
const item = find(ctx.prim.inventory, name);
|
|
116
|
+
ctx.state.dataserverKeyCounter += 1;
|
|
117
|
+
const key = `data-req-${String(ctx.state.dataserverKeyCounter).padStart(8, '0')}`;
|
|
118
|
+
ctx.state.dataserverRequests.push({
|
|
119
|
+
key,
|
|
120
|
+
source: 'notecard_lines',
|
|
121
|
+
args: [name],
|
|
122
|
+
fulfilled: false,
|
|
123
|
+
});
|
|
124
|
+
// Missing notecard yields NAK; a present notecard yields its line count.
|
|
125
|
+
const data = item && item.type === InventoryType.NOTECARD && item.notecardLines
|
|
126
|
+
? String(item.notecardLines.length)
|
|
127
|
+
: NAK;
|
|
128
|
+
const delayMs = (ctx.spec?.delay ?? 0) * 1000;
|
|
129
|
+
ctx.state.clock.schedule(ctx.state.clock.now + delayMs, 'dataserver', { queryid: key, data });
|
|
130
|
+
const req = ctx.state.dataserverRequests[ctx.state.dataserverRequests.length - 1];
|
|
131
|
+
req.fulfilled = true;
|
|
132
|
+
return key;
|
|
133
|
+
};
|
|
134
|
+
//# sourceMappingURL=inventory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inventory.js","sourceRoot":"","sources":["../../src/builtins/inventory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { BuiltinImpl } from '../runtime.js';
|
|
2
|
+
export declare const llJson2List: BuiltinImpl;
|
|
3
|
+
export declare const llJsonGetValue: BuiltinImpl;
|
|
4
|
+
export declare const llJsonValueType: BuiltinImpl;
|
|
5
|
+
export declare const llJsonSetValue: BuiltinImpl;
|
|
6
|
+
export declare const llList2Json: BuiltinImpl;
|
|
7
|
+
//# sourceMappingURL=json.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../src/builtins/json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAsgBhD,eAAO,MAAM,WAAW,EAAE,WAczB,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,WAW5B,CAAA;AAED,eAAO,MAAM,eAAe,EAAE,WAW7B,CAAA;AAED,eAAO,MAAM,cAAc,EAAE,WAS5B,CAAA;AA0ED,eAAO,MAAM,WAAW,EAAE,WAsBzB,CAAA"}
|