Add .sxbc s-expression bytecode format
Bytecode modules are now serialized as s-expressions (.sxbc) in addition to JSON (.sxbc.json). The .sxbc format is the canonical representation — content-addressable, parseable by the SX parser, and suitable for CID referencing. Annotation layers (source maps, variable names, tests, docs) can reference the bytecode CID without polluting the bytecode itself. Format: (sxbc version hash (code :arity N :bytecode (...) :constants (...))) The browser loader tries .sxbc first (via load-sxbc kernel primitive), falls back to .sxbc.json. Caddy needs .sxbc MIME type to serve the new format (currently 404s, JSON fallback works). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,9 +1,9 @@
|
|||||||
#!/usr/bin/env node
|
#!/usr/bin/env node
|
||||||
/**
|
/**
|
||||||
* compile-modules.js — Pre-compile .sx files to bytecode JSON.
|
* compile-modules.js — Pre-compile .sx files to bytecode s-expressions.
|
||||||
*
|
*
|
||||||
* Uses the js_of_ocaml kernel in Node.js to compile each .sx module,
|
* Uses the js_of_ocaml kernel in Node.js to compile each .sx module,
|
||||||
* then serializes the bytecode as JSON for fast browser loading.
|
* then serializes the bytecode as .sxbc (s-expression format) for browser loading.
|
||||||
*
|
*
|
||||||
* Usage: node compile-modules.js [dist-dir]
|
* Usage: node compile-modules.js [dist-dir]
|
||||||
*/
|
*/
|
||||||
@@ -59,7 +59,6 @@ for (const file of FILES) {
|
|||||||
const hash = crypto.createHash('sha256').update(src).digest('hex').slice(0, 16);
|
const hash = crypto.createHash('sha256').update(src).digest('hex').slice(0, 16);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// Parse source to get expression list, then compile
|
|
||||||
const code = K.eval('(compile-module (sx-parse ' + JSON.stringify(src) + '))');
|
const code = K.eval('(compile-module (sx-parse ' + JSON.stringify(src) + '))');
|
||||||
|
|
||||||
if (typeof code === 'string' && code.startsWith('Error')) {
|
if (typeof code === 'string' && code.startsWith('Error')) {
|
||||||
@@ -68,15 +67,22 @@ for (const file of FILES) {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const sx = serializeModuleToSx(code, hash);
|
||||||
|
|
||||||
|
// Write .sxbc (s-expression format)
|
||||||
|
const outPath = srcPath.replace(/\.sx$/, '.sxbc');
|
||||||
|
fs.writeFileSync(outPath, sx);
|
||||||
|
|
||||||
|
// Also write .sxbc.json for backwards compatibility during transition
|
||||||
const json = {
|
const json = {
|
||||||
magic: 'SXBC',
|
magic: 'SXBC',
|
||||||
version: 1,
|
version: 1,
|
||||||
hash: hash,
|
hash: hash,
|
||||||
module: serializeModule(code),
|
module: serializeModuleToJson(code),
|
||||||
};
|
};
|
||||||
|
const jsonPath = srcPath.replace(/\.sx$/, '.sxbc.json');
|
||||||
|
fs.writeFileSync(jsonPath, JSON.stringify(json));
|
||||||
|
|
||||||
const outPath = srcPath.replace(/\.sx$/, '.sxbc.json');
|
|
||||||
fs.writeFileSync(outPath, JSON.stringify(json));
|
|
||||||
const size = fs.statSync(outPath).size;
|
const size = fs.statSync(outPath).size;
|
||||||
console.log(' ok', file, '→', Math.round(size / 1024) + 'K');
|
console.log(' ok', file, '→', Math.round(size / 1024) + 'K');
|
||||||
compiled++;
|
compiled++;
|
||||||
@@ -88,13 +94,93 @@ for (const file of FILES) {
|
|||||||
|
|
||||||
console.log('Done:', compiled, 'compiled,', skipped, 'skipped');
|
console.log('Done:', compiled, 'compiled,', skipped, 'skipped');
|
||||||
|
|
||||||
// --- Serialization ---
|
// --- S-expression serialization ---
|
||||||
|
|
||||||
function serializeModule(code) {
|
function serializeModuleToSx(code, hash) {
|
||||||
return {
|
return '(sxbc 1 "' + hash + '"\n ' + serializeCodeToSx(code, 2) + ')\n';
|
||||||
|
}
|
||||||
|
|
||||||
|
function serializeCodeToSx(code, indent) {
|
||||||
|
const pad = ' '.repeat(indent);
|
||||||
|
const bc = extractList(code.bytecode);
|
||||||
|
const consts = extractList(code.constants);
|
||||||
|
const arity = code.arity || code['arity'] || 0;
|
||||||
|
const uvc = code['upvalue-count'] || 0;
|
||||||
|
|
||||||
|
let parts = ['(code'];
|
||||||
|
if (arity) parts.push(' :arity ' + arity);
|
||||||
|
if (uvc) parts.push(' :upvalue-count ' + uvc);
|
||||||
|
parts.push('\n' + pad + ' :bytecode (' + bc.join(' ') + ')');
|
||||||
|
parts.push('\n' + pad + ' :constants (');
|
||||||
|
|
||||||
|
const constStrs = consts.map(c => serializeConstToSx(c, indent + 4));
|
||||||
|
if (constStrs.length > 0) {
|
||||||
|
parts.push('\n' + constStrs.map(s => pad + ' ' + s).join('\n'));
|
||||||
|
parts.push(')');
|
||||||
|
} else {
|
||||||
|
parts[parts.length - 1] += ')';
|
||||||
|
}
|
||||||
|
parts.push(')');
|
||||||
|
return parts.join('');
|
||||||
|
}
|
||||||
|
|
||||||
|
function serializeConstToSx(c, indent) {
|
||||||
|
if (c === null || c === undefined) return 'nil';
|
||||||
|
if (typeof c === 'number') return String(c);
|
||||||
|
if (typeof c === 'string') return '"' + c.replace(/\\/g, '\\\\').replace(/"/g, '\\"') + '"';
|
||||||
|
if (typeof c === 'boolean') return c ? 'true' : 'false';
|
||||||
|
if (c._type === 'symbol') return "'" + c.name;
|
||||||
|
if (c._type === 'keyword') return ':' + c.name;
|
||||||
|
if (c._type === 'list') {
|
||||||
|
const items = extractList(c).map(x => serializeConstToSx(x, indent));
|
||||||
|
return '(list ' + items.join(' ') + ')';
|
||||||
|
}
|
||||||
|
// Code object (nested lambda bytecode)
|
||||||
|
if (c.bytecode) return serializeCodeToSx(c, indent);
|
||||||
|
if (c._type === 'dict') {
|
||||||
|
const bc = c.get ? c.get('bytecode') : c.bytecode;
|
||||||
|
if (bc) return serializeCodeToSx(c, indent);
|
||||||
|
// Regular dict — serialize as {:key val ...}
|
||||||
|
const entries = [];
|
||||||
|
if (c.forEach) c.forEach((v, k) => { entries.push(':' + k + ' ' + serializeConstToSx(v, indent)); });
|
||||||
|
return '{' + entries.join(' ') + '}';
|
||||||
|
}
|
||||||
|
return 'nil';
|
||||||
|
}
|
||||||
|
|
||||||
|
// --- JSON serialization (backwards compat) ---
|
||||||
|
|
||||||
|
function serializeModuleToJson(code) {
|
||||||
|
const result = {
|
||||||
bytecode: extractList(code.bytecode),
|
bytecode: extractList(code.bytecode),
|
||||||
constants: extractList(code.constants).map(serializeConstant),
|
constants: extractList(code.constants).map(serializeConstantJson),
|
||||||
};
|
};
|
||||||
|
const arity = code.arity || code['arity'];
|
||||||
|
const uvc = code['upvalue-count'];
|
||||||
|
const locals = code.locals || code['locals'];
|
||||||
|
if (arity) result.arity = typeof arity === 'number' ? arity : 0;
|
||||||
|
if (uvc) result['upvalue-count'] = typeof uvc === 'number' ? uvc : 0;
|
||||||
|
if (locals) result.locals = typeof locals === 'number' ? locals : 0;
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
function serializeConstantJson(c) {
|
||||||
|
if (c === null || c === undefined) return { t: 'nil' };
|
||||||
|
if (typeof c === 'number') return { t: 'n', v: c };
|
||||||
|
if (typeof c === 'string') return { t: 's', v: c };
|
||||||
|
if (typeof c === 'boolean') return { t: 'b', v: c };
|
||||||
|
if (c._type === 'symbol') return { t: 'sym', v: c.name };
|
||||||
|
if (c._type === 'keyword') return { t: 'kw', v: c.name };
|
||||||
|
if (c._type === 'list') return { t: 'list', v: extractList(c).map(serializeConstantJson) };
|
||||||
|
if (c.bytecode) return { t: 'code', v: serializeModuleToJson(c) };
|
||||||
|
if (c._type === 'dict') {
|
||||||
|
const bc = c.get ? c.get('bytecode') : c.bytecode;
|
||||||
|
if (bc) return { t: 'code', v: serializeModuleToJson(c) };
|
||||||
|
const entries = {};
|
||||||
|
if (c.forEach) c.forEach((v, k) => { entries[k] = serializeConstantJson(v); });
|
||||||
|
return { t: 'dict', v: entries };
|
||||||
|
}
|
||||||
|
return { t: 'nil' };
|
||||||
}
|
}
|
||||||
|
|
||||||
function extractList(v) {
|
function extractList(v) {
|
||||||
@@ -104,25 +190,3 @@ function extractList(v) {
|
|||||||
if (v.items) return v.items;
|
if (v.items) return v.items;
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
function serializeConstant(c) {
|
|
||||||
if (c === null || c === undefined) return { t: 'nil' };
|
|
||||||
if (typeof c === 'number') return { t: 'n', v: c };
|
|
||||||
if (typeof c === 'string') return { t: 's', v: c };
|
|
||||||
if (typeof c === 'boolean') return { t: 'b', v: c };
|
|
||||||
if (c._type === 'symbol') return { t: 'sym', v: c.name };
|
|
||||||
if (c._type === 'keyword') return { t: 'kw', v: c.name };
|
|
||||||
if (c._type === 'list') return { t: 'list', v: extractList(c).map(serializeConstant) };
|
|
||||||
// Code object (nested lambda bytecode)
|
|
||||||
if (c.bytecode) return { t: 'code', v: serializeModule(c) };
|
|
||||||
if (c._type === 'dict') {
|
|
||||||
// Check if it's a code object stored as dict
|
|
||||||
const bc = c.get ? c.get('bytecode') : c.bytecode;
|
|
||||||
if (bc) return { t: 'code', v: serializeModule(c) };
|
|
||||||
// Regular dict
|
|
||||||
const entries = {};
|
|
||||||
if (c.forEach) c.forEach((v, k) => { entries[k] = serializeConstant(v); });
|
|
||||||
return { t: 'dict', v: entries };
|
|
||||||
}
|
|
||||||
return { t: 'nil' };
|
|
||||||
}
|
|
||||||
|
|||||||
@@ -503,6 +503,41 @@ let () =
|
|||||||
let d = Hashtbl.create 2 in Hashtbl.replace d "ok" (Bool false); Hashtbl.replace d "error" (String msg); Dict d)
|
let d = Hashtbl.create 2 in Hashtbl.replace d "ok" (Bool false); Hashtbl.replace d "error" (String msg); Dict d)
|
||||||
| _ -> raise (Eval_error "try-call: 1 arg"));
|
| _ -> raise (Eval_error "try-call: 1 arg"));
|
||||||
|
|
||||||
|
(* --- Bytecode loading from s-expression format ---
|
||||||
|
(sxbc version hash (code :arity N :upvalue-count N :bytecode (...) :constants (...)))
|
||||||
|
Recursively converts the SX tree into the dict format that loadModule expects. *)
|
||||||
|
bind "load-sxbc" (fun args ->
|
||||||
|
match args with
|
||||||
|
| [List (_ :: _ :: _ :: code_form :: _)] | [List (_ :: _ :: code_form :: _)] ->
|
||||||
|
let rec convert_code form =
|
||||||
|
match form with
|
||||||
|
| List (Symbol "code" :: rest) ->
|
||||||
|
let d = Hashtbl.create 8 in
|
||||||
|
let rec parse_kv = function
|
||||||
|
| Keyword "arity" :: Number n :: rest -> Hashtbl.replace d "arity" (Number n); parse_kv rest
|
||||||
|
| Keyword "upvalue-count" :: Number n :: rest -> Hashtbl.replace d "upvalue-count" (Number n); parse_kv rest
|
||||||
|
| Keyword "bytecode" :: List nums :: rest ->
|
||||||
|
Hashtbl.replace d "bytecode" (List nums); parse_kv rest
|
||||||
|
| Keyword "constants" :: List consts :: rest ->
|
||||||
|
Hashtbl.replace d "constants" (List (List.map convert_const consts)); parse_kv rest
|
||||||
|
| _ :: rest -> parse_kv rest (* skip unknown keywords *)
|
||||||
|
| [] -> ()
|
||||||
|
in
|
||||||
|
parse_kv rest;
|
||||||
|
Dict d
|
||||||
|
| _ -> raise (Eval_error ("load-sxbc: expected (code ...), got " ^ type_of form))
|
||||||
|
and convert_const = function
|
||||||
|
| List (Symbol "code" :: _) as form -> convert_code form
|
||||||
|
| List (Symbol "list" :: items) -> List (List.map convert_const items)
|
||||||
|
| v -> v (* strings, numbers, booleans, nil, symbols, keywords pass through *)
|
||||||
|
in
|
||||||
|
let module_val = convert_code code_form in
|
||||||
|
let code = Sx_vm.code_from_value module_val in
|
||||||
|
let _result = Sx_vm.execute_module code _vm_globals in
|
||||||
|
sync_vm_to_env ();
|
||||||
|
Number (float_of_int (Hashtbl.length _vm_globals))
|
||||||
|
| _ -> raise (Eval_error "load-sxbc: expected (sxbc version hash (code ...))"));
|
||||||
|
|
||||||
(* --- List mutation --- *)
|
(* --- List mutation --- *)
|
||||||
bind "append!" (fun args ->
|
bind "append!" (fun args ->
|
||||||
match args with
|
match args with
|
||||||
|
|||||||
@@ -199,6 +199,7 @@
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Deserialize type-tagged JSON constant back to JS value for loadModule.
|
* Deserialize type-tagged JSON constant back to JS value for loadModule.
|
||||||
|
* (Legacy — used for .sxbc.json fallback)
|
||||||
*/
|
*/
|
||||||
function deserializeConstant(c) {
|
function deserializeConstant(c) {
|
||||||
if (!c || !c.t) return null;
|
if (!c || !c.t) return null;
|
||||||
@@ -228,33 +229,58 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Try loading a pre-compiled .sxbc.json bytecode module.
|
* Try loading a pre-compiled bytecode module.
|
||||||
|
* Tries .sxbc (s-expression) first, falls back to .sxbc.json (legacy).
|
||||||
* Returns true on success, null on failure (caller falls back to .sx source).
|
* Returns true on success, null on failure (caller falls back to .sx source).
|
||||||
*/
|
*/
|
||||||
function loadBytecodeFile(path) {
|
function loadBytecodeFile(path) {
|
||||||
var bcPath = path.replace(/\.sx$/, '.sxbc.json');
|
// Try .sxbc (s-expression format) first
|
||||||
var url = _baseUrl + bcPath + _cacheBust;
|
var sxbcPath = path.replace(/\.sx$/, '.sxbc');
|
||||||
|
var url = _baseUrl + sxbcPath + _cacheBust;
|
||||||
try {
|
try {
|
||||||
var xhr = new XMLHttpRequest();
|
var xhr = new XMLHttpRequest();
|
||||||
xhr.open("GET", url, false);
|
xhr.open("GET", url, false);
|
||||||
xhr.send();
|
xhr.send();
|
||||||
if (xhr.status !== 200) return null;
|
if (xhr.status === 200 && xhr.responseText.indexOf("(sxbc") === 0) {
|
||||||
|
// Parse with the SX kernel — returns the (sxbc ...) form
|
||||||
|
var parsed = K.eval('(first (sx-parse ' + JSON.stringify(xhr.responseText) + '))');
|
||||||
|
// (sxbc version hash (code ...)) — third element is the module
|
||||||
|
var module = K.eval('(nth (sx-parse ' + JSON.stringify(xhr.responseText) + ') 0)');
|
||||||
|
// Use evalSxbc which understands the sxbc format
|
||||||
|
var result = K.eval('(load-sxbc (first (sx-parse ' + JSON.stringify(xhr.responseText) + ')))');
|
||||||
|
if (typeof result === 'string' && result.indexOf('Error') === 0) {
|
||||||
|
console.warn("[sx-platform] sxbc FAIL " + path + ":", result);
|
||||||
|
} else {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch(e) {
|
||||||
|
// Fall through to JSON
|
||||||
|
}
|
||||||
|
|
||||||
var json = JSON.parse(xhr.responseText);
|
// Fallback: .sxbc.json (legacy format)
|
||||||
|
var bcPath = path.replace(/\.sx$/, '.sxbc.json');
|
||||||
|
url = _baseUrl + bcPath + _cacheBust;
|
||||||
|
try {
|
||||||
|
var xhr2 = new XMLHttpRequest();
|
||||||
|
xhr2.open("GET", url, false);
|
||||||
|
xhr2.send();
|
||||||
|
if (xhr2.status !== 200) return null;
|
||||||
|
|
||||||
|
var json = JSON.parse(xhr2.responseText);
|
||||||
if (!json.module || json.magic !== 'SXBC') return null;
|
if (!json.module || json.magic !== 'SXBC') return null;
|
||||||
|
|
||||||
var module = {
|
var module2 = {
|
||||||
_type: 'dict',
|
_type: 'dict',
|
||||||
bytecode: { _type: 'list', items: json.module.bytecode },
|
bytecode: { _type: 'list', items: json.module.bytecode },
|
||||||
constants: { _type: 'list', items: json.module.constants.map(deserializeConstant) },
|
constants: { _type: 'list', items: json.module.constants.map(deserializeConstant) },
|
||||||
};
|
};
|
||||||
|
|
||||||
var result = K.loadModule(module);
|
var result2 = K.loadModule(module2);
|
||||||
if (typeof result === 'string' && result.indexOf('Error') === 0) {
|
if (typeof result2 === 'string' && result2.indexOf('Error') === 0) {
|
||||||
console.warn("[sx-platform] bytecode FAIL " + path + ":", result);
|
console.warn("[sx-platform] bytecode FAIL " + path + ":", result2);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
console.log("[sx-platform] ok " + path + " (bytecode)");
|
|
||||||
return true;
|
return true;
|
||||||
} catch(e) {
|
} catch(e) {
|
||||||
console.error("[sx-platform] bytecode EXCEPTION " + path + ":", e);
|
console.error("[sx-platform] bytecode EXCEPTION " + path + ":", e);
|
||||||
|
|||||||
1184
shared/static/wasm/sx/adapter-dom.sxbc
Normal file
1184
shared/static/wasm/sx/adapter-dom.sxbc
Normal file
File diff suppressed because one or more lines are too long
543
shared/static/wasm/sx/adapter-html.sxbc
Normal file
543
shared/static/wasm/sx/adapter-html.sxbc
Normal file
@@ -0,0 +1,543 @@
|
|||||||
|
(sxbc 1 "086e7cdb6c662abb"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 1 6 0 1 7 0 1 8 0 1 9 0 1 10 0 1 11 0 1 12 0 1 13 0 1 14 0 1 15 0 1 16 0 1 17 0 1 18 0 1 19 0 1 20 0 1 21 0 1 22 0 1 23 0 1 24 0 1 25 0 1 26 0 1 27 0 52 5 0 22 128 4 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 51 33 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 5 51 45 0 128 44 0 5 51 47 0 128 46 0 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 3 48 1 5 16 0 52 1 0 1 6 1 2 0 52 3 0 2 33 7 0 5 1 4 0 32 27 1 6 1 5 0 52 3 0 2 33 11 0 5 20 6 0 16 0 49 1 32 5 1 6 1 7 0 52 3 0 2 33 10 0 5 16 0 52 8 0 1 32 240 0 6 1 9 0 52 3 0 2 33 18 0 5 16 0 33 6 0 1 10 0 32 3 0 1 11 0 32 211 0 6 1 12 0 52 3 0 2 33 28 0 5 16 0 52 13 0 1 33 6 0 1 4 0 32 9 0 20 14 0 16 0 16 1 49 2 32 172 0 6 1 15 0 52 3 0 2 33 25 0 5 20 16 0 20 17 0 20 18 0 16 0 16 1 48 2 48 1 16 1 49 2 32 136 0 6 1 19 0 52 3 0 2 33 16 0 5 20 6 0 20 20 0 16 0 48 1 49 1 32 109 0 6 1 21 0 52 3 0 2 33 10 0 5 16 0 52 22 0 1 32 88 0 6 1 23 0 52 3 0 2 33 21 0 5 1 25 0 16 0 52 26 0 1 52 24 0 2 5 1 4 0 32 56 0 6 1 27 0 52 3 0 2 33 23 0 5 20 28 0 20 29 0 16 0 48 1 20 30 0 16 0 48 1 49 2 32 22 0 5 20 16 0 20 17 0 20 18 0 16 0 16 1 48 2 48 1 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"set-render-active!"
|
||||||
|
"type-of"
|
||||||
|
"nil"
|
||||||
|
"="
|
||||||
|
""
|
||||||
|
"string"
|
||||||
|
"escape-html"
|
||||||
|
"number"
|
||||||
|
"str"
|
||||||
|
"boolean"
|
||||||
|
"true"
|
||||||
|
"false"
|
||||||
|
"list"
|
||||||
|
"empty?"
|
||||||
|
"render-list-to-html"
|
||||||
|
"symbol"
|
||||||
|
"render-value-to-html"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"
|
||||||
|
"raw-html"
|
||||||
|
"raw-html-content"
|
||||||
|
"spread"
|
||||||
|
"scope-emit!"
|
||||||
|
"element-attrs"
|
||||||
|
"spread-attrs"
|
||||||
|
"thunk"
|
||||||
|
"render-to-html"
|
||||||
|
"thunk-expr"
|
||||||
|
"thunk-env"))
|
||||||
|
"render-value-to-html"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 0 0 1 6 1 1 0 52 2 0 2 33 7 0 5 1 3 0 32 195 0 6 1 4 0 52 2 0 2 33 11 0 5 20 5 0 16 0 49 1 32 173 0 6 1 6 0 52 2 0 2 33 10 0 5 16 0 52 7 0 1 32 152 0 6 1 8 0 52 2 0 2 33 18 0 5 16 0 33 6 0 1 9 0 32 3 0 1 10 0 32 123 0 6 1 11 0 52 2 0 2 33 13 0 5 20 12 0 16 0 16 1 49 2 32 99 0 6 1 13 0 52 2 0 2 33 10 0 5 16 0 52 14 0 1 32 78 0 6 1 15 0 52 2 0 2 33 21 0 5 1 17 0 16 0 52 18 0 1 52 16 0 2 5 1 3 0 32 46 0 6 1 19 0 52 2 0 2 33 23 0 5 20 20 0 20 21 0 16 0 48 1 20 22 0 16 0 48 1 49 2 32 12 0 5 20 5 0 16 0 52 7 0 1 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"type-of"
|
||||||
|
"nil"
|
||||||
|
"="
|
||||||
|
""
|
||||||
|
"string"
|
||||||
|
"escape-html"
|
||||||
|
"number"
|
||||||
|
"str"
|
||||||
|
"boolean"
|
||||||
|
"true"
|
||||||
|
"false"
|
||||||
|
"list"
|
||||||
|
"render-list-to-html"
|
||||||
|
"raw-html"
|
||||||
|
"raw-html-content"
|
||||||
|
"spread"
|
||||||
|
"scope-emit!"
|
||||||
|
"element-attrs"
|
||||||
|
"spread-attrs"
|
||||||
|
"thunk"
|
||||||
|
"render-to-html"
|
||||||
|
"thunk-expr"
|
||||||
|
"thunk-env"))
|
||||||
|
"RENDER_HTML_FORMS"
|
||||||
|
"list"
|
||||||
|
"if"
|
||||||
|
"when"
|
||||||
|
"cond"
|
||||||
|
"case"
|
||||||
|
"let"
|
||||||
|
"let*"
|
||||||
|
"letrec"
|
||||||
|
"begin"
|
||||||
|
"do"
|
||||||
|
"define"
|
||||||
|
"defcomp"
|
||||||
|
"defisland"
|
||||||
|
"defmacro"
|
||||||
|
"defstyle"
|
||||||
|
"deftype"
|
||||||
|
"defeffect"
|
||||||
|
"map"
|
||||||
|
"map-indexed"
|
||||||
|
"filter"
|
||||||
|
"for-each"
|
||||||
|
"scope"
|
||||||
|
"provide"
|
||||||
|
"render-html-form?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"contains?"
|
||||||
|
"RENDER_HTML_FORMS"))
|
||||||
|
"render-list-to-html"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 0 0 1 33 6 0 1 1 0 32 15 2 16 0 52 2 0 1 17 2 16 2 52 5 0 1 1 6 0 52 4 0 2 52 3 0 1 33 21 0 1 1 0 51 9 0 1 1 16 0 52 8 0 2 52 7 0 2 32 222 1 20 10 0 16 2 48 1 17 3 16 0 52 11 0 1 17 4 16 3 1 12 0 52 4 0 2 33 21 0 1 1 0 51 13 0 1 1 16 4 52 8 0 2 52 7 0 2 32 172 1 16 3 1 14 0 52 4 0 2 33 21 0 1 1 0 51 15 0 1 1 16 4 52 8 0 2 52 7 0 2 32 139 1 16 3 1 16 0 52 4 0 2 33 12 0 20 17 0 16 4 16 1 49 2 32 115 1 16 3 1 18 0 52 4 0 2 33 12 0 20 19 0 16 4 16 1 49 2 32 91 1 16 3 1 20 0 52 4 0 2 6 34 24 0 5 16 3 1 21 0 52 4 0 2 6 34 10 0 5 16 3 1 22 0 52 4 0 2 33 21 0 1 1 0 51 13 0 1 1 16 4 52 8 0 2 52 7 0 2 32 30 1 20 24 0 16 3 52 23 0 2 33 14 0 20 25 0 16 3 16 4 16 1 49 3 32 4 1 16 3 1 27 0 52 26 0 2 6 33 28 0 5 20 28 0 16 1 16 3 48 2 6 33 14 0 5 20 30 0 16 1 16 3 48 2 52 29 0 1 33 21 0 20 31 0 20 30 0 16 1 16 3 48 2 16 4 16 1 49 3 32 195 0 16 3 1 27 0 52 26 0 2 33 80 0 20 30 0 16 1 16 3 48 2 17 5 16 5 52 32 0 1 33 14 0 20 33 0 16 5 16 4 16 1 49 3 32 43 0 16 5 52 34 0 1 33 21 0 20 35 0 20 36 0 16 5 16 4 16 1 48 3 16 1 49 2 32 13 0 1 39 0 16 3 52 38 0 2 52 37 0 1 32 103 0 20 40 0 16 3 48 1 33 14 0 20 41 0 16 3 16 0 16 1 49 3 32 79 0 20 28 0 16 1 16 3 48 2 6 33 14 0 5 20 30 0 16 1 16 3 48 2 52 34 0 1 33 28 0 20 35 0 20 36 0 20 30 0 16 1 16 3 48 2 16 4 16 1 48 3 16 1 49 2 32 21 0 20 42 0 20 43 0 20 44 0 16 0 16 1 48 2 48 1 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
""
|
||||||
|
"first"
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"join"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-value-to-html"))
|
||||||
|
"symbol-name"
|
||||||
|
"rest"
|
||||||
|
"<>"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"))
|
||||||
|
"raw!"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 1 0 20 2 0 16 0 18 0 48 2 48 1 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"str"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"))
|
||||||
|
"lake"
|
||||||
|
"render-html-lake"
|
||||||
|
"marsh"
|
||||||
|
"render-html-marsh"
|
||||||
|
"portal"
|
||||||
|
"error-boundary"
|
||||||
|
"promise-delayed"
|
||||||
|
"contains?"
|
||||||
|
"HTML_TAGS"
|
||||||
|
"render-html-element"
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"env-has?"
|
||||||
|
"island?"
|
||||||
|
"env-get"
|
||||||
|
"render-html-island"
|
||||||
|
"component?"
|
||||||
|
"render-html-component"
|
||||||
|
"macro?"
|
||||||
|
"render-to-html"
|
||||||
|
"expand-macro"
|
||||||
|
"error"
|
||||||
|
"str"
|
||||||
|
"Unknown component: "
|
||||||
|
"render-html-form?"
|
||||||
|
"dispatch-html-form"
|
||||||
|
"render-value-to-html"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"))
|
||||||
|
"dispatch-html-form"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 88 0 20 2 0 20 3 0 16 1 1 5 0 52 4 0 2 16 2 48 2 48 1 17 3 16 3 33 19 0 20 6 0 16 1 1 7 0 52 4 0 2 16 2 49 2 32 38 0 16 1 52 9 0 1 1 10 0 52 8 0 2 33 19 0 20 6 0 16 1 1 10 0 52 4 0 2 16 2 49 2 32 3 0 1 11 0 32 227 4 16 0 1 12 0 52 0 0 2 33 103 0 20 2 0 20 3 0 16 1 1 5 0 52 4 0 2 16 2 48 2 48 1 52 13 0 1 33 6 0 1 11 0 32 66 0 16 1 52 9 0 1 1 10 0 52 0 0 2 33 19 0 20 6 0 16 1 1 7 0 52 4 0 2 16 2 49 2 32 31 0 1 11 0 51 16 0 1 1 1 2 1 7 0 16 1 52 9 0 1 52 17 0 2 52 15 0 2 52 14 0 2 32 112 4 16 0 1 18 0 52 0 0 2 33 38 0 20 19 0 16 1 52 20 0 1 16 2 48 2 17 3 16 3 33 12 0 20 6 0 16 3 16 2 49 2 32 3 0 1 11 0 32 62 4 16 0 1 21 0 52 0 0 2 33 24 0 20 6 0 20 2 0 20 3 0 16 1 16 2 48 2 48 1 16 2 49 2 32 26 4 16 0 1 22 0 52 0 0 2 33 107 0 16 1 1 5 0 52 4 0 2 17 3 16 1 1 7 0 52 23 0 2 17 4 20 24 0 16 2 48 1 17 5 51 26 0 1 5 16 3 52 25 0 2 5 51 27 0 1 5 16 3 52 25 0 2 5 16 4 52 9 0 1 1 5 0 52 8 0 2 33 18 0 51 28 0 1 5 16 4 52 29 0 1 52 25 0 2 32 1 0 2 5 20 6 0 16 4 52 30 0 1 16 5 49 2 32 163 3 16 0 1 31 0 52 0 0 2 6 34 10 0 5 16 0 1 32 0 52 0 0 2 33 87 0 20 33 0 16 1 1 5 0 52 4 0 2 16 2 48 2 17 3 16 1 52 9 0 1 1 10 0 52 0 0 2 33 19 0 20 6 0 16 1 1 7 0 52 4 0 2 16 3 49 2 32 31 0 1 11 0 51 16 0 1 1 1 3 1 7 0 16 1 52 9 0 1 52 17 0 2 52 15 0 2 52 14 0 2 32 50 3 16 0 1 34 0 52 0 0 2 6 34 10 0 5 16 0 1 35 0 52 0 0 2 33 69 0 16 1 52 9 0 1 1 7 0 52 0 0 2 33 19 0 20 6 0 16 1 1 5 0 52 4 0 2 16 2 49 2 32 31 0 1 11 0 51 16 0 1 1 1 2 1 5 0 16 1 52 9 0 1 52 17 0 2 52 15 0 2 52 14 0 2 32 211 2 20 36 0 16 0 48 1 33 21 0 20 2 0 20 3 0 16 1 16 2 48 2 48 1 5 1 11 0 32 180 2 16 0 1 15 0 52 0 0 2 33 69 0 20 2 0 20 3 0 16 1 1 5 0 52 4 0 2 16 2 48 2 48 1 17 3 20 2 0 20 3 0 16 1 1 7 0 52 4 0 2 16 2 48 2 48 1 17 4 1 11 0 51 37 0 1 3 1 2 16 4 52 15 0 2 52 14 0 2 32 99 2 16 0 1 38 0 52 0 0 2 33 69 0 20 2 0 20 3 0 16 1 1 5 0 52 4 0 2 16 2 48 2 48 1 17 3 20 2 0 20 3 0 16 1 1 7 0 52 4 0 2 16 2 48 2 48 1 17 4 1 11 0 51 39 0 1 3 1 2 16 4 52 38 0 2 52 14 0 2 32 18 2 16 0 1 40 0 52 0 0 2 33 24 0 20 6 0 20 2 0 20 3 0 16 1 16 2 48 2 48 1 16 2 49 2 32 238 1 16 0 1 25 0 52 0 0 2 33 69 0 20 2 0 20 3 0 16 1 1 5 0 52 4 0 2 16 2 48 2 48 1 17 3 20 2 0 20 3 0 16 1 1 7 0 52 4 0 2 16 2 48 2 48 1 17 4 1 11 0 51 37 0 1 3 1 2 16 4 52 15 0 2 52 14 0 2 32 157 1 16 0 1 41 0 52 0 0 2 33 217 0 20 2 0 20 3 0 16 1 1 5 0 52 4 0 2 16 2 48 2 48 1 17 3 16 1 1 7 0 52 23 0 2 17 4 2 17 5 2 17 6 16 4 52 9 0 1 1 7 0 52 42 0 2 6 33 41 0 5 16 4 52 44 0 1 52 43 0 1 1 45 0 52 0 0 2 6 33 19 0 5 20 46 0 16 4 52 44 0 1 48 1 1 47 0 52 0 0 2 33 38 0 20 2 0 20 3 0 16 4 1 5 0 52 4 0 2 16 2 48 2 48 1 17 5 5 16 4 1 7 0 52 23 0 2 17 6 32 4 0 16 4 17 6 5 16 3 16 5 52 48 0 2 5 16 6 52 9 0 1 1 5 0 52 0 0 2 33 16 0 20 6 0 16 6 52 44 0 1 16 2 48 2 32 18 0 1 11 0 51 49 0 1 2 16 6 52 15 0 2 52 14 0 2 17 7 16 3 52 50 0 1 5 16 7 32 184 0 16 0 1 51 0 52 0 0 2 33 151 0 20 2 0 20 3 0 16 1 1 5 0 52 4 0 2 16 2 48 2 48 1 17 3 20 2 0 20 3 0 16 1 1 7 0 52 4 0 2 16 2 48 2 48 1 17 4 1 10 0 17 5 16 1 52 9 0 1 1 10 0 52 52 0 2 17 6 16 3 16 4 52 48 0 2 5 16 6 1 5 0 52 0 0 2 33 18 0 20 6 0 16 1 16 5 52 4 0 2 16 2 48 2 32 32 0 1 11 0 51 16 0 1 1 1 2 16 5 16 5 16 6 52 53 0 2 52 17 0 2 52 15 0 2 52 14 0 2 17 7 16 3 52 50 0 1 5 16 7 32 21 0 20 54 0 20 2 0 20 3 0 16 1 16 2 48 2 48 1 16 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"if"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"render-to-html"
|
||||||
|
2
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
3
|
||||||
|
""
|
||||||
|
"when"
|
||||||
|
"not"
|
||||||
|
"join"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 52 1 0 2 18 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"
|
||||||
|
"nth"))
|
||||||
|
"range"
|
||||||
|
"cond"
|
||||||
|
"eval-cond"
|
||||||
|
"rest"
|
||||||
|
"case"
|
||||||
|
"letrec"
|
||||||
|
"slice"
|
||||||
|
"env-extend"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 2 0 1 52 1 0 1 1 3 0 52 0 0 2 33 14 0 20 4 0 16 0 52 2 0 1 48 1 32 10 0 16 0 52 2 0 1 52 5 0 1 17 1 20 6 0 18 0 16 1 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"str"
|
||||||
|
"env-bind!"))
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 2 0 1 52 1 0 1 1 3 0 52 0 0 2 33 14 0 20 4 0 16 0 52 2 0 1 48 1 32 10 0 16 0 52 2 0 1 52 5 0 1 17 1 20 6 0 18 0 16 1 20 7 0 20 8 0 16 0 1 10 0 52 9 0 2 18 0 48 2 48 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"str"
|
||||||
|
"env-set!"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"nth"
|
||||||
|
1))
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 18 0 48 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"))
|
||||||
|
"init"
|
||||||
|
"last"
|
||||||
|
"let"
|
||||||
|
"let*"
|
||||||
|
"process-bindings"
|
||||||
|
"begin"
|
||||||
|
"do"
|
||||||
|
"definition-form?"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 52 0 0 1 33 18 0 20 1 0 18 0 16 0 52 2 0 1 18 1 49 3 32 19 0 20 3 0 18 0 16 0 52 2 0 1 52 4 0 2 18 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"lambda?"
|
||||||
|
"render-lambda-html"
|
||||||
|
"list"
|
||||||
|
"render-to-html"
|
||||||
|
"apply"))
|
||||||
|
"map-indexed"
|
||||||
|
(code :arity 2 :upvalue-count 2
|
||||||
|
:bytecode (18 0 52 0 0 1 33 20 0 20 1 0 18 0 16 0 16 1 52 2 0 2 18 1 49 3 32 21 0 20 3 0 18 0 16 0 16 1 52 2 0 2 52 4 0 2 18 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"lambda?"
|
||||||
|
"render-lambda-html"
|
||||||
|
"list"
|
||||||
|
"render-to-html"
|
||||||
|
"apply"))
|
||||||
|
"filter"
|
||||||
|
"scope"
|
||||||
|
">="
|
||||||
|
"type-of"
|
||||||
|
"first"
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"
|
||||||
|
"value"
|
||||||
|
"scope-push!"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"))
|
||||||
|
"scope-pop!"
|
||||||
|
"provide"
|
||||||
|
"-"
|
||||||
|
"+"
|
||||||
|
"render-value-to-html"))
|
||||||
|
"render-lambda-html"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 52 1 0 1 16 2 48 2 17 3 51 3 0 1 3 1 1 16 0 52 4 0 1 52 2 0 2 5 20 5 0 16 0 52 6 0 1 16 3 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"env-merge"
|
||||||
|
"lambda-closure"
|
||||||
|
"for-each-indexed"
|
||||||
|
(code :arity 2 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 1 18 1 16 0 52 1 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"env-bind!"
|
||||||
|
"nth"))
|
||||||
|
"lambda-params"
|
||||||
|
"render-to-html"
|
||||||
|
"lambda-body"))
|
||||||
|
"render-html-component"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (52 0 0 0 17 3 52 1 0 0 17 4 51 3 0 1 1 1 2 1 3 1 4 1 4 0 1 5 0 1 6 0 4 52 0 0 4 16 1 52 2 0 3 5 20 7 0 16 0 52 8 0 1 16 2 48 2 17 5 51 10 0 1 5 1 3 16 0 52 11 0 1 52 9 0 2 5 16 0 52 12 0 1 33 35 0 20 13 0 16 5 1 14 0 1 17 0 51 19 0 1 2 16 4 52 18 0 2 52 16 0 2 52 15 0 1 48 3 32 1 0 2 5 20 20 0 16 0 52 21 0 1 16 5 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"dict"
|
||||||
|
"list"
|
||||||
|
"reduce"
|
||||||
|
(code :arity 2 :upvalue-count 4
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 2 16 2 33 29 0 16 0 1 1 0 4 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 154 0 16 1 52 6 0 1 1 7 0 52 5 0 2 6 33 24 0 5 16 0 1 3 0 52 0 0 2 52 4 0 1 18 0 52 9 0 1 52 8 0 2 33 78 0 20 10 0 20 11 0 18 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 12 0 2 18 1 48 2 48 1 17 3 18 2 20 14 0 16 1 48 1 16 3 52 13 0 3 5 16 0 1 1 0 3 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 32 0 20 15 0 18 3 16 1 48 2 5 16 0 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"skip"
|
||||||
|
"assoc"
|
||||||
|
"i"
|
||||||
|
"inc"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"nth"
|
||||||
|
"dict-set!"
|
||||||
|
"keyword-name"
|
||||||
|
"append!"))
|
||||||
|
"i"
|
||||||
|
0
|
||||||
|
"skip"
|
||||||
|
"env-merge"
|
||||||
|
"component-closure"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 18 1 16 0 52 1 0 2 33 11 0 18 1 16 0 52 2 0 2 32 1 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"env-bind!"
|
||||||
|
"dict-has?"
|
||||||
|
"dict-get"))
|
||||||
|
"component-params"
|
||||||
|
"component-has-children?"
|
||||||
|
"env-bind!"
|
||||||
|
"children"
|
||||||
|
"make-raw-html"
|
||||||
|
"join"
|
||||||
|
""
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"))
|
||||||
|
"render-to-html"
|
||||||
|
"component-body"))
|
||||||
|
"render-html-element"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 1 16 2 48 2 17 3 16 3 52 1 0 1 17 4 16 3 1 3 0 52 2 0 2 17 5 20 5 0 16 0 52 4 0 2 17 6 16 6 33 22 0 1 7 0 16 0 20 8 0 16 4 48 1 1 9 0 52 6 0 4 32 83 0 1 11 0 2 52 10 0 2 5 1 13 0 51 15 0 1 2 16 5 52 14 0 2 52 12 0 2 17 7 51 17 0 1 4 1 11 0 52 18 0 1 52 16 0 2 5 1 11 0 52 19 0 1 5 1 7 0 16 0 20 8 0 16 4 48 1 1 20 0 16 7 1 21 0 16 0 1 20 0 52 6 0 8 50)
|
||||||
|
:constants (
|
||||||
|
"parse-element-args"
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"contains?"
|
||||||
|
"VOID_ELEMENTS"
|
||||||
|
"str"
|
||||||
|
"<"
|
||||||
|
"render-attrs"
|
||||||
|
" />"
|
||||||
|
"scope-push!"
|
||||||
|
"element-attrs"
|
||||||
|
"join"
|
||||||
|
""
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"))
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"merge-spread-attrs"))
|
||||||
|
"scope-emitted"
|
||||||
|
"scope-pop!"
|
||||||
|
">"
|
||||||
|
"</"))
|
||||||
|
"render-html-lake"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (2 17 2 1 0 0 17 3 52 1 0 0 17 4 51 3 0 1 0 1 1 1 2 1 3 1 4 1 5 0 1 6 0 1 7 0 4 52 4 0 4 16 0 52 2 0 3 5 1 8 0 16 2 6 34 4 0 5 1 9 0 52 4 0 2 17 5 1 11 0 2 52 10 0 2 5 1 9 0 51 14 0 1 1 16 4 52 13 0 2 52 12 0 2 17 6 51 16 0 1 5 1 11 0 52 17 0 1 52 15 0 2 5 1 11 0 52 18 0 1 5 1 20 0 16 3 20 21 0 16 5 48 1 1 22 0 16 6 1 23 0 16 3 1 22 0 52 19 0 8 50)
|
||||||
|
:constants (
|
||||||
|
"div"
|
||||||
|
"list"
|
||||||
|
"reduce"
|
||||||
|
(code :arity 2 :upvalue-count 5
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 2 16 2 33 29 0 16 0 1 1 0 4 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 187 0 16 1 52 6 0 1 1 7 0 52 5 0 2 6 33 24 0 5 16 0 1 3 0 52 0 0 2 52 4 0 1 18 0 52 9 0 1 52 8 0 2 33 111 0 20 10 0 16 1 48 1 17 3 20 11 0 20 12 0 18 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 13 0 2 18 1 48 2 48 1 17 4 16 3 1 14 0 52 5 0 2 33 7 0 16 4 19 2 32 20 0 16 3 1 15 0 52 5 0 2 33 7 0 16 4 19 3 32 1 0 2 5 16 0 1 1 0 3 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 32 0 20 16 0 18 4 16 1 48 2 5 16 0 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"skip"
|
||||||
|
"assoc"
|
||||||
|
"i"
|
||||||
|
"inc"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"keyword-name"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"nth"
|
||||||
|
"id"
|
||||||
|
"tag"
|
||||||
|
"append!"))
|
||||||
|
"dict"
|
||||||
|
"i"
|
||||||
|
0
|
||||||
|
"skip"
|
||||||
|
"data-sx-lake"
|
||||||
|
""
|
||||||
|
"scope-push!"
|
||||||
|
"element-attrs"
|
||||||
|
"join"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"))
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"merge-spread-attrs"))
|
||||||
|
"scope-emitted"
|
||||||
|
"scope-pop!"
|
||||||
|
"str"
|
||||||
|
"<"
|
||||||
|
"render-attrs"
|
||||||
|
">"
|
||||||
|
"</"))
|
||||||
|
"render-html-marsh"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (2 17 2 1 0 0 17 3 52 1 0 0 17 4 51 3 0 1 0 1 1 1 2 1 3 1 4 1 5 0 1 6 0 1 7 0 4 52 4 0 4 16 0 52 2 0 3 5 1 8 0 16 2 6 34 4 0 5 1 9 0 52 4 0 2 17 5 1 11 0 2 52 10 0 2 5 1 9 0 51 14 0 1 1 16 4 52 13 0 2 52 12 0 2 17 6 51 16 0 1 5 1 11 0 52 17 0 1 52 15 0 2 5 1 11 0 52 18 0 1 5 1 20 0 16 3 20 21 0 16 5 48 1 1 22 0 16 6 1 23 0 16 3 1 22 0 52 19 0 8 50)
|
||||||
|
:constants (
|
||||||
|
"div"
|
||||||
|
"list"
|
||||||
|
"reduce"
|
||||||
|
(code :arity 2 :upvalue-count 5
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 2 16 2 33 29 0 16 0 1 1 0 4 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 203 0 16 1 52 6 0 1 1 7 0 52 5 0 2 6 33 24 0 5 16 0 1 3 0 52 0 0 2 52 4 0 1 18 0 52 9 0 1 52 8 0 2 33 127 0 20 10 0 16 1 48 1 17 3 20 11 0 20 12 0 18 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 13 0 2 18 1 48 2 48 1 17 4 16 3 1 14 0 52 5 0 2 33 7 0 16 4 19 2 32 36 0 16 3 1 15 0 52 5 0 2 33 7 0 16 4 19 3 32 17 0 16 3 1 16 0 52 5 0 2 33 4 0 2 32 1 0 2 5 16 0 1 1 0 3 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 32 0 20 17 0 18 4 16 1 48 2 5 16 0 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"skip"
|
||||||
|
"assoc"
|
||||||
|
"i"
|
||||||
|
"inc"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"keyword-name"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"nth"
|
||||||
|
"id"
|
||||||
|
"tag"
|
||||||
|
"transform"
|
||||||
|
"append!"))
|
||||||
|
"dict"
|
||||||
|
"i"
|
||||||
|
0
|
||||||
|
"skip"
|
||||||
|
"data-sx-marsh"
|
||||||
|
""
|
||||||
|
"scope-push!"
|
||||||
|
"element-attrs"
|
||||||
|
"join"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"))
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"merge-spread-attrs"))
|
||||||
|
"scope-emitted"
|
||||||
|
"scope-pop!"
|
||||||
|
"str"
|
||||||
|
"<"
|
||||||
|
"render-attrs"
|
||||||
|
">"
|
||||||
|
"</"))
|
||||||
|
"render-html-island"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (52 0 0 0 17 3 52 1 0 0 17 4 51 3 0 1 1 1 2 1 3 1 4 1 4 0 1 5 0 1 6 0 4 52 0 0 4 16 1 52 2 0 3 5 20 7 0 16 0 52 8 0 1 16 2 48 2 17 5 16 0 52 9 0 1 17 6 51 11 0 1 5 1 3 16 0 52 12 0 1 52 10 0 2 5 16 0 52 13 0 1 33 35 0 20 14 0 16 5 1 15 0 1 18 0 51 20 0 1 2 16 4 52 19 0 2 52 17 0 2 52 16 0 1 48 3 32 1 0 2 5 20 21 0 51 22 0 1 0 1 5 51 23 0 48 2 17 7 20 24 0 16 3 48 1 17 8 1 26 0 20 27 0 16 6 48 1 1 28 0 16 8 33 20 0 1 29 0 20 27 0 16 8 48 1 1 28 0 52 25 0 3 32 3 0 1 18 0 1 30 0 16 7 1 31 0 52 25 0 7 50)
|
||||||
|
:constants (
|
||||||
|
"dict"
|
||||||
|
"list"
|
||||||
|
"reduce"
|
||||||
|
(code :arity 2 :upvalue-count 4
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 2 16 2 33 29 0 16 0 1 1 0 4 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 154 0 16 1 52 6 0 1 1 7 0 52 5 0 2 6 33 24 0 5 16 0 1 3 0 52 0 0 2 52 4 0 1 18 0 52 9 0 1 52 8 0 2 33 78 0 20 10 0 20 11 0 18 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 12 0 2 18 1 48 2 48 1 17 3 18 2 20 14 0 16 1 48 1 16 3 52 13 0 3 5 16 0 1 1 0 3 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 32 0 20 15 0 18 3 16 1 48 2 5 16 0 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"skip"
|
||||||
|
"assoc"
|
||||||
|
"i"
|
||||||
|
"inc"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"nth"
|
||||||
|
"dict-set!"
|
||||||
|
"keyword-name"
|
||||||
|
"append!"))
|
||||||
|
"i"
|
||||||
|
0
|
||||||
|
"skip"
|
||||||
|
"env-merge"
|
||||||
|
"component-closure"
|
||||||
|
"component-name"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 18 1 16 0 52 1 0 2 33 11 0 18 1 16 0 52 2 0 2 32 1 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"env-bind!"
|
||||||
|
"dict-has?"
|
||||||
|
"dict-get"))
|
||||||
|
"component-params"
|
||||||
|
"component-has-children?"
|
||||||
|
"env-bind!"
|
||||||
|
"children"
|
||||||
|
"make-raw-html"
|
||||||
|
"join"
|
||||||
|
""
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"))
|
||||||
|
"cek-try"
|
||||||
|
(code :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 52 1 0 1 18 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"
|
||||||
|
"component-body"))
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 50)
|
||||||
|
:constants (
|
||||||
|
""))
|
||||||
|
"serialize-island-state"
|
||||||
|
"str"
|
||||||
|
"<span data-sx-island=\""
|
||||||
|
"escape-attr"
|
||||||
|
"\""
|
||||||
|
" data-sx-state=\""
|
||||||
|
">"
|
||||||
|
"</span>"))
|
||||||
|
"serialize-island-state"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 4 0 2 32 7 0 20 1 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"empty-dict?"
|
||||||
|
"sx-serialize")))))
|
||||||
511
shared/static/wasm/sx/adapter-sx.sxbc
Normal file
511
shared/static/wasm/sx/adapter-sx.sxbc
Normal file
@@ -0,0 +1,511 @@
|
|||||||
|
(sxbc 1 "13762a3a91f6b00d"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 1 16 0 1 17 0 1 18 0 1 19 0 1 20 0 1 21 0 1 22 0 1 23 0 1 24 0 1 25 0 1 26 0 1 27 0 1 28 0 1 29 0 1 30 0 1 31 0 1 32 0 1 33 0 1 34 0 1 35 0 1 36 0 1 37 0 1 38 0 1 39 0 1 40 0 1 41 0 1 42 0 1 43 0 1 44 0 1 45 0 1 46 0 1 47 0 1 48 0 1 49 0 1 50 0 52 15 0 35 128 14 0 5 1 52 0 1 53 0 1 54 0 1 55 0 1 56 0 1 57 0 1 58 0 52 15 0 7 128 51 0 5 51 60 0 128 59 0 5 51 62 0 128 61 0 5 51 64 0 128 63 0 5 51 66 0 128 65 0 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-sx"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 16 1 48 2 17 2 16 2 52 2 0 1 1 3 0 52 1 0 2 33 10 0 20 4 0 16 2 49 1 32 27 0 16 2 52 2 0 1 1 5 0 52 1 0 2 33 5 0 16 2 32 6 0 16 2 52 6 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"aser"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"sx-expr"
|
||||||
|
"sx-expr-source"
|
||||||
|
"string"
|
||||||
|
"serialize"))
|
||||||
|
"aser"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 3 48 1 5 16 0 52 1 0 1 6 1 2 0 52 3 0 2 33 6 0 5 16 0 32 16 1 6 1 4 0 52 3 0 2 33 6 0 5 16 0 32 255 0 6 1 5 0 52 3 0 2 33 6 0 5 16 0 32 238 0 6 1 6 0 52 3 0 2 33 5 0 5 2 32 222 0 6 1 7 0 52 3 0 2 33 116 0 5 20 8 0 16 0 48 1 17 3 20 9 0 16 1 16 3 48 2 33 12 0 20 10 0 16 1 16 3 48 2 32 79 0 16 3 52 11 0 1 33 9 0 16 3 52 12 0 1 32 61 0 16 3 1 13 0 52 3 0 2 33 4 0 3 32 45 0 16 3 1 14 0 52 3 0 2 33 4 0 4 32 29 0 16 3 1 6 0 52 3 0 2 33 4 0 2 32 13 0 1 17 0 16 3 52 16 0 2 52 15 0 1 32 95 0 6 1 18 0 52 3 0 2 33 11 0 5 20 19 0 16 0 48 1 32 73 0 6 1 20 0 52 3 0 2 33 29 0 5 16 0 52 21 0 1 33 7 0 52 20 0 0 32 9 0 20 22 0 16 0 16 1 48 2 32 33 0 6 1 23 0 52 3 0 2 33 19 0 5 1 25 0 16 0 52 26 0 1 52 24 0 2 5 2 32 3 0 5 16 0 17 2 16 2 52 27 0 1 33 18 0 1 25 0 16 2 52 26 0 1 52 24 0 2 5 2 32 2 0 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"set-render-active!"
|
||||||
|
"type-of"
|
||||||
|
"number"
|
||||||
|
"="
|
||||||
|
"string"
|
||||||
|
"boolean"
|
||||||
|
"nil"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"env-has?"
|
||||||
|
"env-get"
|
||||||
|
"primitive?"
|
||||||
|
"get-primitive"
|
||||||
|
"true"
|
||||||
|
"false"
|
||||||
|
"error"
|
||||||
|
"str"
|
||||||
|
"Undefined symbol: "
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"
|
||||||
|
"list"
|
||||||
|
"empty?"
|
||||||
|
"aser-list"
|
||||||
|
"spread"
|
||||||
|
"scope-emit!"
|
||||||
|
"element-attrs"
|
||||||
|
"spread-attrs"
|
||||||
|
"spread?"))
|
||||||
|
"aser-list"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 0 0 1 17 2 16 0 52 1 0 1 17 3 16 2 52 4 0 1 1 5 0 52 3 0 2 52 2 0 1 33 14 0 51 7 0 1 1 16 0 52 6 0 2 32 136 2 20 8 0 16 2 48 1 17 4 16 4 1 9 0 52 3 0 2 33 12 0 20 10 0 16 3 16 1 49 2 32 103 2 16 4 1 11 0 52 3 0 2 33 15 0 20 12 0 1 11 0 16 3 16 1 49 3 32 76 2 16 4 1 14 0 52 13 0 2 33 196 0 20 15 0 16 1 16 4 48 2 33 12 0 20 16 0 16 1 16 4 48 2 32 1 0 2 17 5 20 15 0 16 1 1 17 0 48 2 33 8 0 20 17 0 48 0 32 1 0 4 17 6 16 5 6 33 7 0 5 16 5 52 18 0 1 33 21 0 20 19 0 20 20 0 16 5 16 3 16 1 48 3 16 1 49 2 32 105 0 16 5 6 33 71 0 5 16 5 52 21 0 1 6 33 60 0 5 16 5 52 22 0 1 52 2 0 1 6 33 45 0 5 16 6 6 34 15 0 5 20 23 0 16 5 48 1 1 24 0 52 3 0 2 6 33 19 0 5 20 23 0 16 5 48 1 1 25 0 52 3 0 2 52 2 0 1 33 14 0 20 26 0 16 5 16 3 16 1 49 3 32 11 0 20 12 0 16 4 16 3 16 1 49 3 32 124 1 16 4 1 27 0 52 3 0 2 33 14 0 20 12 0 16 4 16 3 16 1 49 3 32 98 1 16 4 1 28 0 52 3 0 2 33 14 0 20 12 0 16 4 16 3 16 1 49 3 32 72 1 20 30 0 16 4 52 29 0 2 33 14 0 20 12 0 16 4 16 3 16 1 49 3 32 46 1 20 31 0 16 4 48 1 6 34 8 0 5 20 32 0 16 4 48 1 33 14 0 20 33 0 16 4 16 0 16 1 49 3 32 10 1 20 15 0 16 1 16 4 48 2 6 33 14 0 5 20 16 0 16 1 16 4 48 2 52 18 0 1 33 28 0 20 19 0 20 20 0 20 16 0 16 1 16 4 48 2 16 3 16 1 48 3 16 1 49 2 32 208 0 20 34 0 20 35 0 16 2 16 1 48 2 48 1 17 5 51 36 0 1 1 16 3 52 6 0 2 17 6 20 37 0 16 5 48 1 6 33 41 0 5 16 5 52 38 0 1 52 2 0 1 6 33 26 0 5 16 5 52 21 0 1 52 2 0 1 6 33 11 0 5 16 5 52 22 0 1 52 2 0 1 33 11 0 16 5 16 6 52 39 0 2 32 113 0 16 5 52 38 0 1 33 19 0 20 34 0 20 40 0 16 5 16 6 16 1 48 3 49 1 32 85 0 16 5 52 21 0 1 33 25 0 20 12 0 1 14 0 16 5 52 42 0 1 52 41 0 2 16 3 16 1 49 3 32 51 0 16 5 52 22 0 1 33 25 0 20 12 0 1 14 0 16 5 52 42 0 1 52 41 0 2 16 3 16 1 49 3 32 17 0 1 44 0 16 5 52 45 0 1 52 41 0 2 52 43 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"first"
|
||||||
|
"rest"
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"aser"))
|
||||||
|
"symbol-name"
|
||||||
|
"<>"
|
||||||
|
"aser-fragment"
|
||||||
|
"raw!"
|
||||||
|
"aser-call"
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"env-has?"
|
||||||
|
"env-get"
|
||||||
|
"expand-components?"
|
||||||
|
"macro?"
|
||||||
|
"aser"
|
||||||
|
"expand-macro"
|
||||||
|
"component?"
|
||||||
|
"island?"
|
||||||
|
"component-affinity"
|
||||||
|
"server"
|
||||||
|
"client"
|
||||||
|
"aser-expand-component"
|
||||||
|
"lake"
|
||||||
|
"marsh"
|
||||||
|
"contains?"
|
||||||
|
"HTML_TAGS"
|
||||||
|
"special-form?"
|
||||||
|
"ho-form?"
|
||||||
|
"aser-special"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 18 0 48 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"))
|
||||||
|
"callable?"
|
||||||
|
"lambda?"
|
||||||
|
"apply"
|
||||||
|
"call-lambda"
|
||||||
|
"str"
|
||||||
|
"component-name"
|
||||||
|
"error"
|
||||||
|
"Not callable: "
|
||||||
|
"inspect"))
|
||||||
|
"aser-reserialize"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 2 0 1 1 3 0 52 1 0 2 52 0 0 1 33 9 0 16 0 52 4 0 1 32 122 0 16 0 52 5 0 1 33 6 0 1 6 0 32 107 0 16 0 52 7 0 1 17 1 16 1 52 2 0 1 1 8 0 52 1 0 2 52 0 0 1 33 9 0 16 0 52 4 0 1 32 70 0 20 9 0 16 1 48 1 17 2 16 2 52 3 0 1 17 3 16 0 52 10 0 1 17 4 4 17 5 1 11 0 17 6 51 13 0 1 5 1 6 1 4 1 3 16 4 52 12 0 2 5 1 15 0 1 17 0 16 3 52 16 0 2 1 18 0 52 14 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"list"
|
||||||
|
"serialize"
|
||||||
|
"empty?"
|
||||||
|
"()"
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"rest"
|
||||||
|
0
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (18 0 33 15 0 4 19 0 5 18 1 52 0 0 1 19 1 32 116 1 16 0 52 2 0 1 1 3 0 52 1 0 2 6 33 17 1 5 18 1 52 0 0 1 18 2 52 5 0 1 52 4 0 2 6 33 252 0 5 16 0 1 8 0 52 7 0 2 52 6 0 1 6 33 234 0 5 16 0 1 10 0 52 9 0 2 6 34 220 0 5 16 0 1 11 0 52 9 0 2 6 34 206 0 5 16 0 1 12 0 52 9 0 2 6 34 192 0 5 16 0 1 13 0 52 9 0 2 6 34 178 0 5 16 0 1 14 0 52 9 0 2 6 34 164 0 5 16 0 1 15 0 52 9 0 2 6 34 150 0 5 16 0 1 16 0 52 9 0 2 6 34 136 0 5 16 0 1 17 0 52 9 0 2 6 34 122 0 5 16 0 1 18 0 52 9 0 2 6 34 108 0 5 16 0 1 19 0 52 9 0 2 6 34 94 0 5 16 0 1 20 0 52 9 0 2 6 34 80 0 5 16 0 1 21 0 52 9 0 2 6 34 66 0 5 16 0 1 22 0 52 9 0 2 6 34 52 0 5 16 0 1 23 0 52 9 0 2 6 34 38 0 5 16 0 1 24 0 52 9 0 2 6 34 24 0 5 16 0 1 25 0 52 9 0 2 6 34 10 0 5 16 0 1 26 0 52 9 0 2 33 56 0 20 27 0 18 3 1 29 0 16 0 52 28 0 2 48 2 5 20 27 0 18 3 18 2 18 1 52 0 0 1 52 31 0 2 52 30 0 1 48 2 5 3 19 0 5 18 1 52 0 0 1 19 1 32 23 0 20 27 0 18 3 20 32 0 16 0 48 1 48 2 5 18 1 52 0 0 1 19 1 50)
|
||||||
|
:constants (
|
||||||
|
"inc"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"string"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
" "
|
||||||
|
"starts-with?"
|
||||||
|
"class"
|
||||||
|
"id"
|
||||||
|
"sx-"
|
||||||
|
"data-"
|
||||||
|
"style"
|
||||||
|
"href"
|
||||||
|
"src"
|
||||||
|
"type"
|
||||||
|
"name"
|
||||||
|
"value"
|
||||||
|
"placeholder"
|
||||||
|
"action"
|
||||||
|
"method"
|
||||||
|
"target"
|
||||||
|
"role"
|
||||||
|
"for"
|
||||||
|
"on"
|
||||||
|
"append!"
|
||||||
|
"str"
|
||||||
|
":"
|
||||||
|
"serialize"
|
||||||
|
"nth"
|
||||||
|
"aser-reserialize"))
|
||||||
|
"str"
|
||||||
|
"("
|
||||||
|
"join"
|
||||||
|
" "
|
||||||
|
")"))
|
||||||
|
"aser-fragment"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (52 0 0 0 17 2 51 2 0 1 1 1 2 16 0 52 1 0 2 5 16 2 52 3 0 1 33 6 0 1 4 0 32 54 0 16 2 52 6 0 1 1 7 0 52 5 0 2 33 14 0 20 8 0 16 2 52 9 0 1 49 1 32 24 0 20 8 0 1 11 0 1 13 0 16 2 52 12 0 2 1 14 0 52 10 0 3 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 18 0 48 2 17 1 16 1 52 1 0 1 33 4 0 2 32 76 0 16 1 52 3 0 1 1 4 0 52 2 0 2 33 17 0 20 5 0 18 1 20 6 0 16 1 48 1 49 2 32 43 0 16 1 52 3 0 1 1 7 0 52 2 0 2 33 14 0 51 9 0 0 1 16 1 52 8 0 2 32 13 0 20 5 0 18 1 16 1 52 10 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"aser"
|
||||||
|
"nil?"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"sx-expr"
|
||||||
|
"append!"
|
||||||
|
"sx-expr-source"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 33 50 0 16 0 52 3 0 1 1 4 0 52 2 0 2 33 17 0 20 5 0 18 0 20 6 0 16 0 48 1 49 2 32 14 0 20 5 0 18 0 20 7 0 16 0 48 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"sx-expr"
|
||||||
|
"append!"
|
||||||
|
"sx-expr-source"
|
||||||
|
"aser-reserialize"))
|
||||||
|
"serialize"))
|
||||||
|
"empty?"
|
||||||
|
""
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"make-sx-expr"
|
||||||
|
"first"
|
||||||
|
"str"
|
||||||
|
"(<> "
|
||||||
|
"join"
|
||||||
|
" "
|
||||||
|
")"))
|
||||||
|
"aser-call"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (52 0 0 0 17 3 52 0 0 0 17 4 4 17 5 1 1 0 17 6 1 3 0 2 52 2 0 2 5 51 5 0 1 5 1 6 1 1 1 2 1 3 1 4 16 1 52 4 0 2 5 51 6 0 1 3 1 3 0 52 7 0 1 52 4 0 2 5 1 3 0 52 8 0 1 5 16 0 52 0 0 1 16 3 16 4 52 9 0 3 17 7 20 10 0 1 12 0 1 14 0 16 7 52 13 0 2 1 15 0 52 11 0 3 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
0
|
||||||
|
"scope-push!"
|
||||||
|
"element-attrs"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 6
|
||||||
|
:bytecode (18 0 33 15 0 4 19 0 5 18 1 52 0 0 1 19 1 32 16 1 16 0 52 2 0 1 1 3 0 52 1 0 2 6 33 17 0 5 18 1 52 0 0 1 18 2 52 5 0 1 52 4 0 2 33 122 0 20 6 0 18 2 18 1 52 0 0 1 52 7 0 2 18 3 48 2 17 1 16 1 52 9 0 1 52 8 0 1 33 71 0 20 10 0 18 4 1 12 0 20 13 0 16 0 48 1 52 11 0 2 48 2 5 16 1 52 2 0 1 1 14 0 52 1 0 2 33 17 0 20 10 0 18 4 20 15 0 16 1 48 1 48 2 32 13 0 20 10 0 18 4 16 1 52 16 0 1 48 2 32 1 0 2 5 3 19 0 5 18 1 52 0 0 1 19 1 32 113 0 20 6 0 16 0 18 3 48 2 17 1 16 1 52 9 0 1 52 8 0 1 33 79 0 16 1 52 2 0 1 1 14 0 52 1 0 2 33 17 0 20 10 0 18 5 20 15 0 16 1 48 1 48 2 32 43 0 16 1 52 2 0 1 1 17 0 52 1 0 2 33 14 0 51 19 0 0 5 16 1 52 18 0 2 32 13 0 20 10 0 18 5 16 1 52 16 0 1 48 2 32 1 0 2 5 18 1 52 0 0 1 19 1 50)
|
||||||
|
:constants (
|
||||||
|
"inc"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"aser"
|
||||||
|
"nth"
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"append!"
|
||||||
|
"str"
|
||||||
|
":"
|
||||||
|
"keyword-name"
|
||||||
|
"sx-expr"
|
||||||
|
"sx-expr-source"
|
||||||
|
"serialize"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 33 49 0 16 0 52 3 0 1 1 4 0 52 2 0 2 33 17 0 20 5 0 18 0 20 6 0 16 0 48 1 49 2 32 13 0 20 5 0 18 0 16 0 52 7 0 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"sx-expr"
|
||||||
|
"append!"
|
||||||
|
"sx-expr-source"
|
||||||
|
"serialize"))))
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (51 1 0 1 0 0 0 16 0 52 2 0 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 16 0 52 0 0 2 17 1 20 1 0 18 1 1 3 0 16 0 52 2 0 2 48 2 5 20 1 0 18 1 16 1 52 4 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"dict-get"
|
||||||
|
"append!"
|
||||||
|
"str"
|
||||||
|
":"
|
||||||
|
"serialize"))
|
||||||
|
"keys"))
|
||||||
|
"scope-peek"
|
||||||
|
"scope-pop!"
|
||||||
|
"concat"
|
||||||
|
"make-sx-expr"
|
||||||
|
"str"
|
||||||
|
"("
|
||||||
|
"join"
|
||||||
|
" "
|
||||||
|
")"))
|
||||||
|
"aser-expand-component"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 52 0 0 1 17 3 20 1 0 16 2 16 0 52 2 0 1 48 2 17 4 1 3 0 17 5 4 17 6 52 4 0 0 17 7 51 6 0 1 4 16 3 52 5 0 2 5 51 7 0 1 6 1 5 1 1 1 4 1 2 1 7 16 1 52 5 0 2 5 20 8 0 16 0 48 1 33 53 0 51 10 0 1 2 16 7 52 9 0 2 17 8 20 11 0 16 4 1 12 0 16 8 52 14 0 1 1 15 0 52 13 0 2 33 9 0 16 8 52 16 0 1 32 2 0 16 8 48 3 32 1 0 2 5 20 17 0 16 0 52 18 0 1 16 4 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"component-params"
|
||||||
|
"env-merge"
|
||||||
|
"component-closure"
|
||||||
|
0
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"env-bind!"))
|
||||||
|
(code :arity 1 :upvalue-count 6
|
||||||
|
:bytecode (18 0 33 15 0 4 19 0 5 18 1 52 0 0 1 19 1 32 104 0 16 0 52 2 0 1 1 3 0 52 1 0 2 6 33 17 0 5 18 1 52 0 0 1 18 2 52 5 0 1 52 4 0 2 33 49 0 20 6 0 18 3 20 7 0 16 0 48 1 20 8 0 18 2 18 1 52 0 0 1 52 9 0 2 18 4 48 2 48 3 5 3 19 0 5 18 1 52 0 0 1 19 1 32 18 0 20 10 0 18 5 16 0 48 2 5 18 1 52 0 0 1 19 1 50)
|
||||||
|
:constants (
|
||||||
|
"inc"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"env-bind!"
|
||||||
|
"keyword-name"
|
||||||
|
"aser"
|
||||||
|
"nth"
|
||||||
|
"append!"))
|
||||||
|
"component-has-children"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"aser"))
|
||||||
|
"env-bind!"
|
||||||
|
"children"
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"first"
|
||||||
|
"aser"
|
||||||
|
"component-body"))
|
||||||
|
"SPECIAL_FORM_NAMES"
|
||||||
|
"list"
|
||||||
|
"if"
|
||||||
|
"when"
|
||||||
|
"cond"
|
||||||
|
"case"
|
||||||
|
"and"
|
||||||
|
"or"
|
||||||
|
"let"
|
||||||
|
"let*"
|
||||||
|
"lambda"
|
||||||
|
"fn"
|
||||||
|
"define"
|
||||||
|
"defcomp"
|
||||||
|
"defmacro"
|
||||||
|
"defstyle"
|
||||||
|
"defhandler"
|
||||||
|
"defpage"
|
||||||
|
"defquery"
|
||||||
|
"defaction"
|
||||||
|
"defrelation"
|
||||||
|
"begin"
|
||||||
|
"do"
|
||||||
|
"quote"
|
||||||
|
"quasiquote"
|
||||||
|
"->"
|
||||||
|
"set!"
|
||||||
|
"letrec"
|
||||||
|
"dynamic-wind"
|
||||||
|
"defisland"
|
||||||
|
"deftype"
|
||||||
|
"defeffect"
|
||||||
|
"scope"
|
||||||
|
"provide"
|
||||||
|
"context"
|
||||||
|
"emit!"
|
||||||
|
"emitted"
|
||||||
|
"HO_FORM_NAMES"
|
||||||
|
"map"
|
||||||
|
"map-indexed"
|
||||||
|
"filter"
|
||||||
|
"reduce"
|
||||||
|
"some"
|
||||||
|
"every?"
|
||||||
|
"for-each"
|
||||||
|
"special-form?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"contains?"
|
||||||
|
"SPECIAL_FORM_NAMES"))
|
||||||
|
"ho-form?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"contains?"
|
||||||
|
"HO_FORM_NAMES"))
|
||||||
|
"aser-special"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 0 0 1 17 3 16 0 1 2 0 52 1 0 2 33 79 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 33 19 0 20 6 0 16 3 1 8 0 52 7 0 2 16 2 49 2 32 36 0 16 3 52 10 0 1 1 11 0 52 9 0 2 33 19 0 20 6 0 16 3 1 11 0 52 7 0 2 16 2 49 2 32 1 0 2 32 34 5 16 0 1 12 0 52 1 0 2 33 55 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 52 13 0 1 33 4 0 2 32 23 0 2 17 4 51 15 0 1 4 1 2 16 3 52 0 0 1 52 14 0 2 5 16 4 32 223 4 16 0 1 16 0 52 1 0 2 33 32 0 20 17 0 16 3 16 2 48 2 17 4 16 4 33 12 0 20 6 0 16 4 16 2 49 2 32 1 0 2 32 179 4 16 0 1 18 0 52 1 0 2 33 42 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 17 4 16 3 52 0 0 1 17 5 20 19 0 16 4 16 5 16 2 49 3 32 125 4 16 0 1 20 0 52 1 0 2 6 34 10 0 5 16 0 1 21 0 52 1 0 2 33 41 0 20 22 0 16 3 52 5 0 1 16 2 48 2 17 4 2 17 5 51 15 0 1 5 1 4 16 3 52 0 0 1 52 14 0 2 5 16 5 32 58 4 16 0 1 23 0 52 1 0 2 6 34 10 0 5 16 0 1 24 0 52 1 0 2 33 22 0 2 17 4 51 15 0 1 4 1 2 16 3 52 14 0 2 5 16 4 32 10 4 16 0 1 25 0 52 1 0 2 33 22 0 3 17 4 51 27 0 1 4 1 2 16 3 52 26 0 2 5 16 4 32 232 3 16 0 1 28 0 52 1 0 2 33 22 0 4 17 4 51 29 0 1 4 1 2 16 3 52 26 0 2 5 16 4 32 198 3 16 0 1 30 0 52 1 0 2 33 59 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 17 4 20 3 0 20 4 0 16 3 1 8 0 52 7 0 2 16 2 48 2 48 1 17 5 51 31 0 1 4 1 2 16 5 52 30 0 2 32 127 3 16 0 1 32 0 52 1 0 2 33 59 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 17 4 20 3 0 20 4 0 16 3 1 8 0 52 7 0 2 16 2 48 2 48 1 17 5 51 33 0 1 4 1 2 16 5 52 32 0 2 32 56 3 16 0 1 14 0 52 1 0 2 33 83 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 17 4 20 3 0 20 4 0 16 3 1 8 0 52 7 0 2 16 2 48 2 48 1 17 5 52 34 0 0 17 6 51 35 0 1 4 1 2 1 6 16 5 52 14 0 2 5 16 6 52 36 0 1 33 4 0 2 32 2 0 16 6 32 217 2 16 0 1 37 0 52 1 0 2 33 24 0 20 3 0 20 4 0 16 1 16 2 48 2 48 1 5 16 1 52 38 0 1 32 181 2 16 0 1 39 0 52 1 0 2 6 34 136 0 5 16 0 1 40 0 52 1 0 2 6 34 122 0 5 16 0 1 41 0 52 1 0 2 6 34 108 0 5 16 0 1 42 0 52 1 0 2 6 34 94 0 5 16 0 1 43 0 52 1 0 2 6 34 80 0 5 16 0 1 44 0 52 1 0 2 6 34 66 0 5 16 0 1 45 0 52 1 0 2 6 34 52 0 5 16 0 1 46 0 52 1 0 2 6 34 38 0 5 16 0 1 47 0 52 1 0 2 6 34 24 0 5 16 0 1 48 0 52 1 0 2 6 34 10 0 5 16 0 1 49 0 52 1 0 2 33 19 0 20 3 0 20 4 0 16 1 16 2 48 2 48 1 5 2 32 10 2 16 0 1 50 0 52 1 0 2 33 176 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 17 4 16 3 52 0 0 1 17 5 2 17 6 2 17 7 16 5 52 10 0 1 1 11 0 52 51 0 2 6 33 41 0 5 16 5 52 5 0 1 52 52 0 1 1 53 0 52 1 0 2 6 33 19 0 5 20 54 0 16 5 52 5 0 1 48 1 1 55 0 52 1 0 2 33 38 0 20 3 0 20 4 0 16 5 1 8 0 52 7 0 2 16 2 48 2 48 1 17 6 5 16 5 1 11 0 52 56 0 2 17 7 32 4 0 16 5 17 7 5 16 4 16 6 52 57 0 2 5 2 17 8 51 15 0 1 8 1 2 16 7 52 14 0 2 5 16 4 52 58 0 1 5 16 8 32 78 1 16 0 1 59 0 52 1 0 2 33 88 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 17 4 20 3 0 20 4 0 16 3 1 8 0 52 7 0 2 16 2 48 2 48 1 17 5 2 17 6 16 4 16 5 52 57 0 2 5 51 15 0 1 6 1 2 16 3 1 11 0 52 56 0 2 52 14 0 2 5 16 4 52 58 0 1 5 16 6 32 234 0 16 0 1 60 0 52 1 0 2 33 90 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 17 4 16 3 52 10 0 1 1 11 0 52 51 0 2 33 24 0 20 3 0 20 4 0 16 3 1 8 0 52 7 0 2 16 2 48 2 48 1 32 1 0 2 17 5 16 4 52 61 0 1 17 6 16 6 52 62 0 1 33 5 0 16 5 32 2 0 16 6 32 132 0 16 0 1 63 0 52 1 0 2 33 56 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 17 4 20 3 0 20 4 0 16 3 1 8 0 52 7 0 2 16 2 48 2 48 1 17 5 16 4 16 5 52 64 0 2 5 2 32 64 0 16 0 1 65 0 52 1 0 2 33 38 0 20 3 0 20 4 0 16 3 52 5 0 1 16 2 48 2 48 1 17 4 16 4 52 61 0 1 6 34 5 0 5 52 34 0 0 32 14 0 20 3 0 20 4 0 16 1 16 2 48 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"rest"
|
||||||
|
"="
|
||||||
|
"if"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"first"
|
||||||
|
"aser"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"when"
|
||||||
|
"not"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 18 1 48 2 19 0 50)
|
||||||
|
:constants (
|
||||||
|
"aser"))
|
||||||
|
"cond"
|
||||||
|
"eval-cond"
|
||||||
|
"case"
|
||||||
|
"eval-case-aser"
|
||||||
|
"let"
|
||||||
|
"let*"
|
||||||
|
"process-bindings"
|
||||||
|
"begin"
|
||||||
|
"do"
|
||||||
|
"and"
|
||||||
|
"some"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 18 1 48 2 48 1 19 0 5 18 0 52 2 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"not"))
|
||||||
|
"or"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 18 1 48 2 48 1 19 0 5 18 0 50)
|
||||||
|
:constants (
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"))
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 52 0 0 1 33 51 0 20 1 0 18 0 52 2 0 1 18 1 48 2 17 1 20 3 0 16 1 18 0 52 5 0 1 52 4 0 1 16 0 48 3 5 20 6 0 18 0 52 7 0 1 16 1 49 2 32 13 0 20 8 0 18 0 16 0 52 9 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"lambda?"
|
||||||
|
"env-merge"
|
||||||
|
"lambda-closure"
|
||||||
|
"env-bind!"
|
||||||
|
"first"
|
||||||
|
"lambda-params"
|
||||||
|
"aser"
|
||||||
|
"lambda-body"
|
||||||
|
"cek-call"
|
||||||
|
"list"))
|
||||||
|
"map-indexed"
|
||||||
|
(code :arity 2 :upvalue-count 2
|
||||||
|
:bytecode (18 0 52 0 0 1 33 74 0 20 1 0 18 0 52 2 0 1 18 1 48 2 17 2 20 3 0 16 2 18 0 52 5 0 1 52 4 0 1 16 0 48 3 5 20 3 0 16 2 18 0 52 5 0 1 1 7 0 52 6 0 2 16 1 48 3 5 20 8 0 18 0 52 9 0 1 16 2 49 2 32 15 0 20 10 0 18 0 16 0 16 1 52 11 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"lambda?"
|
||||||
|
"env-merge"
|
||||||
|
"lambda-closure"
|
||||||
|
"env-bind!"
|
||||||
|
"first"
|
||||||
|
"lambda-params"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"aser"
|
||||||
|
"lambda-body"
|
||||||
|
"cek-call"
|
||||||
|
"list"))
|
||||||
|
"list"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (18 0 52 0 0 1 33 58 0 20 1 0 18 0 52 2 0 1 18 1 48 2 17 1 20 3 0 16 1 18 0 52 5 0 1 52 4 0 1 16 0 48 3 5 20 6 0 18 2 20 7 0 18 0 52 8 0 1 16 1 48 2 49 2 32 13 0 20 9 0 18 0 16 0 52 10 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"lambda?"
|
||||||
|
"env-merge"
|
||||||
|
"lambda-closure"
|
||||||
|
"env-bind!"
|
||||||
|
"first"
|
||||||
|
"lambda-params"
|
||||||
|
"append!"
|
||||||
|
"aser"
|
||||||
|
"lambda-body"
|
||||||
|
"cek-call"
|
||||||
|
"list"))
|
||||||
|
"empty?"
|
||||||
|
"defisland"
|
||||||
|
"serialize"
|
||||||
|
"define"
|
||||||
|
"defcomp"
|
||||||
|
"defmacro"
|
||||||
|
"defstyle"
|
||||||
|
"defhandler"
|
||||||
|
"defpage"
|
||||||
|
"defquery"
|
||||||
|
"defaction"
|
||||||
|
"defrelation"
|
||||||
|
"deftype"
|
||||||
|
"defeffect"
|
||||||
|
"scope"
|
||||||
|
">="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"
|
||||||
|
"value"
|
||||||
|
"slice"
|
||||||
|
"scope-push!"
|
||||||
|
"scope-pop!"
|
||||||
|
"provide"
|
||||||
|
"context"
|
||||||
|
"scope-peek"
|
||||||
|
"nil?"
|
||||||
|
"emit!"
|
||||||
|
"scope-emit!"
|
||||||
|
"emitted"))
|
||||||
|
"eval-case-aser"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 1 0 1 1 2 0 52 0 0 2 33 4 0 2 32 175 0 16 1 52 3 0 1 17 3 16 1 1 5 0 52 4 0 2 17 4 16 3 52 7 0 1 1 8 0 52 6 0 2 6 33 15 0 5 20 9 0 16 3 48 1 1 10 0 52 6 0 2 6 34 52 0 5 16 3 52 7 0 1 1 11 0 52 6 0 2 6 33 34 0 5 20 12 0 16 3 48 1 1 13 0 52 6 0 2 6 34 15 0 5 20 12 0 16 3 48 1 1 10 0 52 6 0 2 33 12 0 20 14 0 16 4 16 2 49 2 32 53 0 16 0 20 15 0 20 16 0 16 3 16 2 48 2 48 1 52 6 0 2 33 12 0 20 14 0 16 4 16 2 49 2 32 18 0 20 17 0 16 0 16 1 1 2 0 52 18 0 2 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"
|
||||||
|
"else"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
":else"
|
||||||
|
"aser"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"eval-case-aser"
|
||||||
|
"slice")))))
|
||||||
817
shared/static/wasm/sx/boot-helpers.sxbc
Normal file
817
shared/static/wasm/sx/boot-helpers.sxbc
Normal file
@@ -0,0 +1,817 @@
|
|||||||
|
(sxbc 1 "069ff5bca83eab9f"
|
||||||
|
(code
|
||||||
|
:bytecode (1 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 51 33 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 5 51 45 0 128 44 0 5 51 47 0 128 46 0 5 51 47 0 128 48 0 5 51 50 0 128 49 0 5 51 50 0 128 51 0 5 51 53 0 128 52 0 5 51 55 0 128 54 0 5 51 47 0 128 56 0 5 51 47 0 128 57 0 5 51 59 0 128 58 0 5 51 61 0 128 60 0 5 51 63 0 128 62 0 5 51 65 0 128 64 0 5 51 67 0 128 66 0 5 51 69 0 128 68 0 5 51 71 0 128 70 0 5 51 73 0 128 72 0 5 51 75 0 128 74 0 5 51 77 0 128 76 0 5 51 79 0 128 78 0 5 51 81 0 128 80 0 5 51 83 0 128 82 0 5 51 85 0 128 84 0 5 51 87 0 128 86 0 5 51 89 0 128 88 0 5 51 91 0 128 90 0 5 51 93 0 128 92 0 5 51 95 0 128 94 0 5 51 97 0 128 96 0 5 51 99 0 128 98 0 5 51 101 0 128 100 0 5 51 103 0 128 102 0 5 51 47 0 128 104 0 5 51 106 0 128 105 0 5 51 108 0 128 107 0 5 51 110 0 128 109 0 5 51 112 0 128 111 0 5 51 114 0 128 113 0 5 51 116 0 128 115 0 5 51 118 0 128 117 0 5 51 120 0 128 119 0 5 51 122 0 128 121 0 5 51 50 0 128 123 0 5 51 47 0 128 124 0 5 51 47 0 128 125 0 5 51 27 0 128 126 0 5 51 128 0 128 127 0 5 51 130 0 128 129 0 5 51 132 0 128 131 0 5 51 134 0 128 133 0 5 51 134 0 128 135 0 5 51 134 0 128 136 0 5 51 134 0 128 137 0 5 51 134 0 128 138 0 50)
|
||||||
|
:constants (
|
||||||
|
"_sx-bound-prefix"
|
||||||
|
"_sxBound"
|
||||||
|
"mark-processed!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 20 2 0 16 1 52 1 0 2 3 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-set!"
|
||||||
|
"str"
|
||||||
|
"_sx-bound-prefix"))
|
||||||
|
"is-processed?"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 20 2 0 16 1 52 1 0 2 48 2 17 2 16 2 33 4 0 3 32 1 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"str"
|
||||||
|
"_sx-bound-prefix"))
|
||||||
|
"clear-processed!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 20 2 0 16 1 52 1 0 2 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-set!"
|
||||||
|
"str"
|
||||||
|
"_sx-bound-prefix"))
|
||||||
|
"callable?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 17 1 16 1 1 2 0 52 1 0 2 6 34 24 0 5 16 1 1 3 0 52 1 0 2 6 34 10 0 5 16 1 1 4 0 52 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"type-of"
|
||||||
|
"="
|
||||||
|
"lambda"
|
||||||
|
"native-fn"
|
||||||
|
"continuation"))
|
||||||
|
"to-kebab"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 52 1 0 0 17 1 1 2 0 17 2 2 17 3 51 3 0 1 0 1 1 1 3 17 3 16 3 1 2 0 48 1 5 1 5 0 16 1 52 4 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"Convert camelCase to kebab-case."
|
||||||
|
"list"
|
||||||
|
0
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (16 0 18 0 52 1 0 1 52 0 0 2 33 105 0 18 0 16 0 52 2 0 2 17 1 16 1 1 4 0 52 3 0 2 6 33 10 0 5 16 1 1 6 0 52 5 0 2 33 43 0 16 0 1 8 0 52 7 0 2 33 13 0 20 9 0 18 1 1 10 0 48 2 32 1 0 2 5 20 9 0 18 1 16 1 52 11 0 1 48 2 32 9 0 20 9 0 18 1 16 1 48 2 5 18 2 16 0 1 13 0 52 12 0 2 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"nth"
|
||||||
|
">="
|
||||||
|
"A"
|
||||||
|
"<="
|
||||||
|
"Z"
|
||||||
|
">"
|
||||||
|
0
|
||||||
|
"append!"
|
||||||
|
"-"
|
||||||
|
"lower"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"join"
|
||||||
|
""))
|
||||||
|
"sx-load-components"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 16 0 6 33 14 0 5 16 0 52 2 0 1 1 3 0 52 1 0 2 33 21 0 20 4 0 16 0 48 1 17 1 51 6 0 16 1 52 5 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"Parse and evaluate component definitions from text."
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
0
|
||||||
|
"sx-parse"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"cek-eval"))))
|
||||||
|
"call-expr"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 5 20 1 0 16 0 48 1 17 2 16 2 52 3 0 1 52 2 0 1 33 14 0 20 4 0 16 2 52 5 0 1 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"Parse and evaluate an SX expression string."
|
||||||
|
"sx-parse"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"cek-eval"
|
||||||
|
"first"))
|
||||||
|
"base-env"
|
||||||
|
(code
|
||||||
|
:bytecode (1 0 0 5 20 1 0 49 0 50)
|
||||||
|
:constants (
|
||||||
|
"Return the current global environment."
|
||||||
|
"global-env"))
|
||||||
|
"get-render-env"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 20 1 0 48 0 17 1 16 0 6 33 11 0 5 16 0 52 3 0 1 52 2 0 1 33 12 0 20 4 0 16 1 16 0 49 2 32 2 0 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"Get the rendering environment (global env, optionally merged with extra)."
|
||||||
|
"base-env"
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"env-merge"))
|
||||||
|
"merge-envs"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 5 16 0 6 33 3 0 5 16 1 33 12 0 20 1 0 16 0 16 1 49 2 32 19 0 16 0 6 34 13 0 5 16 1 6 34 6 0 5 20 2 0 49 0 50)
|
||||||
|
:constants (
|
||||||
|
"Merge two environments."
|
||||||
|
"env-merge"
|
||||||
|
"global-env"))
|
||||||
|
"sx-render-with-env"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 5 20 1 0 1 2 0 48 1 17 2 20 3 0 16 2 1 4 0 48 2 17 3 20 5 0 16 0 48 1 17 4 51 7 0 1 2 1 3 16 4 52 6 0 2 5 16 3 50)
|
||||||
|
:constants (
|
||||||
|
"Parse SX source and render to DOM fragment."
|
||||||
|
"host-global"
|
||||||
|
"document"
|
||||||
|
"host-call"
|
||||||
|
"createDocumentFragment"
|
||||||
|
"sx-parse"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 16 1 6 33 14 0 5 16 1 52 2 0 1 1 3 0 52 1 0 2 33 51 0 20 4 0 18 0 1 5 0 1 6 0 48 3 17 2 20 7 0 16 2 1 8 0 16 1 48 3 5 20 4 0 18 1 1 9 0 20 10 0 16 2 1 11 0 48 2 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-html"
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
0
|
||||||
|
"host-call"
|
||||||
|
"createElement"
|
||||||
|
"template"
|
||||||
|
"host-set!"
|
||||||
|
"innerHTML"
|
||||||
|
"appendChild"
|
||||||
|
"host-get"
|
||||||
|
"content"))))
|
||||||
|
"parse-env-attr"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 2 50)
|
||||||
|
:constants (
|
||||||
|
"Parse data-sx-env attribute (JSON key-value pairs)."))
|
||||||
|
"store-env-attr"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())
|
||||||
|
"resolve-mount-target"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 16 0 52 1 0 1 33 10 0 20 2 0 16 0 49 1 32 2 0 16 0 50)
|
||||||
|
:constants (
|
||||||
|
"Resolve a CSS selector string to a DOM element."
|
||||||
|
"string?"
|
||||||
|
"dom-query"))
|
||||||
|
"remove-head-element"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 20 1 0 16 0 48 1 17 1 16 1 33 10 0 20 2 0 16 1 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"Remove a <head> element matching selector."
|
||||||
|
"dom-query"
|
||||||
|
"dom-remove"))
|
||||||
|
"set-sx-comp-cookie"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 1 0 16 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"set-cookie"
|
||||||
|
"sx-components"))
|
||||||
|
"clear-sx-comp-cookie"
|
||||||
|
(code
|
||||||
|
:bytecode (1 1 0 1 2 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"set-cookie"
|
||||||
|
"sx-components"
|
||||||
|
""))
|
||||||
|
"log-parse-error"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 1 2 0 16 0 1 3 0 16 2 52 1 0 4 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"log-error"
|
||||||
|
"str"
|
||||||
|
"Parse error in "
|
||||||
|
": "))
|
||||||
|
"loaded-component-names"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 48 2 17 0 52 3 0 0 17 1 51 5 0 1 1 16 0 52 4 0 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"dom-body"
|
||||||
|
"script[data-components]"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 6 34 4 0 5 1 2 0 17 1 16 1 52 4 0 1 1 5 0 52 3 0 2 33 21 0 51 7 0 0 0 16 1 1 9 0 52 8 0 2 52 6 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-components"
|
||||||
|
""
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
0
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 2 0 1 52 1 0 1 1 3 0 52 0 0 2 33 16 0 20 4 0 18 0 16 0 52 2 0 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
"trim"
|
||||||
|
0
|
||||||
|
"append!"))
|
||||||
|
"split"
|
||||||
|
","))))
|
||||||
|
"csrf-token"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 1 1 0 48 1 17 0 16 0 33 13 0 20 2 0 16 0 1 3 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query"
|
||||||
|
"meta[name=\"csrf-token\"]"
|
||||||
|
"dom-get-attr"
|
||||||
|
"content"))
|
||||||
|
"validate-for-request"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (3 50)
|
||||||
|
:constants ())
|
||||||
|
"build-request-body"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 0 0 1 17 3 16 3 1 2 0 52 1 0 2 6 34 10 0 5 16 3 1 3 0 52 1 0 2 33 167 0 16 0 6 33 27 0 5 20 4 0 16 0 48 1 6 34 4 0 5 1 5 0 52 0 0 1 1 6 0 52 1 0 2 33 111 0 20 7 0 1 8 0 16 0 48 2 17 4 20 7 0 1 9 0 16 4 48 2 17 5 20 10 0 16 5 1 11 0 48 2 17 6 1 13 0 16 6 6 33 14 0 5 16 6 52 15 0 1 1 16 0 52 14 0 2 33 32 0 16 2 16 2 1 19 0 52 18 0 2 33 6 0 1 20 0 32 3 0 1 19 0 16 6 52 17 0 3 32 2 0 16 2 1 21 0 2 1 22 0 2 52 12 0 6 32 17 0 1 13 0 16 2 1 21 0 2 1 22 0 2 52 12 0 6 32 173 0 16 0 6 33 27 0 5 20 4 0 16 0 48 1 6 34 4 0 5 1 5 0 52 0 0 1 1 6 0 52 1 0 2 33 120 0 20 23 0 16 0 1 24 0 48 2 6 34 4 0 5 1 25 0 17 4 16 4 1 26 0 52 1 0 2 33 33 0 20 7 0 1 8 0 16 0 48 2 17 5 1 13 0 16 2 1 21 0 16 5 1 22 0 2 52 12 0 6 32 52 0 20 7 0 1 8 0 16 0 48 2 17 5 20 7 0 1 9 0 16 5 48 2 17 6 1 13 0 16 2 1 21 0 20 10 0 16 6 1 11 0 48 2 1 22 0 1 25 0 52 12 0 6 32 17 0 1 13 0 16 2 1 21 0 2 1 22 0 2 52 12 0 6 50)
|
||||||
|
:constants (
|
||||||
|
"upper"
|
||||||
|
"="
|
||||||
|
"GET"
|
||||||
|
"HEAD"
|
||||||
|
"dom-tag-name"
|
||||||
|
""
|
||||||
|
"FORM"
|
||||||
|
"host-new"
|
||||||
|
"FormData"
|
||||||
|
"URLSearchParams"
|
||||||
|
"host-call"
|
||||||
|
"toString"
|
||||||
|
"dict"
|
||||||
|
"url"
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
0
|
||||||
|
"str"
|
||||||
|
"contains?"
|
||||||
|
"?"
|
||||||
|
"&"
|
||||||
|
"body"
|
||||||
|
"content-type"
|
||||||
|
"dom-get-attr"
|
||||||
|
"enctype"
|
||||||
|
"application/x-www-form-urlencoded"
|
||||||
|
"multipart/form-data"))
|
||||||
|
"abort-previous-target"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())
|
||||||
|
"abort-previous"
|
||||||
|
"track-controller"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())
|
||||||
|
"track-controller-target"
|
||||||
|
"new-abort-controller"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 1 1 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"host-new"
|
||||||
|
"AbortController"))
|
||||||
|
"abort-signal"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"signal"))
|
||||||
|
"apply-optimistic"
|
||||||
|
"revert-optimistic"
|
||||||
|
"dom-has-attr?"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 16 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"hasAttribute"))
|
||||||
|
"show-indicator"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 33 42 0 20 2 0 16 1 48 1 17 2 16 2 33 24 0 20 3 0 16 2 1 4 0 48 2 5 20 5 0 16 2 1 6 0 48 2 32 1 0 2 32 1 0 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"sx-indicator"
|
||||||
|
"dom-query"
|
||||||
|
"dom-remove-class"
|
||||||
|
"hidden"
|
||||||
|
"dom-add-class"
|
||||||
|
"sx-indicator-visible"))
|
||||||
|
"disable-elements"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 33 29 0 20 2 0 20 3 0 48 0 16 1 48 2 17 2 51 5 0 16 2 52 4 0 2 5 16 2 32 4 0 52 6 0 0 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"sx-disabled-elt"
|
||||||
|
"dom-query-all"
|
||||||
|
"dom-body"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 1 2 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"dom-set-attr"
|
||||||
|
"disabled"
|
||||||
|
""))
|
||||||
|
"list"))
|
||||||
|
"clear-loading-state"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 5 20 2 0 16 0 1 3 0 48 2 5 16 1 33 42 0 20 4 0 16 1 48 1 17 3 16 3 33 24 0 20 5 0 16 3 1 6 0 48 2 5 20 0 0 16 3 1 7 0 48 2 32 1 0 2 32 1 0 2 5 16 2 33 12 0 51 9 0 16 2 52 8 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-remove-class"
|
||||||
|
"sx-request"
|
||||||
|
"dom-remove-attr"
|
||||||
|
"aria-busy"
|
||||||
|
"dom-query"
|
||||||
|
"dom-add-class"
|
||||||
|
"hidden"
|
||||||
|
"sx-indicator-visible"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-remove-attr"
|
||||||
|
"disabled"))))
|
||||||
|
"abort-error?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 1 2 0 48 2 1 3 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"host-get"
|
||||||
|
"name"
|
||||||
|
"AbortError"))
|
||||||
|
"promise-catch"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 1 48 1 17 2 20 1 0 16 0 1 2 0 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-callback"
|
||||||
|
"host-call"
|
||||||
|
"catch"))
|
||||||
|
"fetch-request"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 3 16 0 1 2 0 52 0 0 2 6 34 4 0 5 1 3 0 17 4 16 0 1 4 0 52 0 0 2 6 34 5 0 5 52 5 0 0 17 5 16 0 1 6 0 52 0 0 2 17 6 16 0 1 7 0 52 0 0 2 17 7 16 0 1 8 0 52 0 0 2 17 8 16 8 33 16 0 16 1 3 1 9 0 51 10 0 16 8 49 4 32 139 0 20 11 0 1 12 0 48 1 17 9 20 11 0 1 13 0 48 1 17 10 51 15 0 1 9 1 5 16 5 52 16 0 1 52 14 0 2 5 20 17 0 16 10 1 2 0 16 4 48 3 5 20 17 0 16 10 1 4 0 16 9 48 3 5 16 6 33 15 0 20 17 0 16 10 1 6 0 16 6 48 3 32 1 0 2 5 16 7 33 15 0 20 17 0 16 10 1 7 0 16 7 48 3 32 1 0 2 5 20 18 0 20 19 0 20 20 0 48 0 1 21 0 16 3 16 10 48 4 51 22 0 1 1 1 2 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"url"
|
||||||
|
"method"
|
||||||
|
"GET"
|
||||||
|
"headers"
|
||||||
|
"dict"
|
||||||
|
"body"
|
||||||
|
"signal"
|
||||||
|
"preloaded"
|
||||||
|
200
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())
|
||||||
|
"host-new"
|
||||||
|
"Headers"
|
||||||
|
"Object"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 1 1 0 16 0 18 1 16 0 52 2 0 2 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"set"
|
||||||
|
"get"))
|
||||||
|
"keys"
|
||||||
|
"host-set!"
|
||||||
|
"promise-then"
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"fetch"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 20 0 0 16 0 1 2 0 48 2 17 2 51 3 0 1 0 17 3 20 4 0 20 5 0 16 0 1 6 0 48 2 51 7 0 0 0 1 1 1 2 1 3 18 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"ok"
|
||||||
|
"status"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 20 1 0 18 0 1 2 0 48 2 1 3 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"headers"
|
||||||
|
"get"))
|
||||||
|
"promise-then"
|
||||||
|
"host-call"
|
||||||
|
"text"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (18 0 18 1 18 2 18 3 16 0 49 4 50)
|
||||||
|
:constants ())))))
|
||||||
|
"fetch-location"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 48 1 6 34 9 0 5 20 0 0 1 2 0 48 1 17 1 16 1 33 10 0 20 3 0 16 0 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query"
|
||||||
|
"[sx-boost]"
|
||||||
|
"#main-panel"
|
||||||
|
"browser-navigate"))
|
||||||
|
"fetch-and-restore"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (20 0 0 1 2 0 16 1 1 3 0 1 4 0 1 5 0 16 2 1 6 0 2 1 7 0 2 52 1 0 10 51 8 0 1 0 1 3 51 9 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"fetch-request"
|
||||||
|
"dict"
|
||||||
|
"url"
|
||||||
|
"method"
|
||||||
|
"GET"
|
||||||
|
"headers"
|
||||||
|
"body"
|
||||||
|
"signal"
|
||||||
|
(code :arity 4 :upvalue-count 2
|
||||||
|
:bytecode (16 0 33 39 0 20 0 0 18 0 16 3 48 2 5 20 1 0 18 0 48 1 5 20 2 0 20 3 0 48 0 1 4 0 1 5 0 18 1 49 4 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-set-inner-html"
|
||||||
|
"post-swap"
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"scrollTo"
|
||||||
|
0))
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 2 0 16 0 52 1 0 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"log-warn"
|
||||||
|
"str"
|
||||||
|
"fetch-and-restore error: "))))
|
||||||
|
"fetch-preload"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 1 2 0 16 0 1 3 0 1 4 0 1 5 0 16 1 1 6 0 2 1 7 0 2 52 1 0 10 51 8 0 1 2 1 0 51 9 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"fetch-request"
|
||||||
|
"dict"
|
||||||
|
"url"
|
||||||
|
"method"
|
||||||
|
"GET"
|
||||||
|
"headers"
|
||||||
|
"body"
|
||||||
|
"signal"
|
||||||
|
(code :arity 4 :upvalue-count 2
|
||||||
|
:bytecode (16 0 33 14 0 20 0 0 18 0 18 1 16 3 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"preload-cache-set"))
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())))
|
||||||
|
"fetch-streaming"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (20 0 0 16 0 16 1 16 2 1 1 0 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"fetch-and-restore"
|
||||||
|
0))
|
||||||
|
"dom-parse-html-document"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 48 1 17 1 20 2 0 16 1 1 3 0 16 0 1 4 0 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-new"
|
||||||
|
"DOMParser"
|
||||||
|
"host-call"
|
||||||
|
"parseFromString"
|
||||||
|
"text/html"))
|
||||||
|
"dom-body-inner-html"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 0 0 16 0 1 1 0 48 2 1 2 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"body"
|
||||||
|
"innerHTML"))
|
||||||
|
"create-script-clone"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 48 1 17 1 20 2 0 16 1 1 3 0 1 4 0 48 3 17 2 20 5 0 16 0 1 6 0 48 2 17 3 2 17 4 51 7 0 1 3 1 2 1 4 17 4 16 4 1 8 0 48 1 5 20 9 0 16 2 1 10 0 20 5 0 16 0 1 10 0 48 2 48 3 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-global"
|
||||||
|
"document"
|
||||||
|
"host-call"
|
||||||
|
"createElement"
|
||||||
|
"script"
|
||||||
|
"host-get"
|
||||||
|
"attributes"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (16 0 20 1 0 18 0 1 2 0 48 2 52 0 0 2 33 61 0 20 3 0 18 0 1 4 0 16 0 48 3 17 1 20 3 0 18 1 1 5 0 20 1 0 16 1 1 6 0 48 2 20 1 0 16 1 1 7 0 48 2 48 4 5 18 2 16 0 1 9 0 52 8 0 2 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"host-get"
|
||||||
|
"length"
|
||||||
|
"host-call"
|
||||||
|
"item"
|
||||||
|
"setAttribute"
|
||||||
|
"name"
|
||||||
|
"value"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
0
|
||||||
|
"host-set!"
|
||||||
|
"textContent"))
|
||||||
|
"cross-origin?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 6 34 10 0 5 16 0 1 2 0 52 0 0 2 33 18 0 16 0 20 4 0 48 0 52 0 0 2 52 3 0 1 32 1 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"http://"
|
||||||
|
"https://"
|
||||||
|
"not"
|
||||||
|
"browser-location-origin"))
|
||||||
|
"browser-scroll-to"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 16 1 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"scrollTo"))
|
||||||
|
"with-transition"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 33 17 0 5 20 0 0 20 1 0 1 2 0 48 1 1 3 0 48 2 33 26 0 20 4 0 20 1 0 1 2 0 48 1 1 3 0 20 5 0 16 1 48 1 49 3 32 4 0 16 1 49 0 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"host-global"
|
||||||
|
"document"
|
||||||
|
"startViewTransition"
|
||||||
|
"host-call"
|
||||||
|
"host-callback"))
|
||||||
|
"observe-intersection"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (20 0 0 51 1 0 1 3 1 1 1 2 1 0 48 1 17 4 20 2 0 1 3 0 20 0 0 51 4 0 1 3 1 1 1 2 1 5 1 0 48 1 48 2 17 5 20 5 0 16 5 1 6 0 16 0 48 3 5 16 5 50)
|
||||||
|
:constants (
|
||||||
|
"host-callback"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (51 1 0 0 0 0 1 0 2 0 3 20 2 0 16 0 1 3 0 20 4 0 51 5 0 48 1 48 3 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 33 54 0 18 0 33 17 0 20 2 0 51 3 0 0 1 1 0 18 0 48 2 32 6 0 18 1 16 0 48 1 5 18 2 33 16 0 20 4 0 20 5 0 1 6 0 18 3 49 3 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"isIntersecting"
|
||||||
|
"set-timeout"
|
||||||
|
(code :upvalue-count 2
|
||||||
|
:bytecode (18 0 18 1 49 1 50)
|
||||||
|
:constants ())
|
||||||
|
"host-call"
|
||||||
|
"observer"
|
||||||
|
"unobserve"))
|
||||||
|
"host-call"
|
||||||
|
"forEach"
|
||||||
|
"host-callback"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 50)
|
||||||
|
:constants ())))
|
||||||
|
"host-new"
|
||||||
|
"IntersectionObserver"
|
||||||
|
(code :arity 1 :upvalue-count 5
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 2 17 2 51 2 0 1 1 1 0 0 0 0 1 0 2 0 3 0 4 1 2 17 2 16 2 1 3 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"length"
|
||||||
|
(code :arity 1 :upvalue-count 8
|
||||||
|
:bytecode (16 0 18 0 52 0 0 2 33 105 0 20 1 0 18 1 1 2 0 16 0 48 3 17 1 16 1 6 33 11 0 5 20 3 0 16 1 1 4 0 48 2 33 53 0 18 2 33 17 0 20 5 0 51 6 0 0 3 1 1 18 2 48 2 32 6 0 18 3 16 1 48 1 5 18 4 33 15 0 20 1 0 18 5 1 7 0 18 6 48 3 32 1 0 2 32 1 0 2 5 18 7 16 0 1 9 0 52 8 0 2 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"host-call"
|
||||||
|
"item"
|
||||||
|
"host-get"
|
||||||
|
"isIntersecting"
|
||||||
|
"set-timeout"
|
||||||
|
(code :upvalue-count 2
|
||||||
|
:bytecode (18 0 18 1 49 1 50)
|
||||||
|
:constants ())
|
||||||
|
"unobserve"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
0))
|
||||||
|
"host-call"
|
||||||
|
"observe"))
|
||||||
|
"event-source-connect"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 1 1 0 16 0 48 2 17 2 20 2 0 16 2 1 3 0 16 1 48 3 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-new"
|
||||||
|
"EventSource"
|
||||||
|
"host-set!"
|
||||||
|
"_sxElement"))
|
||||||
|
"event-source-listen"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 16 1 20 2 0 51 3 0 1 2 48 1 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"addEventListener"
|
||||||
|
"host-callback"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 49 1 50)
|
||||||
|
:constants ())))
|
||||||
|
"bind-boost-link"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 51 2 0 1 0 1 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"dom-listen"
|
||||||
|
"click"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 1 0 16 0 48 1 52 0 0 1 33 89 0 20 2 0 16 0 48 1 5 20 3 0 18 0 1 4 0 48 2 52 0 0 1 33 15 0 20 5 0 18 0 1 4 0 18 1 48 3 32 1 0 2 5 20 3 0 18 0 1 6 0 48 2 52 0 0 1 33 16 0 20 5 0 18 0 1 6 0 1 7 0 48 3 32 1 0 2 5 20 8 0 18 0 2 2 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"event-modifier-key?"
|
||||||
|
"prevent-default"
|
||||||
|
"dom-has-attr?"
|
||||||
|
"sx-get"
|
||||||
|
"dom-set-attr"
|
||||||
|
"sx-push-url"
|
||||||
|
"true"
|
||||||
|
"execute-request"))))
|
||||||
|
"bind-boost-form"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 51 2 0 1 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"dom-listen"
|
||||||
|
"submit"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 5 20 1 0 18 0 2 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"prevent-default"
|
||||||
|
"execute-request"))))
|
||||||
|
"bind-client-route-click"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 51 2 0 1 1 1 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"dom-listen"
|
||||||
|
"click"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 1 0 16 0 48 1 52 0 0 1 33 198 0 20 2 0 16 0 48 1 5 20 3 0 1 4 0 48 1 17 1 16 1 33 46 0 20 5 0 16 1 1 6 0 48 2 17 3 16 3 6 33 14 0 5 16 3 1 8 0 52 7 0 2 52 0 0 1 33 5 0 16 3 32 3 0 1 9 0 32 3 0 1 9 0 17 2 20 10 0 20 11 0 18 0 48 1 16 2 48 2 33 26 0 20 12 0 2 1 13 0 18 0 48 3 5 20 14 0 1 15 0 1 15 0 49 2 32 78 0 20 16 0 18 1 1 17 0 48 2 52 0 0 1 33 15 0 20 18 0 18 1 1 17 0 18 0 48 3 32 1 0 2 5 20 16 0 18 1 1 19 0 48 2 52 0 0 1 33 16 0 20 18 0 18 1 1 19 0 1 8 0 48 3 32 1 0 2 5 20 20 0 18 1 2 2 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"event-modifier-key?"
|
||||||
|
"prevent-default"
|
||||||
|
"dom-query"
|
||||||
|
"[sx-boost]"
|
||||||
|
"dom-get-attr"
|
||||||
|
"sx-boost"
|
||||||
|
"="
|
||||||
|
"true"
|
||||||
|
"#main-panel"
|
||||||
|
"try-client-route"
|
||||||
|
"url-pathname"
|
||||||
|
"browser-push-state"
|
||||||
|
""
|
||||||
|
"browser-scroll-to"
|
||||||
|
0
|
||||||
|
"dom-has-attr?"
|
||||||
|
"sx-get"
|
||||||
|
"dom-set-attr"
|
||||||
|
"sx-push-url"
|
||||||
|
"execute-request"))))
|
||||||
|
"sw-post-message"
|
||||||
|
"try-parse-json"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"json-parse"))
|
||||||
|
"strip-component-scripts"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 17 1 1 0 0 17 2 1 1 0 17 3 2 17 4 51 2 0 1 2 1 1 1 3 1 4 17 4 16 4 16 1 48 1 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"<script type=\"text/sx\" data-components>"
|
||||||
|
"</script>"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (16 0 18 0 52 0 0 2 17 1 16 1 1 2 0 52 1 0 2 33 7 0 16 0 19 1 32 129 0 16 1 18 0 52 4 0 1 52 3 0 2 17 2 16 0 16 1 18 0 52 4 0 1 52 3 0 2 52 5 0 2 17 3 16 3 18 2 52 0 0 2 17 4 16 4 1 2 0 52 1 0 2 33 7 0 16 0 19 1 32 66 0 16 3 1 6 0 16 4 52 5 0 3 17 5 16 0 1 6 0 16 1 52 5 0 3 17 6 16 3 16 4 18 2 52 4 0 1 52 3 0 2 52 5 0 2 17 7 20 7 0 16 5 48 1 5 18 3 16 6 16 7 52 8 0 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"index-of"
|
||||||
|
"="
|
||||||
|
-1
|
||||||
|
"+"
|
||||||
|
"len"
|
||||||
|
"slice"
|
||||||
|
0
|
||||||
|
"sx-load-components"
|
||||||
|
"str"))))
|
||||||
|
"extract-response-css"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 17 1 1 0 0 17 2 1 1 0 17 3 2 17 4 51 2 0 1 2 1 1 1 3 1 4 17 4 16 4 16 1 48 1 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"<style data-sx-css>"
|
||||||
|
"</style>"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (16 0 18 0 52 0 0 2 17 1 16 1 1 2 0 52 1 0 2 33 7 0 16 0 19 1 32 153 0 16 0 16 1 18 0 52 5 0 1 52 4 0 2 52 3 0 2 17 2 16 2 18 2 52 0 0 2 17 3 16 3 1 2 0 52 1 0 2 33 7 0 16 0 19 1 32 104 0 16 2 1 6 0 16 3 52 3 0 3 17 4 16 0 1 6 0 16 1 52 3 0 3 17 5 16 2 16 3 18 2 52 5 0 1 52 4 0 2 52 3 0 2 17 6 20 7 0 1 8 0 48 1 17 7 20 9 0 16 7 1 10 0 1 11 0 48 3 17 8 20 12 0 16 8 1 13 0 16 4 48 3 5 20 14 0 16 8 48 1 5 18 3 16 5 16 6 52 15 0 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"index-of"
|
||||||
|
"="
|
||||||
|
-1
|
||||||
|
"slice"
|
||||||
|
"+"
|
||||||
|
"len"
|
||||||
|
0
|
||||||
|
"host-global"
|
||||||
|
"document"
|
||||||
|
"host-call"
|
||||||
|
"createElement"
|
||||||
|
"style"
|
||||||
|
"host-set!"
|
||||||
|
"textContent"
|
||||||
|
"dom-append-to-head"
|
||||||
|
"str"))))
|
||||||
|
"sx-render"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 48 1 17 1 20 2 0 16 1 1 3 0 48 2 17 2 20 4 0 16 0 48 1 17 3 1 6 0 3 52 5 0 2 5 51 8 0 1 2 16 3 52 7 0 2 5 1 6 0 52 9 0 1 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-global"
|
||||||
|
"document"
|
||||||
|
"host-call"
|
||||||
|
"createDocumentFragment"
|
||||||
|
"sx-parse"
|
||||||
|
"scope-push!"
|
||||||
|
"sx-render-markers"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 20 1 0 2 48 1 2 48 3 17 1 16 1 33 12 0 20 2 0 18 0 16 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-dom"
|
||||||
|
"get-render-env"
|
||||||
|
"dom-append"))
|
||||||
|
"scope-pop!"))
|
||||||
|
"sx-hydrate"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 6 34 6 0 5 20 1 0 48 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"sx-hydrate-elements"
|
||||||
|
"dom-body"))
|
||||||
|
"sx-process-scripts"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 6 34 6 0 5 20 1 0 48 0 1 2 0 48 2 17 1 51 4 0 16 1 52 3 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"dom-body"
|
||||||
|
"script[type=\"text/sx\"]"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 1 2 0 48 2 52 0 0 1 33 71 0 20 3 0 16 0 1 2 0 48 2 5 20 4 0 16 0 1 5 0 48 2 17 1 16 1 6 33 14 0 5 16 1 52 7 0 1 1 8 0 52 6 0 2 33 21 0 20 9 0 16 1 48 1 17 2 51 11 0 16 2 52 10 0 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"is-processed?"
|
||||||
|
"sx-script"
|
||||||
|
"mark-processed!"
|
||||||
|
"host-get"
|
||||||
|
"textContent"
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
0
|
||||||
|
"sx-parse"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"cek-eval"))))))
|
||||||
|
"select-from-container"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 33 31 0 20 0 0 16 0 16 1 48 2 17 2 16 2 33 5 0 16 2 32 7 0 20 1 0 16 0 49 1 32 7 0 20 1 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query"
|
||||||
|
"children-to-fragment"))
|
||||||
|
"children-to-fragment"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 48 1 17 1 20 2 0 16 1 1 3 0 48 2 17 2 2 17 3 51 4 0 1 0 1 2 1 3 17 3 16 3 48 0 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-global"
|
||||||
|
"document"
|
||||||
|
"host-call"
|
||||||
|
"createDocumentFragment"
|
||||||
|
(code :upvalue-count 3
|
||||||
|
:bytecode (20 0 0 18 0 48 1 17 0 16 0 33 17 0 20 1 0 18 1 16 0 48 2 5 18 2 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-first-child"
|
||||||
|
"dom-append"))))
|
||||||
|
"select-html-from-doc"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 33 36 0 20 0 0 16 0 16 1 48 2 17 2 16 2 33 10 0 20 1 0 16 2 49 1 32 7 0 20 2 0 16 0 49 1 32 7 0 20 2 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query"
|
||||||
|
"dom-inner-html"
|
||||||
|
"dom-body-inner-html"))
|
||||||
|
"find-matching-route"
|
||||||
|
"parse-route-pattern"
|
||||||
|
"register-io-deps"
|
||||||
|
"resolve-page-data"
|
||||||
|
"parse-sx-data"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 6 33 14 0 5 16 0 52 1 0 1 1 2 0 52 0 0 2 33 35 0 20 3 0 16 0 48 1 17 1 16 1 52 5 0 1 52 4 0 1 33 9 0 16 1 52 6 0 1 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
0
|
||||||
|
"sx-parse"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"first"))
|
||||||
|
"try-eval-content"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 2 16 2 52 1 0 1 33 4 0 2 32 23 0 20 2 0 48 0 17 3 51 4 0 1 1 1 3 16 2 52 3 0 2 5 16 3 50)
|
||||||
|
:constants (
|
||||||
|
"sx-parse"
|
||||||
|
"empty?"
|
||||||
|
"create-fragment"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 18 0 2 48 3 17 1 16 1 33 12 0 20 1 0 18 1 16 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-dom"
|
||||||
|
"dom-append"))))
|
||||||
|
"try-async-eval-content"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"try-eval-content"))
|
||||||
|
"try-rerender-page"
|
||||||
|
(code
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())
|
||||||
|
"execute-action"
|
||||||
|
"bind-preload"
|
||||||
|
"persist-offline-data"
|
||||||
|
"retrieve-offline-data")))
|
||||||
464
shared/static/wasm/sx/boot.sxbc
Normal file
464
shared/static/wasm/sx/boot.sxbc
Normal file
@@ -0,0 +1,464 @@
|
|||||||
|
(sxbc 1 "8dd29bf7bc354b48"
|
||||||
|
(code
|
||||||
|
:bytecode (1 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 52 19 0 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 52 19 0 0 128 32 0 5 52 19 0 0 128 33 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 50)
|
||||||
|
:constants (
|
||||||
|
"HEAD_HOIST_SELECTOR"
|
||||||
|
"meta, title, link[rel='canonical'], script[type='application/ld+json']"
|
||||||
|
"hoist-head-elements-full"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 20 1 0 48 2 17 1 51 3 0 16 1 52 2 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"HEAD_HOIST_SELECTOR"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 48 1 52 0 0 1 17 1 16 1 1 3 0 52 2 0 2 33 30 0 20 4 0 20 5 0 16 0 48 1 48 1 5 20 6 0 20 7 0 16 0 48 1 16 0 49 2 32 205 0 16 1 1 8 0 52 2 0 2 33 103 0 20 9 0 16 0 1 10 0 48 2 17 2 20 9 0 16 0 1 11 0 48 2 17 3 16 2 33 20 0 20 12 0 1 14 0 16 2 1 15 0 52 13 0 3 48 1 32 1 0 2 5 16 3 33 20 0 20 12 0 1 16 0 16 3 1 15 0 52 13 0 3 48 1 32 1 0 2 5 20 6 0 20 7 0 16 0 48 1 16 0 48 2 5 20 17 0 16 0 49 1 32 90 0 16 1 1 18 0 52 2 0 2 6 33 18 0 5 20 9 0 16 0 1 19 0 48 2 1 20 0 52 2 0 2 33 34 0 20 12 0 1 21 0 48 1 5 20 6 0 20 7 0 16 0 48 1 16 0 48 2 5 20 17 0 16 0 49 1 32 22 0 20 6 0 20 7 0 16 0 48 1 16 0 48 2 5 20 17 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"lower"
|
||||||
|
"dom-tag-name"
|
||||||
|
"="
|
||||||
|
"title"
|
||||||
|
"set-document-title"
|
||||||
|
"dom-text-content"
|
||||||
|
"dom-remove-child"
|
||||||
|
"dom-parent"
|
||||||
|
"meta"
|
||||||
|
"dom-get-attr"
|
||||||
|
"name"
|
||||||
|
"property"
|
||||||
|
"remove-head-element"
|
||||||
|
"str"
|
||||||
|
"meta[name=\""
|
||||||
|
"\"]"
|
||||||
|
"meta[property=\""
|
||||||
|
"dom-append-to-head"
|
||||||
|
"link"
|
||||||
|
"rel"
|
||||||
|
"canonical"
|
||||||
|
"link[rel=\"canonical\"]"))))
|
||||||
|
"sx-mount"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 3 16 3 33 90 0 20 2 0 16 3 48 1 52 1 0 1 33 42 0 20 3 0 16 1 16 2 48 2 17 4 20 4 0 16 3 1 5 0 48 2 5 20 6 0 16 3 16 4 48 2 5 20 7 0 16 3 48 1 32 1 0 2 5 20 8 0 16 3 48 1 5 20 9 0 16 3 48 1 5 20 10 0 16 3 48 1 5 20 11 0 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"resolve-mount-target"
|
||||||
|
"empty?"
|
||||||
|
"dom-child-list"
|
||||||
|
"sx-render-with-env"
|
||||||
|
"dom-set-text-content"
|
||||||
|
""
|
||||||
|
"dom-append"
|
||||||
|
"hoist-head-elements-full"
|
||||||
|
"process-elements"
|
||||||
|
"sx-hydrate-elements"
|
||||||
|
"sx-hydrate-islands"
|
||||||
|
"run-post-render-hooks"))
|
||||||
|
"resolve-suspense"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 2 48 1 5 20 1 0 1 3 0 16 0 1 4 0 52 2 0 3 48 1 17 2 16 2 33 93 0 20 5 0 16 1 48 1 17 3 20 6 0 2 48 1 17 4 20 7 0 16 2 1 8 0 48 2 5 51 10 0 1 2 1 4 16 3 52 9 0 2 5 20 11 0 16 2 48 1 5 20 12 0 16 2 48 1 5 20 13 0 16 2 48 1 5 20 14 0 48 0 5 20 15 0 16 2 1 16 0 1 17 0 16 0 65 1 0 49 3 32 14 0 20 18 0 1 19 0 16 0 52 2 0 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"process-sx-scripts"
|
||||||
|
"dom-query"
|
||||||
|
"str"
|
||||||
|
"[data-suspense=\""
|
||||||
|
"\"]"
|
||||||
|
"parse"
|
||||||
|
"get-render-env"
|
||||||
|
"dom-set-text-content"
|
||||||
|
""
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 20 1 0 16 0 18 1 2 48 3 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-append"
|
||||||
|
"render-to-dom"))
|
||||||
|
"process-elements"
|
||||||
|
"sx-hydrate-elements"
|
||||||
|
"sx-hydrate-islands"
|
||||||
|
"run-post-render-hooks"
|
||||||
|
"dom-dispatch"
|
||||||
|
"sx:resolved"
|
||||||
|
"id"
|
||||||
|
"log-warn"
|
||||||
|
"resolveSuspense: no element for id="))
|
||||||
|
"sx-hydrate-elements"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 6 34 6 0 5 20 1 0 48 0 1 2 0 48 2 17 1 51 4 0 16 1 52 3 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"dom-body"
|
||||||
|
"[data-sx]"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 1 2 0 48 2 52 0 0 1 33 22 0 20 3 0 16 0 1 2 0 48 2 5 20 4 0 16 0 2 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"is-processed?"
|
||||||
|
"hydrated"
|
||||||
|
"mark-processed!"
|
||||||
|
"sx-update-element"))))
|
||||||
|
"sx-update-element"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 2 16 2 33 96 0 20 1 0 16 2 1 2 0 48 2 17 3 16 3 33 75 0 20 3 0 16 2 48 1 17 4 20 4 0 16 4 16 1 48 2 17 5 20 5 0 16 3 16 5 48 2 17 6 20 6 0 16 2 1 7 0 48 2 5 20 8 0 16 2 16 6 48 2 5 16 1 33 14 0 20 9 0 16 2 16 4 16 1 49 3 32 1 0 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"resolve-mount-target"
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-sx"
|
||||||
|
"parse-env-attr"
|
||||||
|
"merge-envs"
|
||||||
|
"sx-render-with-env"
|
||||||
|
"dom-set-text-content"
|
||||||
|
""
|
||||||
|
"dom-append"
|
||||||
|
"store-env-attr"))
|
||||||
|
"sx-render-component"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 5 0 16 0 32 9 0 1 1 0 16 0 52 2 0 2 17 3 20 3 0 16 2 48 1 17 4 20 4 0 16 4 16 3 48 2 17 5 16 5 52 6 0 1 52 5 0 1 33 16 0 1 8 0 16 3 52 2 0 2 52 7 0 1 32 40 0 16 3 52 10 0 1 52 9 0 1 17 6 51 12 0 1 6 1 1 16 1 52 13 0 1 52 11 0 2 5 20 14 0 16 6 16 4 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"str"
|
||||||
|
"get-render-env"
|
||||||
|
"env-get"
|
||||||
|
"not"
|
||||||
|
"component?"
|
||||||
|
"error"
|
||||||
|
"Unknown component: "
|
||||||
|
"list"
|
||||||
|
"make-symbol"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 20 1 0 20 2 0 16 0 48 1 48 1 48 2 5 20 0 0 18 0 18 1 16 0 52 3 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"
|
||||||
|
"make-keyword"
|
||||||
|
"to-kebab"
|
||||||
|
"dict-get"))
|
||||||
|
"keys"
|
||||||
|
"render-to-dom"))
|
||||||
|
"process-sx-scripts"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 51 2 0 16 1 52 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"query-sx-scripts"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 1 2 0 48 2 52 0 0 1 33 173 0 20 3 0 16 0 1 2 0 48 2 5 20 4 0 16 0 48 1 17 1 20 5 0 16 0 1 6 0 48 2 33 12 0 20 7 0 16 0 16 1 49 2 32 125 0 16 1 52 8 0 1 6 34 11 0 5 16 1 52 10 0 1 52 9 0 1 33 4 0 2 32 97 0 20 5 0 16 0 1 11 0 48 2 33 21 0 20 12 0 16 1 48 1 17 2 51 14 0 16 2 52 13 0 2 32 63 0 20 5 0 16 0 1 15 0 48 2 33 43 0 20 16 0 16 0 1 15 0 48 2 17 2 20 17 0 16 2 48 1 17 3 16 3 33 13 0 20 18 0 16 3 16 1 2 49 3 32 1 0 2 32 7 0 20 19 0 16 1 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"is-processed?"
|
||||||
|
"script"
|
||||||
|
"mark-processed!"
|
||||||
|
"dom-text-content"
|
||||||
|
"dom-has-attr?"
|
||||||
|
"data-components"
|
||||||
|
"process-component-script"
|
||||||
|
"nil?"
|
||||||
|
"empty?"
|
||||||
|
"trim"
|
||||||
|
"data-init"
|
||||||
|
"sx-parse"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"cek-eval"))
|
||||||
|
"data-mount"
|
||||||
|
"dom-get-attr"
|
||||||
|
"dom-query"
|
||||||
|
"sx-mount"
|
||||||
|
"sx-load-components"))))
|
||||||
|
"process-component-script"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 2 16 2 52 2 0 1 33 38 0 16 1 6 33 15 0 5 16 1 52 5 0 1 52 4 0 1 52 3 0 1 33 10 0 20 6 0 16 1 49 1 32 1 0 2 32 239 0 16 1 6 33 15 0 5 16 1 52 5 0 1 52 4 0 1 52 3 0 1 17 3 20 7 0 1 8 0 48 1 17 4 16 4 16 2 52 9 0 2 33 103 0 16 3 33 41 0 20 10 0 1 8 0 16 2 48 2 5 20 10 0 1 11 0 16 1 48 2 5 20 6 0 16 1 48 1 5 20 12 0 1 13 0 48 1 32 54 0 20 7 0 1 11 0 48 1 17 5 16 5 33 28 0 20 6 0 16 5 48 1 5 20 12 0 1 15 0 16 2 1 16 0 52 14 0 3 48 1 32 11 0 20 17 0 48 0 5 20 18 0 48 0 32 84 0 16 3 33 50 0 20 10 0 1 8 0 16 2 48 2 5 20 10 0 1 11 0 16 1 48 2 5 20 6 0 16 1 48 1 5 20 12 0 1 19 0 16 2 1 16 0 52 14 0 3 48 1 32 29 0 20 20 0 1 8 0 48 1 5 20 20 0 1 11 0 48 1 5 20 17 0 48 0 5 20 18 0 48 0 5 20 21 0 16 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-hash"
|
||||||
|
"nil?"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"trim"
|
||||||
|
"sx-load-components"
|
||||||
|
"local-storage-get"
|
||||||
|
"sx-components-hash"
|
||||||
|
"="
|
||||||
|
"local-storage-set"
|
||||||
|
"sx-components-src"
|
||||||
|
"log-info"
|
||||||
|
"components: downloaded (cookie stale)"
|
||||||
|
"str"
|
||||||
|
"components: cached ("
|
||||||
|
")"
|
||||||
|
"clear-sx-comp-cookie"
|
||||||
|
"browser-reload"
|
||||||
|
"components: downloaded ("
|
||||||
|
"local-storage-remove"
|
||||||
|
"set-sx-comp-cookie"))
|
||||||
|
"_page-routes"
|
||||||
|
"list"
|
||||||
|
"process-page-scripts"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 48 0 17 0 20 1 0 1 3 0 16 0 52 4 0 1 1 5 0 52 2 0 3 48 1 5 51 7 0 16 0 52 6 0 2 5 20 1 0 1 8 0 20 9 0 52 4 0 1 1 10 0 52 2 0 3 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"query-page-scripts"
|
||||||
|
"log-info"
|
||||||
|
"str"
|
||||||
|
"pages: found "
|
||||||
|
"len"
|
||||||
|
" script tags"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 1 2 0 48 2 52 0 0 1 33 128 0 20 3 0 16 0 1 2 0 48 2 5 20 4 0 16 0 48 1 17 1 20 5 0 1 7 0 16 1 33 9 0 16 1 52 8 0 1 32 3 0 1 9 0 52 6 0 2 48 1 5 16 1 6 33 15 0 5 16 1 52 11 0 1 52 10 0 1 52 0 0 1 33 43 0 20 12 0 16 1 48 1 17 2 20 5 0 1 13 0 16 2 52 8 0 1 1 14 0 52 6 0 3 48 1 5 51 16 0 16 2 52 15 0 2 32 8 0 20 17 0 1 18 0 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"is-processed?"
|
||||||
|
"pages"
|
||||||
|
"mark-processed!"
|
||||||
|
"dom-text-content"
|
||||||
|
"log-info"
|
||||||
|
"str"
|
||||||
|
"pages: script text length="
|
||||||
|
"len"
|
||||||
|
0
|
||||||
|
"empty?"
|
||||||
|
"trim"
|
||||||
|
"parse"
|
||||||
|
"pages: parsed "
|
||||||
|
" entries"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 1 3 0 20 4 0 16 0 1 6 0 52 5 0 2 48 1 65 1 0 52 2 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"
|
||||||
|
"_page-routes"
|
||||||
|
"merge"
|
||||||
|
"parsed"
|
||||||
|
"parse-route-pattern"
|
||||||
|
"get"
|
||||||
|
"path"))
|
||||||
|
"log-warn"
|
||||||
|
"pages: script tag is empty"))
|
||||||
|
"pages: "
|
||||||
|
"_page-routes"
|
||||||
|
" routes loaded"))
|
||||||
|
"sx-hydrate-islands"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 6 34 6 0 5 20 1 0 48 0 1 2 0 48 2 17 1 20 3 0 1 5 0 16 1 52 6 0 1 1 7 0 16 0 33 6 0 1 8 0 32 3 0 1 9 0 52 4 0 4 48 1 5 51 11 0 16 1 52 10 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"dom-body"
|
||||||
|
"[data-sx-island]"
|
||||||
|
"log-info"
|
||||||
|
"str"
|
||||||
|
"sx-hydrate-islands: "
|
||||||
|
"len"
|
||||||
|
" island(s) in "
|
||||||
|
"subtree"
|
||||||
|
"document"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 33 25 0 20 2 0 1 4 0 20 5 0 16 0 1 6 0 48 2 52 3 0 2 49 1 32 41 0 20 2 0 1 7 0 20 5 0 16 0 1 6 0 48 2 52 3 0 2 48 1 5 20 8 0 16 0 1 1 0 48 2 5 20 9 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"is-processed?"
|
||||||
|
"island-hydrated"
|
||||||
|
"log-info"
|
||||||
|
"str"
|
||||||
|
" skip (already hydrated): "
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-sx-island"
|
||||||
|
" hydrating: "
|
||||||
|
"mark-processed!"
|
||||||
|
"hydrate-island"))))
|
||||||
|
"hydrate-island"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 20 0 0 16 0 1 2 0 48 2 6 34 4 0 5 1 3 0 17 2 1 5 0 16 1 52 4 0 2 17 3 20 6 0 2 48 1 17 4 20 7 0 16 4 16 3 48 2 17 5 16 5 52 9 0 1 6 34 7 0 5 16 5 52 10 0 1 52 8 0 1 33 17 0 20 11 0 1 12 0 16 3 52 4 0 2 49 1 32 149 0 20 14 0 16 2 48 1 52 13 0 1 6 34 4 0 5 65 0 0 17 6 52 15 0 0 17 7 20 16 0 16 5 52 17 0 1 16 4 48 2 17 8 51 19 0 1 8 1 6 16 5 52 20 0 1 52 18 0 2 5 20 21 0 51 22 0 1 7 1 5 1 8 51 23 0 1 3 48 2 17 9 20 24 0 16 0 1 25 0 48 2 5 20 26 0 16 0 16 9 48 2 5 20 27 0 16 0 1 28 0 16 7 48 3 5 20 29 0 16 0 48 1 5 20 30 0 1 31 0 16 3 1 32 0 16 7 52 33 0 1 1 34 0 52 4 0 5 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-sx-island"
|
||||||
|
"data-sx-state"
|
||||||
|
"{}"
|
||||||
|
"str"
|
||||||
|
"~"
|
||||||
|
"get-render-env"
|
||||||
|
"env-get"
|
||||||
|
"not"
|
||||||
|
"component?"
|
||||||
|
"island?"
|
||||||
|
"log-warn"
|
||||||
|
"hydrate-island: unknown island "
|
||||||
|
"first"
|
||||||
|
"sx-parse"
|
||||||
|
"list"
|
||||||
|
"env-merge"
|
||||||
|
"component-closure"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 18 1 16 0 52 1 0 2 33 11 0 18 1 16 0 52 2 0 2 32 1 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"env-bind!"
|
||||||
|
"dict-has?"
|
||||||
|
"dict-get"))
|
||||||
|
"component-params"
|
||||||
|
"cek-try"
|
||||||
|
(code :upvalue-count 3
|
||||||
|
:bytecode (20 0 0 51 1 0 0 0 51 2 0 0 1 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"with-island-scope"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"))
|
||||||
|
(code :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 52 1 0 1 18 1 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-dom"
|
||||||
|
"component-body"))))
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 1 2 0 18 0 1 3 0 16 0 52 1 0 4 48 1 5 20 4 0 1 5 0 2 48 2 17 1 20 6 0 16 1 1 7 0 1 8 0 48 3 5 20 6 0 16 1 1 9 0 1 10 0 48 3 5 20 11 0 16 1 1 12 0 18 0 1 13 0 16 0 52 1 0 4 48 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"log-warn"
|
||||||
|
"str"
|
||||||
|
"hydrate-island FAILED: "
|
||||||
|
" — "
|
||||||
|
"dom-create-element"
|
||||||
|
"div"
|
||||||
|
"dom-set-attr"
|
||||||
|
"class"
|
||||||
|
"sx-island-error"
|
||||||
|
"style"
|
||||||
|
"padding:8px;margin:4px 0;border:1px solid #ef4444;border-radius:4px;background:#fef2f2;color:#b91c1c;font-family:monospace;font-size:12px;white-space:pre-wrap"
|
||||||
|
"dom-set-text-content"
|
||||||
|
"Island error: "
|
||||||
|
"
|
||||||
|
"))
|
||||||
|
"dom-set-text-content"
|
||||||
|
""
|
||||||
|
"dom-append"
|
||||||
|
"dom-set-data"
|
||||||
|
"sx-disposers"
|
||||||
|
"process-elements"
|
||||||
|
"log-info"
|
||||||
|
"hydrated island: "
|
||||||
|
" ("
|
||||||
|
"len"
|
||||||
|
" disposers)"))
|
||||||
|
"dispose-island"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 33 24 0 51 3 0 16 1 52 2 0 2 5 20 4 0 16 0 1 1 0 2 48 3 32 1 0 2 5 20 5 0 16 0 1 6 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-data"
|
||||||
|
"sx-disposers"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 33 7 0 16 0 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"callable?"))
|
||||||
|
"dom-set-data"
|
||||||
|
"clear-processed!"
|
||||||
|
"island-hydrated"))
|
||||||
|
"dispose-islands-in"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 33 98 0 20 0 0 16 0 1 1 0 48 2 17 1 16 1 6 33 11 0 5 16 1 52 3 0 1 52 2 0 1 33 62 0 51 5 0 16 1 52 4 0 2 17 2 16 2 52 3 0 1 52 2 0 1 33 34 0 20 6 0 1 8 0 16 2 52 9 0 1 1 10 0 52 7 0 3 48 1 5 20 12 0 16 2 52 11 0 2 32 1 0 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"[data-sx-island]"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"filter"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 1 2 0 48 2 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"is-processed?"
|
||||||
|
"island-hydrated"))
|
||||||
|
"log-info"
|
||||||
|
"str"
|
||||||
|
"disposing "
|
||||||
|
"len"
|
||||||
|
" island(s)"
|
||||||
|
"for-each"
|
||||||
|
"dispose-island"))
|
||||||
|
"force-dispose-islands-in"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 33 70 0 20 0 0 16 0 1 1 0 48 2 17 1 16 1 6 33 11 0 5 16 1 52 3 0 1 52 2 0 1 33 34 0 20 4 0 1 6 0 16 1 52 7 0 1 1 8 0 52 5 0 3 48 1 5 20 10 0 16 1 52 9 0 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"[data-sx-island]"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"log-info"
|
||||||
|
"str"
|
||||||
|
"force-disposing "
|
||||||
|
"len"
|
||||||
|
" island(s)"
|
||||||
|
"for-each"
|
||||||
|
"dispose-island"))
|
||||||
|
"*pre-render-hooks*"
|
||||||
|
"*post-render-hooks*"
|
||||||
|
"register-pre-render-hook"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"
|
||||||
|
"*pre-render-hooks*"))
|
||||||
|
"register-post-render-hook"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"
|
||||||
|
"*post-render-hooks*"))
|
||||||
|
"run-pre-render-hooks"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 20 2 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"cek-call"))
|
||||||
|
"*pre-render-hooks*"))
|
||||||
|
"run-post-render-hooks"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 1 2 0 20 4 0 52 3 0 1 1 5 0 52 1 0 3 48 1 5 51 7 0 20 4 0 52 6 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"log-info"
|
||||||
|
"str"
|
||||||
|
"run-post-render-hooks: "
|
||||||
|
"len"
|
||||||
|
"*post-render-hooks*"
|
||||||
|
" hooks"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 2 0 16 0 52 3 0 1 1 4 0 20 5 0 16 0 48 1 1 6 0 16 0 52 7 0 1 52 1 0 6 48 1 5 20 8 0 16 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"log-info"
|
||||||
|
"str"
|
||||||
|
" hook type: "
|
||||||
|
"type-of"
|
||||||
|
" callable: "
|
||||||
|
"callable?"
|
||||||
|
" lambda: "
|
||||||
|
"lambda?"
|
||||||
|
"cek-call"))))
|
||||||
|
"boot-init"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 1 2 0 20 3 0 52 1 0 2 48 1 5 20 4 0 48 0 5 20 5 0 48 0 5 20 6 0 2 48 1 5 20 7 0 2 48 1 5 20 8 0 2 48 1 5 20 9 0 48 0 5 20 10 0 2 48 1 5 20 11 0 20 12 0 48 0 1 13 0 51 14 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"log-info"
|
||||||
|
"str"
|
||||||
|
"sx-browser "
|
||||||
|
"SX_VERSION"
|
||||||
|
"init-css-tracking"
|
||||||
|
"process-page-scripts"
|
||||||
|
"process-sx-scripts"
|
||||||
|
"sx-hydrate-elements"
|
||||||
|
"sx-hydrate-islands"
|
||||||
|
"run-post-render-hooks"
|
||||||
|
"process-elements"
|
||||||
|
"dom-listen"
|
||||||
|
"dom-window"
|
||||||
|
"popstate"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"handle-popstate"
|
||||||
|
0)))))))
|
||||||
317
shared/static/wasm/sx/browser.sxbc
Normal file
317
shared/static/wasm/sx/browser.sxbc
Normal file
@@ -0,0 +1,317 @@
|
|||||||
|
(sxbc 1 "b149b21c8bdcb90e"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 51 33 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 5 51 45 0 128 44 0 5 51 47 0 128 46 0 5 51 49 0 128 48 0 5 51 51 0 128 50 0 5 51 53 0 128 52 0 5 51 55 0 128 54 0 5 51 57 0 128 56 0 5 51 59 0 128 58 0 5 51 57 0 128 60 0 5 51 62 0 128 61 0 5 51 64 0 128 63 0 5 51 66 0 128 65 0 5 51 68 0 128 67 0 50)
|
||||||
|
:constants (
|
||||||
|
"browser-location-href"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 20 0 0 20 1 0 48 0 1 2 0 48 2 1 3 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"location"
|
||||||
|
"href"))
|
||||||
|
"browser-location-pathname"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 20 0 0 20 1 0 48 0 1 2 0 48 2 1 3 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"location"
|
||||||
|
"pathname"))
|
||||||
|
"browser-location-origin"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 20 0 0 20 1 0 48 0 1 2 0 48 2 1 3 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"location"
|
||||||
|
"origin"))
|
||||||
|
"browser-same-origin?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 20 1 0 48 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"browser-location-origin"))
|
||||||
|
"url-pathname"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 1 2 0 16 0 20 3 0 48 0 48 3 1 4 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"host-new"
|
||||||
|
"URL"
|
||||||
|
"browser-location-origin"
|
||||||
|
"pathname"))
|
||||||
|
"browser-push-state"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 0 0 1 33 30 0 20 1 0 20 2 0 20 3 0 48 0 1 4 0 48 2 1 5 0 2 1 6 0 16 0 49 5 32 27 0 20 1 0 20 2 0 20 3 0 48 0 1 4 0 48 2 1 5 0 16 0 16 1 16 2 49 5 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"history"
|
||||||
|
"pushState"
|
||||||
|
""))
|
||||||
|
"browser-replace-state"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 0 0 1 33 30 0 20 1 0 20 2 0 20 3 0 48 0 1 4 0 48 2 1 5 0 2 1 6 0 16 0 49 5 32 27 0 20 1 0 20 2 0 20 3 0 48 0 1 4 0 48 2 1 5 0 16 0 16 1 16 2 49 5 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"history"
|
||||||
|
"replaceState"
|
||||||
|
""))
|
||||||
|
"browser-reload"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 20 1 0 20 2 0 48 0 1 3 0 48 2 1 4 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"location"
|
||||||
|
"reload"))
|
||||||
|
"browser-navigate"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 20 2 0 48 0 1 3 0 48 2 1 4 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-set!"
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"location"
|
||||||
|
"href"))
|
||||||
|
"local-storage-get"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 20 2 0 48 0 1 3 0 48 2 1 4 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"localStorage"
|
||||||
|
"getItem"))
|
||||||
|
"local-storage-set"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 1 0 20 2 0 48 0 1 3 0 48 2 1 4 0 16 0 16 1 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"localStorage"
|
||||||
|
"setItem"))
|
||||||
|
"local-storage-remove"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 20 2 0 48 0 1 3 0 48 2 1 4 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"localStorage"
|
||||||
|
"removeItem"))
|
||||||
|
"set-timeout"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 20 3 0 16 0 48 1 16 1 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"setTimeout"
|
||||||
|
"host-callback"))
|
||||||
|
"set-interval"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 20 3 0 16 0 48 1 16 1 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"setInterval"
|
||||||
|
"host-callback"))
|
||||||
|
"clear-timeout"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"clearTimeout"))
|
||||||
|
"clear-interval"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"clearInterval"))
|
||||||
|
"request-animation-frame"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 20 3 0 16 0 48 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"requestAnimationFrame"
|
||||||
|
"host-callback"))
|
||||||
|
"fetch-request"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 16 1 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"fetch"))
|
||||||
|
"new-abort-controller"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 1 1 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"host-new"
|
||||||
|
"AbortController"))
|
||||||
|
"controller-signal"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"signal"))
|
||||||
|
"controller-abort"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"abort"))
|
||||||
|
"promise-then"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 1 48 1 17 3 16 2 33 10 0 20 0 0 16 2 48 1 32 1 0 2 17 4 16 4 33 25 0 20 1 0 20 1 0 16 0 1 2 0 16 3 48 3 1 3 0 16 4 49 3 32 12 0 20 1 0 16 0 1 2 0 16 3 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-callback"
|
||||||
|
"host-call"
|
||||||
|
"then"
|
||||||
|
"catch"))
|
||||||
|
"promise-resolve"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 1 2 0 48 1 1 3 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-global"
|
||||||
|
"Promise"
|
||||||
|
"resolve"))
|
||||||
|
"promise-delayed"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 1 1 0 20 2 0 51 3 0 1 1 1 0 48 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-new"
|
||||||
|
"Promise"
|
||||||
|
"host-callback"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 51 1 0 1 0 0 0 18 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"set-timeout"
|
||||||
|
(code :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 1 1 0 2 18 1 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"call"))))))
|
||||||
|
"browser-confirm"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"confirm"))
|
||||||
|
"browser-prompt"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 16 1 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"prompt"))
|
||||||
|
"browser-media-matches?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 20 2 0 48 0 1 3 0 16 0 48 3 1 4 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"host-call"
|
||||||
|
"dom-window"
|
||||||
|
"matchMedia"
|
||||||
|
"matches"))
|
||||||
|
"json-parse"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 1 2 0 48 1 1 3 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-global"
|
||||||
|
"JSON"
|
||||||
|
"parse"))
|
||||||
|
"log-info"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 1 2 0 48 1 1 3 0 1 5 0 16 0 52 4 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-global"
|
||||||
|
"console"
|
||||||
|
"log"
|
||||||
|
"str"
|
||||||
|
"[sx] "))
|
||||||
|
"log-warn"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 1 2 0 48 1 1 3 0 1 5 0 16 0 52 4 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-global"
|
||||||
|
"console"
|
||||||
|
"warn"
|
||||||
|
"str"
|
||||||
|
"[sx] "))
|
||||||
|
"console-log"
|
||||||
|
"now-ms"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 20 1 0 1 2 0 48 1 1 3 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-global"
|
||||||
|
"Date"
|
||||||
|
"now"))
|
||||||
|
"schedule-idle"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 51 1 0 1 0 48 1 17 1 20 2 0 20 3 0 48 0 1 4 0 48 2 33 18 0 20 5 0 20 3 0 48 0 1 4 0 16 1 49 3 32 10 0 20 6 0 16 1 1 7 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-callback"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 49 0 50)
|
||||||
|
:constants ())
|
||||||
|
"host-get"
|
||||||
|
"dom-window"
|
||||||
|
"requestIdleCallback"
|
||||||
|
"host-call"
|
||||||
|
"set-timeout"
|
||||||
|
0))
|
||||||
|
"set-cookie"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 2 6 34 4 0 5 1 0 0 17 3 20 1 0 20 2 0 1 3 0 20 1 0 20 5 0 1 3 0 48 1 1 6 0 48 2 16 3 1 8 0 52 7 0 2 52 4 0 2 48 2 1 9 0 48 2 17 4 20 10 0 20 11 0 48 0 1 12 0 16 0 1 14 0 20 1 0 2 1 15 0 16 1 48 3 1 16 0 16 4 1 17 0 52 13 0 6 49 3 50)
|
||||||
|
:constants (
|
||||||
|
365
|
||||||
|
"host-call"
|
||||||
|
"host-new"
|
||||||
|
"Date"
|
||||||
|
"+"
|
||||||
|
"host-global"
|
||||||
|
"now"
|
||||||
|
"*"
|
||||||
|
86400000
|
||||||
|
"toUTCString"
|
||||||
|
"host-set!"
|
||||||
|
"dom-document"
|
||||||
|
"cookie"
|
||||||
|
"str"
|
||||||
|
"="
|
||||||
|
"encodeURIComponent"
|
||||||
|
";expires="
|
||||||
|
";path=/;SameSite=Lax"))
|
||||||
|
"get-cookie"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 48 2 17 1 20 3 0 16 1 1 4 0 20 5 0 1 6 0 1 8 0 16 0 1 9 0 52 7 0 3 48 2 48 3 17 2 16 2 33 22 0 20 3 0 2 1 10 0 20 0 0 16 2 1 11 0 48 2 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"dom-document"
|
||||||
|
"cookie"
|
||||||
|
"host-call"
|
||||||
|
"match"
|
||||||
|
"host-new"
|
||||||
|
"RegExp"
|
||||||
|
"str"
|
||||||
|
"(?:^|;\\s*)"
|
||||||
|
"=([^;]*)"
|
||||||
|
"decodeURIComponent"
|
||||||
|
1)))))
|
||||||
204
shared/static/wasm/sx/bytecode.sxbc
Normal file
204
shared/static/wasm/sx/bytecode.sxbc
Normal file
@@ -0,0 +1,204 @@
|
|||||||
|
(sxbc 1 "45824e713893dfa0"
|
||||||
|
(code
|
||||||
|
:bytecode (1 1 0 128 0 0 5 1 3 0 128 2 0 5 1 5 0 128 4 0 5 1 7 0 128 6 0 5 1 9 0 128 8 0 5 1 11 0 128 10 0 5 1 13 0 128 12 0 5 1 15 0 128 14 0 5 1 17 0 128 16 0 5 1 19 0 128 18 0 5 1 21 0 128 20 0 5 1 23 0 128 22 0 5 1 25 0 128 24 0 5 1 27 0 128 26 0 5 1 29 0 128 28 0 5 1 31 0 128 30 0 5 1 33 0 128 32 0 5 1 35 0 128 34 0 5 1 37 0 128 36 0 5 1 39 0 128 38 0 5 1 41 0 128 40 0 5 1 43 0 128 42 0 5 1 45 0 128 44 0 5 1 47 0 128 46 0 5 1 49 0 128 48 0 5 1 51 0 128 50 0 5 1 53 0 128 52 0 5 1 55 0 128 54 0 5 1 57 0 128 56 0 5 1 59 0 128 58 0 5 1 61 0 128 60 0 5 1 63 0 128 62 0 5 1 65 0 128 64 0 5 1 67 0 128 66 0 5 1 69 0 128 68 0 5 1 71 0 128 70 0 5 1 73 0 128 72 0 5 1 75 0 128 74 0 5 1 77 0 128 76 0 5 1 79 0 128 78 0 5 1 81 0 128 80 0 5 1 83 0 128 82 0 5 1 85 0 128 84 0 5 1 87 0 128 86 0 5 1 89 0 128 88 0 5 1 91 0 128 90 0 5 1 93 0 128 92 0 5 1 95 0 128 94 0 5 1 97 0 128 96 0 5 1 99 0 128 98 0 5 1 101 0 128 100 0 5 1 103 0 128 102 0 5 1 105 0 128 104 0 5 1 107 0 128 106 0 5 1 109 0 128 108 0 5 1 111 0 128 110 0 5 1 113 0 128 112 0 5 1 115 0 128 114 0 5 1 117 0 128 116 0 5 1 119 0 128 118 0 5 1 121 0 128 120 0 5 1 123 0 128 122 0 5 1 125 0 128 124 0 5 1 127 0 128 126 0 5 1 129 0 128 128 0 5 1 131 0 128 130 0 5 1 133 0 128 132 0 5 1 135 0 128 134 0 5 1 137 0 128 136 0 5 1 139 0 128 138 0 5 1 141 0 128 140 0 5 1 143 0 128 142 0 5 1 1 0 128 144 0 5 1 1 0 128 145 0 5 1 3 0 128 146 0 5 1 5 0 128 147 0 5 1 7 0 128 148 0 5 1 9 0 128 149 0 5 1 11 0 128 150 0 5 1 152 0 128 151 0 5 1 154 0 128 153 0 5 1 156 0 128 155 0 5 51 158 0 128 157 0 50)
|
||||||
|
:constants (
|
||||||
|
"OP_CONST"
|
||||||
|
1
|
||||||
|
"OP_NIL"
|
||||||
|
2
|
||||||
|
"OP_TRUE"
|
||||||
|
3
|
||||||
|
"OP_FALSE"
|
||||||
|
4
|
||||||
|
"OP_POP"
|
||||||
|
5
|
||||||
|
"OP_DUP"
|
||||||
|
6
|
||||||
|
"OP_LOCAL_GET"
|
||||||
|
16
|
||||||
|
"OP_LOCAL_SET"
|
||||||
|
17
|
||||||
|
"OP_UPVALUE_GET"
|
||||||
|
18
|
||||||
|
"OP_UPVALUE_SET"
|
||||||
|
19
|
||||||
|
"OP_GLOBAL_GET"
|
||||||
|
20
|
||||||
|
"OP_GLOBAL_SET"
|
||||||
|
21
|
||||||
|
"OP_JUMP"
|
||||||
|
32
|
||||||
|
"OP_JUMP_IF_FALSE"
|
||||||
|
33
|
||||||
|
"OP_JUMP_IF_TRUE"
|
||||||
|
34
|
||||||
|
"OP_CALL"
|
||||||
|
48
|
||||||
|
"OP_TAIL_CALL"
|
||||||
|
49
|
||||||
|
"OP_RETURN"
|
||||||
|
50
|
||||||
|
"OP_CLOSURE"
|
||||||
|
51
|
||||||
|
"OP_CALL_PRIM"
|
||||||
|
52
|
||||||
|
"OP_APPLY"
|
||||||
|
53
|
||||||
|
"OP_LIST"
|
||||||
|
64
|
||||||
|
"OP_DICT"
|
||||||
|
65
|
||||||
|
"OP_APPEND_BANG"
|
||||||
|
66
|
||||||
|
"OP_ITER_INIT"
|
||||||
|
80
|
||||||
|
"OP_ITER_NEXT"
|
||||||
|
81
|
||||||
|
"OP_MAP_OPEN"
|
||||||
|
82
|
||||||
|
"OP_MAP_APPEND"
|
||||||
|
83
|
||||||
|
"OP_MAP_CLOSE"
|
||||||
|
84
|
||||||
|
"OP_FILTER_TEST"
|
||||||
|
85
|
||||||
|
"OP_HO_MAP"
|
||||||
|
88
|
||||||
|
"OP_HO_FILTER"
|
||||||
|
89
|
||||||
|
"OP_HO_REDUCE"
|
||||||
|
90
|
||||||
|
"OP_HO_FOR_EACH"
|
||||||
|
91
|
||||||
|
"OP_HO_SOME"
|
||||||
|
92
|
||||||
|
"OP_HO_EVERY"
|
||||||
|
93
|
||||||
|
"OP_SCOPE_PUSH"
|
||||||
|
96
|
||||||
|
"OP_SCOPE_POP"
|
||||||
|
97
|
||||||
|
"OP_PROVIDE_PUSH"
|
||||||
|
98
|
||||||
|
"OP_PROVIDE_POP"
|
||||||
|
99
|
||||||
|
"OP_CONTEXT"
|
||||||
|
100
|
||||||
|
"OP_EMIT"
|
||||||
|
101
|
||||||
|
"OP_EMITTED"
|
||||||
|
102
|
||||||
|
"OP_RESET"
|
||||||
|
112
|
||||||
|
"OP_SHIFT"
|
||||||
|
113
|
||||||
|
"OP_DEFINE"
|
||||||
|
128
|
||||||
|
"OP_DEFCOMP"
|
||||||
|
129
|
||||||
|
"OP_DEFISLAND"
|
||||||
|
130
|
||||||
|
"OP_DEFMACRO"
|
||||||
|
131
|
||||||
|
"OP_EXPAND_MACRO"
|
||||||
|
132
|
||||||
|
"OP_STR_CONCAT"
|
||||||
|
144
|
||||||
|
"OP_STR_JOIN"
|
||||||
|
145
|
||||||
|
"OP_SERIALIZE"
|
||||||
|
146
|
||||||
|
"OP_ADD"
|
||||||
|
160
|
||||||
|
"OP_SUB"
|
||||||
|
161
|
||||||
|
"OP_MUL"
|
||||||
|
162
|
||||||
|
"OP_DIV"
|
||||||
|
163
|
||||||
|
"OP_EQ"
|
||||||
|
164
|
||||||
|
"OP_LT"
|
||||||
|
165
|
||||||
|
"OP_GT"
|
||||||
|
166
|
||||||
|
"OP_NOT"
|
||||||
|
167
|
||||||
|
"OP_LEN"
|
||||||
|
168
|
||||||
|
"OP_FIRST"
|
||||||
|
169
|
||||||
|
"OP_REST"
|
||||||
|
170
|
||||||
|
"OP_NTH"
|
||||||
|
171
|
||||||
|
"OP_CONS"
|
||||||
|
172
|
||||||
|
"OP_NEG"
|
||||||
|
173
|
||||||
|
"OP_INC"
|
||||||
|
174
|
||||||
|
"OP_DEC"
|
||||||
|
175
|
||||||
|
"OP_ASER_TAG"
|
||||||
|
224
|
||||||
|
"OP_ASER_FRAG"
|
||||||
|
225
|
||||||
|
"BYTECODE_MAGIC"
|
||||||
|
"SXBC"
|
||||||
|
"BYTECODE_VERSION"
|
||||||
|
"CONST_NUMBER"
|
||||||
|
"CONST_STRING"
|
||||||
|
"CONST_BOOL"
|
||||||
|
"CONST_NIL"
|
||||||
|
"CONST_SYMBOL"
|
||||||
|
"CONST_KEYWORD"
|
||||||
|
"CONST_LIST"
|
||||||
|
7
|
||||||
|
"CONST_DICT"
|
||||||
|
8
|
||||||
|
"CONST_CODE"
|
||||||
|
9
|
||||||
|
"opcode-name"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 6 0 1 2 0 32 59 1 16 0 1 3 0 52 0 0 2 33 6 0 1 4 0 32 41 1 16 0 1 5 0 52 0 0 2 33 6 0 1 6 0 32 23 1 16 0 1 7 0 52 0 0 2 33 6 0 1 8 0 32 5 1 16 0 1 9 0 52 0 0 2 33 6 0 1 10 0 32 243 0 16 0 1 11 0 52 0 0 2 33 6 0 1 12 0 32 225 0 16 0 1 13 0 52 0 0 2 33 6 0 1 14 0 32 207 0 16 0 1 15 0 52 0 0 2 33 6 0 1 16 0 32 189 0 16 0 1 17 0 52 0 0 2 33 6 0 1 18 0 32 171 0 16 0 1 19 0 52 0 0 2 33 6 0 1 20 0 32 153 0 16 0 1 21 0 52 0 0 2 33 6 0 1 22 0 32 135 0 16 0 1 23 0 52 0 0 2 33 6 0 1 24 0 32 117 0 16 0 1 25 0 52 0 0 2 33 6 0 1 26 0 32 99 0 16 0 1 27 0 52 0 0 2 33 6 0 1 28 0 32 81 0 16 0 1 29 0 52 0 0 2 33 6 0 1 30 0 32 63 0 16 0 1 31 0 52 0 0 2 33 6 0 1 32 0 32 45 0 16 0 1 33 0 52 0 0 2 33 6 0 1 34 0 32 27 0 16 0 1 35 0 52 0 0 2 33 6 0 1 36 0 32 9 0 1 38 0 16 0 52 37 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
1
|
||||||
|
"CONST"
|
||||||
|
2
|
||||||
|
"NIL"
|
||||||
|
3
|
||||||
|
"TRUE"
|
||||||
|
4
|
||||||
|
"FALSE"
|
||||||
|
5
|
||||||
|
"POP"
|
||||||
|
6
|
||||||
|
"DUP"
|
||||||
|
16
|
||||||
|
"LOCAL_GET"
|
||||||
|
17
|
||||||
|
"LOCAL_SET"
|
||||||
|
20
|
||||||
|
"GLOBAL_GET"
|
||||||
|
21
|
||||||
|
"GLOBAL_SET"
|
||||||
|
32
|
||||||
|
"JUMP"
|
||||||
|
33
|
||||||
|
"JUMP_IF_FALSE"
|
||||||
|
48
|
||||||
|
"CALL"
|
||||||
|
49
|
||||||
|
"TAIL_CALL"
|
||||||
|
50
|
||||||
|
"RETURN"
|
||||||
|
52
|
||||||
|
"CALL_PRIM"
|
||||||
|
128
|
||||||
|
"DEFINE"
|
||||||
|
144
|
||||||
|
"STR_CONCAT"
|
||||||
|
"str"
|
||||||
|
"OP_")))))
|
||||||
948
shared/static/wasm/sx/compiler.sxbc
Normal file
948
shared/static/wasm/sx/compiler.sxbc
Normal file
@@ -0,0 +1,948 @@
|
|||||||
|
(sxbc 1 "9f12bfb447e36aeb"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 51 33 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 5 51 45 0 128 44 0 5 51 47 0 128 46 0 5 51 49 0 128 48 0 5 51 51 0 128 50 0 5 51 53 0 128 52 0 5 51 55 0 128 54 0 5 51 57 0 128 56 0 5 51 59 0 128 58 0 5 51 61 0 128 60 0 5 51 63 0 128 62 0 5 51 65 0 128 64 0 5 51 67 0 128 66 0 5 51 69 0 128 68 0 5 51 71 0 128 70 0 5 51 73 0 128 72 0 5 51 75 0 128 74 0 5 51 77 0 128 76 0 5 51 79 0 128 78 0 5 51 81 0 128 80 0 50)
|
||||||
|
:constants (
|
||||||
|
"make-pool"
|
||||||
|
(code
|
||||||
|
:bytecode (1 0 0 1 2 0 52 1 0 1 33 7 0 52 2 0 0 32 4 0 52 3 0 0 1 4 0 1 5 0 1 6 0 65 1 0 65 2 0 50)
|
||||||
|
:constants (
|
||||||
|
"entries"
|
||||||
|
"primitive?"
|
||||||
|
"mutable-list"
|
||||||
|
"list"
|
||||||
|
"index"
|
||||||
|
"_count"
|
||||||
|
0))
|
||||||
|
"pool-add"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 5 16 1 52 1 0 1 17 2 16 0 1 3 0 52 2 0 2 17 3 16 3 16 2 52 4 0 2 33 11 0 16 3 16 2 52 2 0 2 32 60 0 16 3 1 5 0 52 2 0 2 17 4 16 3 16 2 16 4 52 6 0 3 5 16 3 1 5 0 16 4 1 8 0 52 7 0 2 52 6 0 3 5 20 9 0 16 0 1 10 0 52 2 0 2 16 1 48 2 5 16 4 50)
|
||||||
|
:constants (
|
||||||
|
"Add a value to the constant pool, return its index. Deduplicates."
|
||||||
|
"serialize"
|
||||||
|
"get"
|
||||||
|
"index"
|
||||||
|
"has-key?"
|
||||||
|
"_count"
|
||||||
|
"dict-set!"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"append!"
|
||||||
|
"entries"))
|
||||||
|
"make-scope"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 1 1 0 1 2 0 52 3 0 0 1 4 0 52 3 0 0 1 5 0 16 0 1 6 0 4 65 5 0 50)
|
||||||
|
:constants (
|
||||||
|
"next-slot"
|
||||||
|
0
|
||||||
|
"upvalues"
|
||||||
|
"list"
|
||||||
|
"locals"
|
||||||
|
"parent"
|
||||||
|
"is-function"))
|
||||||
|
"scope-define-local"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 5 51 3 0 1 1 16 0 1 5 0 52 4 0 2 52 2 0 2 52 1 0 1 17 2 16 2 33 12 0 16 2 1 6 0 52 4 0 2 32 64 0 16 0 1 7 0 52 4 0 2 17 3 20 8 0 16 0 1 5 0 52 4 0 2 1 9 0 4 1 6 0 16 3 1 10 0 16 1 65 3 0 48 2 5 16 0 1 7 0 16 3 1 13 0 52 12 0 2 52 11 0 3 5 16 3 50)
|
||||||
|
:constants (
|
||||||
|
"Add a local variable, return its slot index.
|
||||||
|
Idempotent: if name already has a slot, return it."
|
||||||
|
"first"
|
||||||
|
"filter"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 18 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"name"))
|
||||||
|
"get"
|
||||||
|
"locals"
|
||||||
|
"slot"
|
||||||
|
"next-slot"
|
||||||
|
"append!"
|
||||||
|
"mutable"
|
||||||
|
"name"
|
||||||
|
"dict-set!"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"scope-resolve"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 5 16 0 52 1 0 1 33 17 0 1 2 0 16 1 1 3 0 1 4 0 65 2 0 32 61 1 16 0 1 6 0 52 5 0 2 17 2 51 8 0 1 1 16 2 52 7 0 2 17 3 16 3 33 41 0 51 8 0 1 1 16 2 52 10 0 2 52 9 0 1 17 4 1 2 0 16 4 1 11 0 52 5 0 2 1 3 0 1 12 0 65 2 0 32 247 0 16 0 1 13 0 52 5 0 2 17 4 51 8 0 1 1 16 4 52 7 0 2 17 5 16 5 33 41 0 51 8 0 1 1 16 4 52 10 0 2 52 9 0 1 17 6 1 2 0 16 6 1 14 0 52 5 0 2 1 3 0 1 15 0 65 2 0 32 177 0 16 0 1 16 0 52 5 0 2 17 6 16 6 52 1 0 1 33 17 0 1 2 0 16 1 1 3 0 1 4 0 65 2 0 32 140 0 20 17 0 16 6 16 1 48 2 17 7 16 7 1 3 0 52 5 0 2 1 4 0 52 18 0 2 33 5 0 16 7 32 105 0 16 0 1 19 0 52 5 0 2 33 91 0 16 0 1 13 0 52 5 0 2 52 20 0 1 17 8 20 21 0 16 0 1 13 0 52 5 0 2 1 2 0 16 7 1 2 0 52 5 0 2 1 22 0 16 7 1 3 0 52 5 0 2 1 12 0 52 18 0 2 1 14 0 16 8 1 23 0 16 1 65 4 0 48 2 5 1 2 0 16 8 1 3 0 1 15 0 65 2 0 32 2 0 16 7 50)
|
||||||
|
:constants (
|
||||||
|
"Resolve a variable name. Returns {:type \"local\"|\"upvalue\"|\"global\", :index N}.
|
||||||
|
Upvalue captures only happen at function boundaries (is-function=true).
|
||||||
|
Let scopes share the enclosing function's frame — their locals are
|
||||||
|
accessed directly without upvalue indirection."
|
||||||
|
"nil?"
|
||||||
|
"index"
|
||||||
|
"type"
|
||||||
|
"global"
|
||||||
|
"get"
|
||||||
|
"locals"
|
||||||
|
"some"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 18 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"name"))
|
||||||
|
"first"
|
||||||
|
"filter"
|
||||||
|
"slot"
|
||||||
|
"local"
|
||||||
|
"upvalues"
|
||||||
|
"uv-index"
|
||||||
|
"upvalue"
|
||||||
|
"parent"
|
||||||
|
"scope-resolve"
|
||||||
|
"="
|
||||||
|
"is-function"
|
||||||
|
"len"
|
||||||
|
"append!"
|
||||||
|
"is-local"
|
||||||
|
"name"))
|
||||||
|
"make-emitter"
|
||||||
|
(code
|
||||||
|
:bytecode (1 0 0 20 1 0 48 0 1 2 0 1 4 0 52 3 0 1 33 7 0 52 4 0 0 32 4 0 52 5 0 0 65 2 0 50)
|
||||||
|
:constants (
|
||||||
|
"pool"
|
||||||
|
"make-pool"
|
||||||
|
"bytecode"
|
||||||
|
"primitive?"
|
||||||
|
"mutable-list"
|
||||||
|
"list"))
|
||||||
|
"emit-byte"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 2 0 52 1 0 2 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"
|
||||||
|
"get"
|
||||||
|
"bytecode"))
|
||||||
|
"emit-u16"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 16 1 1 2 0 52 1 0 2 48 2 5 20 0 0 16 0 16 1 1 2 0 52 4 0 2 52 3 0 1 1 2 0 52 1 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"emit-byte"
|
||||||
|
"mod"
|
||||||
|
256
|
||||||
|
"floor"
|
||||||
|
"/"))
|
||||||
|
"emit-i16"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 1 1 0 52 0 0 2 33 12 0 16 1 1 3 0 52 2 0 2 32 2 0 16 1 17 2 20 4 0 16 0 16 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
0
|
||||||
|
"+"
|
||||||
|
65536
|
||||||
|
"emit-u16"))
|
||||||
|
"emit-op"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"emit-byte"))
|
||||||
|
"emit-const"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 2 0 52 1 0 2 16 1 48 2 17 2 20 3 0 16 0 1 4 0 48 2 5 20 5 0 16 0 16 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"pool-add"
|
||||||
|
"get"
|
||||||
|
"pool"
|
||||||
|
"emit-op"
|
||||||
|
1
|
||||||
|
"emit-u16"))
|
||||||
|
"current-offset"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"len"
|
||||||
|
"get"
|
||||||
|
"bytecode"))
|
||||||
|
"patch-i16"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 5 16 2 1 2 0 52 1 0 2 33 12 0 16 2 1 4 0 52 3 0 2 32 2 0 16 2 17 3 16 0 1 6 0 52 5 0 2 17 4 16 4 16 1 16 3 1 9 0 52 8 0 2 52 7 0 3 5 16 4 16 1 1 10 0 52 3 0 2 16 3 1 9 0 52 12 0 2 52 11 0 1 1 9 0 52 8 0 2 52 7 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"Patch a previously emitted i16 at the given bytecode offset."
|
||||||
|
"<"
|
||||||
|
0
|
||||||
|
"+"
|
||||||
|
65536
|
||||||
|
"get"
|
||||||
|
"bytecode"
|
||||||
|
"set-nth!"
|
||||||
|
"mod"
|
||||||
|
256
|
||||||
|
1
|
||||||
|
"floor"
|
||||||
|
"/"))
|
||||||
|
"compile-expr"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (1 0 0 5 16 1 52 1 0 1 33 13 0 20 2 0 16 0 1 3 0 49 2 32 12 1 16 1 52 5 0 1 1 6 0 52 4 0 2 33 12 0 20 7 0 16 0 16 1 49 2 32 240 0 16 1 52 5 0 1 1 8 0 52 4 0 2 33 12 0 20 7 0 16 0 16 1 49 2 32 212 0 16 1 52 5 0 1 1 9 0 52 4 0 2 33 24 0 20 2 0 16 0 16 1 33 6 0 1 10 0 32 3 0 1 11 0 49 2 32 172 0 16 1 52 5 0 1 1 12 0 52 4 0 2 33 17 0 20 7 0 16 0 20 13 0 16 1 48 1 49 2 32 139 0 16 1 52 5 0 1 1 14 0 52 4 0 2 33 19 0 20 15 0 16 0 20 16 0 16 1 48 1 16 2 49 3 32 104 0 16 1 52 5 0 1 1 17 0 52 4 0 2 33 49 0 16 1 52 18 0 1 33 24 0 20 2 0 16 0 1 19 0 48 2 5 20 20 0 16 0 1 21 0 49 2 32 13 0 20 22 0 16 0 16 1 16 2 16 3 49 4 32 39 0 16 1 52 5 0 1 1 23 0 52 4 0 2 33 14 0 20 24 0 16 0 16 1 16 2 49 3 32 9 0 20 7 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"Compile an expression. tail? indicates tail position for TCO."
|
||||||
|
"nil?"
|
||||||
|
"emit-op"
|
||||||
|
2
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"number"
|
||||||
|
"emit-const"
|
||||||
|
"string"
|
||||||
|
"boolean"
|
||||||
|
3
|
||||||
|
4
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"
|
||||||
|
"symbol"
|
||||||
|
"compile-symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"list"
|
||||||
|
"empty?"
|
||||||
|
64
|
||||||
|
"emit-u16"
|
||||||
|
0
|
||||||
|
"compile-list"
|
||||||
|
"dict"
|
||||||
|
"compile-dict"))
|
||||||
|
"compile-symbol"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 2 16 1 48 2 17 3 16 3 1 3 0 52 2 0 2 1 4 0 52 1 0 2 33 30 0 20 5 0 16 0 1 6 0 48 2 5 20 7 0 16 0 16 3 1 8 0 52 2 0 2 49 2 32 87 0 16 3 1 3 0 52 2 0 2 1 9 0 52 1 0 2 33 30 0 20 5 0 16 0 1 10 0 48 2 5 20 7 0 16 0 16 3 1 8 0 52 2 0 2 49 2 32 38 0 20 11 0 16 0 1 12 0 52 2 0 2 16 1 48 2 17 4 20 5 0 16 0 1 13 0 48 2 5 20 14 0 16 0 16 4 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"scope-resolve"
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"type"
|
||||||
|
"local"
|
||||||
|
"emit-op"
|
||||||
|
16
|
||||||
|
"emit-byte"
|
||||||
|
"index"
|
||||||
|
"upvalue"
|
||||||
|
18
|
||||||
|
"pool-add"
|
||||||
|
"pool"
|
||||||
|
20
|
||||||
|
"emit-u16"))
|
||||||
|
"compile-dict"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 0 0 1 17 3 16 3 52 1 0 1 17 4 51 3 0 1 0 1 1 1 2 16 3 52 2 0 2 5 20 4 0 16 0 1 5 0 48 2 5 20 6 0 16 0 16 4 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"keys"
|
||||||
|
"len"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (20 0 0 18 0 16 0 48 2 5 20 1 0 18 0 18 1 16 0 52 2 0 2 18 2 4 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"emit-const"
|
||||||
|
"compile-expr"
|
||||||
|
"get"))
|
||||||
|
"emit-op"
|
||||||
|
65
|
||||||
|
"emit-u16"))
|
||||||
|
"compile-list"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 52 0 0 1 17 4 16 1 52 1 0 1 17 5 16 4 52 4 0 1 1 5 0 52 3 0 2 52 2 0 1 33 18 0 20 6 0 16 0 16 4 16 5 16 2 16 3 49 5 32 54 3 20 7 0 16 4 48 1 17 6 16 6 1 8 0 52 3 0 2 33 16 0 20 9 0 16 0 16 5 16 2 16 3 49 4 32 17 3 16 6 1 10 0 52 3 0 2 33 16 0 20 11 0 16 0 16 5 16 2 16 3 49 4 32 245 2 16 6 1 12 0 52 3 0 2 33 16 0 20 13 0 16 0 16 5 16 2 16 3 49 4 32 217 2 16 6 1 14 0 52 3 0 2 33 16 0 20 15 0 16 0 16 5 16 2 16 3 49 4 32 189 2 16 6 1 16 0 52 3 0 2 33 16 0 20 17 0 16 0 16 5 16 2 16 3 49 4 32 161 2 16 6 1 18 0 52 3 0 2 33 16 0 20 17 0 16 0 16 5 16 2 16 3 49 4 32 133 2 16 6 1 19 0 52 3 0 2 33 16 0 20 20 0 16 0 16 5 16 2 16 3 49 4 32 105 2 16 6 1 21 0 52 3 0 2 33 16 0 20 20 0 16 0 16 5 16 2 16 3 49 4 32 77 2 16 6 1 22 0 52 3 0 2 33 14 0 20 23 0 16 0 16 5 16 2 49 3 32 51 2 16 6 1 24 0 52 3 0 2 33 14 0 20 23 0 16 0 16 5 16 2 49 3 32 25 2 16 6 1 25 0 52 3 0 2 33 14 0 20 26 0 16 0 16 5 16 2 49 3 32 255 1 16 6 1 27 0 52 3 0 2 33 14 0 20 28 0 16 0 16 5 16 2 49 3 32 229 1 16 6 1 29 0 52 3 0 2 33 12 0 20 30 0 16 0 16 5 49 2 32 205 1 16 6 1 31 0 52 3 0 2 33 16 0 20 32 0 16 0 16 5 16 2 16 3 49 4 32 177 1 16 6 1 33 0 52 3 0 2 33 16 0 20 34 0 16 0 16 5 16 2 16 3 49 4 32 149 1 16 6 1 35 0 52 3 0 2 33 16 0 20 36 0 16 0 16 5 16 2 16 3 49 4 32 121 1 16 6 1 37 0 52 3 0 2 33 14 0 20 38 0 16 0 16 5 16 2 49 3 32 95 1 16 6 1 39 0 52 3 0 2 33 14 0 20 38 0 16 0 16 5 16 2 49 3 32 69 1 16 6 1 40 0 52 3 0 2 33 14 0 20 41 0 16 0 16 5 16 2 49 3 32 43 1 16 6 1 42 0 52 3 0 2 33 13 0 20 43 0 16 0 1 44 0 49 2 32 18 1 16 6 1 45 0 52 3 0 2 33 13 0 20 43 0 16 0 1 44 0 49 2 32 249 0 16 6 1 46 0 52 3 0 2 33 13 0 20 43 0 16 0 1 44 0 49 2 32 224 0 16 6 1 47 0 52 3 0 2 33 13 0 20 43 0 16 0 1 44 0 49 2 32 199 0 16 6 1 48 0 52 3 0 2 33 13 0 20 43 0 16 0 1 44 0 49 2 32 174 0 16 6 1 49 0 52 3 0 2 33 13 0 20 43 0 16 0 1 44 0 49 2 32 149 0 16 6 1 50 0 52 3 0 2 33 13 0 20 43 0 16 0 1 44 0 49 2 32 124 0 16 6 1 51 0 52 3 0 2 33 13 0 20 43 0 16 0 1 44 0 49 2 32 99 0 16 6 1 39 0 52 3 0 2 33 14 0 20 38 0 16 0 16 5 16 2 49 3 32 73 0 16 6 1 52 0 52 3 0 2 33 18 0 20 53 0 16 0 16 5 52 0 0 1 16 2 49 3 32 43 0 16 6 1 54 0 52 3 0 2 33 16 0 20 55 0 16 0 16 5 16 2 16 3 49 4 32 15 0 20 6 0 16 0 16 4 16 5 16 2 16 3 49 5 50)
|
||||||
|
:constants (
|
||||||
|
"first"
|
||||||
|
"rest"
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"compile-call"
|
||||||
|
"symbol-name"
|
||||||
|
"if"
|
||||||
|
"compile-if"
|
||||||
|
"when"
|
||||||
|
"compile-when"
|
||||||
|
"and"
|
||||||
|
"compile-and"
|
||||||
|
"or"
|
||||||
|
"compile-or"
|
||||||
|
"let"
|
||||||
|
"compile-let"
|
||||||
|
"let*"
|
||||||
|
"begin"
|
||||||
|
"compile-begin"
|
||||||
|
"do"
|
||||||
|
"lambda"
|
||||||
|
"compile-lambda"
|
||||||
|
"fn"
|
||||||
|
"define"
|
||||||
|
"compile-define"
|
||||||
|
"set!"
|
||||||
|
"compile-set"
|
||||||
|
"quote"
|
||||||
|
"compile-quote"
|
||||||
|
"cond"
|
||||||
|
"compile-cond"
|
||||||
|
"case"
|
||||||
|
"compile-case"
|
||||||
|
"->"
|
||||||
|
"compile-thread"
|
||||||
|
"defcomp"
|
||||||
|
"compile-defcomp"
|
||||||
|
"defisland"
|
||||||
|
"defmacro"
|
||||||
|
"compile-defmacro"
|
||||||
|
"defstyle"
|
||||||
|
"emit-op"
|
||||||
|
2
|
||||||
|
"defhandler"
|
||||||
|
"defpage"
|
||||||
|
"defquery"
|
||||||
|
"defaction"
|
||||||
|
"defrelation"
|
||||||
|
"deftype"
|
||||||
|
"defeffect"
|
||||||
|
"quasiquote"
|
||||||
|
"compile-quasiquote"
|
||||||
|
"letrec"
|
||||||
|
"compile-letrec"))
|
||||||
|
"compile-if"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 52 0 0 1 17 4 16 1 1 2 0 52 1 0 2 17 5 16 1 52 4 0 1 1 5 0 52 3 0 2 33 12 0 16 1 1 5 0 52 1 0 2 32 1 0 2 17 6 20 6 0 16 0 16 4 16 2 4 48 4 5 20 7 0 16 0 1 8 0 48 2 5 20 9 0 16 0 48 1 17 7 20 10 0 16 0 1 11 0 48 2 5 20 6 0 16 0 16 5 16 2 16 3 48 4 5 20 7 0 16 0 1 12 0 48 2 5 20 9 0 16 0 48 1 17 8 20 10 0 16 0 1 11 0 48 2 5 20 13 0 16 0 16 7 20 9 0 16 0 48 1 16 7 1 5 0 52 15 0 2 52 14 0 2 48 3 5 16 6 52 16 0 1 33 13 0 20 7 0 16 0 1 5 0 48 2 32 13 0 20 6 0 16 0 16 6 16 2 16 3 48 4 5 20 13 0 16 0 16 8 20 9 0 16 0 48 1 16 8 1 5 0 52 15 0 2 52 14 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"compile-expr"
|
||||||
|
"emit-op"
|
||||||
|
33
|
||||||
|
"current-offset"
|
||||||
|
"emit-i16"
|
||||||
|
0
|
||||||
|
32
|
||||||
|
"patch-i16"
|
||||||
|
"-"
|
||||||
|
"+"
|
||||||
|
"nil?"))
|
||||||
|
"compile-when"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 52 0 0 1 17 4 16 1 52 1 0 1 17 5 20 2 0 16 0 16 4 16 2 4 48 4 5 20 3 0 16 0 1 4 0 48 2 5 20 5 0 16 0 48 1 17 6 20 6 0 16 0 1 7 0 48 2 5 20 8 0 16 0 16 5 16 2 16 3 48 4 5 20 3 0 16 0 1 9 0 48 2 5 20 5 0 16 0 48 1 17 7 20 6 0 16 0 1 7 0 48 2 5 20 10 0 16 0 16 6 20 5 0 16 0 48 1 16 6 1 13 0 52 12 0 2 52 11 0 2 48 3 5 20 3 0 16 0 1 13 0 48 2 5 20 10 0 16 0 16 7 20 5 0 16 0 48 1 16 7 1 13 0 52 12 0 2 52 11 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"first"
|
||||||
|
"rest"
|
||||||
|
"compile-expr"
|
||||||
|
"emit-op"
|
||||||
|
33
|
||||||
|
"current-offset"
|
||||||
|
"emit-i16"
|
||||||
|
0
|
||||||
|
"compile-begin"
|
||||||
|
32
|
||||||
|
"patch-i16"
|
||||||
|
"-"
|
||||||
|
"+"
|
||||||
|
2))
|
||||||
|
"compile-and"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 52 0 0 1 33 13 0 20 1 0 16 0 1 2 0 49 2 32 153 0 16 1 52 4 0 1 1 5 0 52 3 0 2 33 20 0 20 6 0 16 0 16 1 52 7 0 1 16 2 16 3 49 4 32 117 0 20 6 0 16 0 16 1 52 7 0 1 16 2 4 48 4 5 20 1 0 16 0 1 8 0 48 2 5 20 1 0 16 0 1 9 0 48 2 5 20 10 0 16 0 48 1 17 4 20 11 0 16 0 1 12 0 48 2 5 20 1 0 16 0 1 13 0 48 2 5 20 14 0 16 0 16 1 52 15 0 1 16 2 16 3 48 4 5 20 16 0 16 0 16 4 20 10 0 16 0 48 1 16 4 1 19 0 52 18 0 2 52 17 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"emit-op"
|
||||||
|
3
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"compile-expr"
|
||||||
|
"first"
|
||||||
|
6
|
||||||
|
33
|
||||||
|
"current-offset"
|
||||||
|
"emit-i16"
|
||||||
|
0
|
||||||
|
5
|
||||||
|
"compile-and"
|
||||||
|
"rest"
|
||||||
|
"patch-i16"
|
||||||
|
"-"
|
||||||
|
"+"
|
||||||
|
2))
|
||||||
|
"compile-or"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 52 0 0 1 33 13 0 20 1 0 16 0 1 2 0 49 2 32 153 0 16 1 52 4 0 1 1 5 0 52 3 0 2 33 20 0 20 6 0 16 0 16 1 52 7 0 1 16 2 16 3 49 4 32 117 0 20 6 0 16 0 16 1 52 7 0 1 16 2 4 48 4 5 20 1 0 16 0 1 8 0 48 2 5 20 1 0 16 0 1 9 0 48 2 5 20 10 0 16 0 48 1 17 4 20 11 0 16 0 1 12 0 48 2 5 20 1 0 16 0 1 13 0 48 2 5 20 14 0 16 0 16 1 52 15 0 1 16 2 16 3 48 4 5 20 16 0 16 0 16 4 20 10 0 16 0 48 1 16 4 1 19 0 52 18 0 2 52 17 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"emit-op"
|
||||||
|
4
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"compile-expr"
|
||||||
|
"first"
|
||||||
|
6
|
||||||
|
34
|
||||||
|
"current-offset"
|
||||||
|
"emit-i16"
|
||||||
|
0
|
||||||
|
5
|
||||||
|
"compile-or"
|
||||||
|
"rest"
|
||||||
|
"patch-i16"
|
||||||
|
"-"
|
||||||
|
"+"
|
||||||
|
2))
|
||||||
|
"compile-begin"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 52 1 0 1 52 0 0 1 6 33 18 0 5 16 2 1 4 0 52 3 0 2 52 2 0 1 52 0 0 1 33 14 0 51 6 0 1 2 16 1 52 5 0 2 32 1 0 2 5 16 1 52 1 0 1 33 13 0 20 7 0 16 0 1 8 0 49 2 32 81 0 16 1 52 10 0 1 1 11 0 52 9 0 2 33 20 0 20 12 0 16 0 16 1 52 13 0 1 16 2 16 3 49 4 32 45 0 20 12 0 16 0 16 1 52 13 0 1 16 2 4 48 4 5 20 7 0 16 0 1 14 0 48 2 5 20 15 0 16 0 16 1 52 16 0 1 16 2 16 3 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"nil?"
|
||||||
|
"get"
|
||||||
|
"parent"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 6 33 59 0 5 16 0 52 4 0 1 1 5 0 52 3 0 2 6 33 41 0 5 16 0 52 6 0 1 52 1 0 1 1 7 0 52 0 0 2 6 33 19 0 5 20 8 0 16 0 52 6 0 1 48 1 1 9 0 52 0 0 2 33 53 0 16 0 1 11 0 52 10 0 2 17 1 16 1 52 1 0 1 1 7 0 52 0 0 2 33 10 0 20 8 0 16 1 48 1 32 2 0 16 1 17 2 20 12 0 18 0 16 2 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"list"
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"define"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"scope-define-local"))
|
||||||
|
"emit-op"
|
||||||
|
2
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"compile-expr"
|
||||||
|
"first"
|
||||||
|
5
|
||||||
|
"compile-begin"
|
||||||
|
"rest"))
|
||||||
|
"compile-let"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 52 2 0 1 52 1 0 1 1 3 0 52 0 0 2 33 136 0 20 4 0 16 1 52 2 0 1 48 1 17 4 16 1 1 6 0 52 5 0 2 17 5 16 1 1 8 0 52 7 0 2 17 6 52 9 0 0 17 7 52 9 0 0 17 8 51 11 0 1 7 1 8 16 5 52 10 0 2 5 1 14 0 52 13 0 1 16 7 52 9 0 2 16 6 52 12 0 2 17 9 16 4 52 13 0 1 16 9 52 9 0 2 52 9 0 1 17 10 16 4 52 13 0 1 16 8 52 15 0 2 17 11 20 16 0 16 0 16 10 16 11 52 9 0 2 16 2 16 3 49 4 32 71 0 16 1 52 2 0 1 17 4 16 1 52 17 0 1 17 5 20 18 0 16 2 48 1 17 6 16 6 1 20 0 16 2 1 20 0 52 21 0 2 52 19 0 3 5 51 22 0 1 6 1 0 16 4 52 10 0 2 5 20 23 0 16 0 16 5 16 6 16 3 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"slice"
|
||||||
|
2
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 52 3 0 1 52 2 0 1 1 4 0 52 1 0 2 33 9 0 16 0 52 3 0 1 32 10 0 16 0 52 3 0 1 52 5 0 1 48 2 5 20 0 0 18 1 16 0 1 7 0 52 6 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"make-symbol"
|
||||||
|
"nth"
|
||||||
|
1))
|
||||||
|
"concat"
|
||||||
|
"make-symbol"
|
||||||
|
"fn"
|
||||||
|
"cons"
|
||||||
|
"compile-letrec"
|
||||||
|
"rest"
|
||||||
|
"make-scope"
|
||||||
|
"dict-set!"
|
||||||
|
"next-slot"
|
||||||
|
"get"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (16 0 52 2 0 1 52 1 0 1 1 3 0 52 0 0 2 33 14 0 20 4 0 16 0 52 2 0 1 48 1 32 6 0 16 0 52 2 0 1 17 1 16 0 1 6 0 52 5 0 2 17 2 20 7 0 18 0 16 1 48 2 17 3 20 8 0 18 1 16 2 18 0 4 48 4 5 20 9 0 18 1 1 10 0 48 2 5 20 11 0 18 1 16 3 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"scope-define-local"
|
||||||
|
"compile-expr"
|
||||||
|
"emit-op"
|
||||||
|
17
|
||||||
|
"emit-byte"))
|
||||||
|
"compile-begin"))
|
||||||
|
"compile-letrec"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (1 0 0 5 16 1 52 1 0 1 17 4 16 1 52 2 0 1 17 5 20 3 0 16 2 48 1 17 6 16 6 1 5 0 16 2 1 5 0 52 6 0 2 52 4 0 3 5 51 8 0 1 6 1 0 16 4 52 7 0 2 17 7 51 10 0 1 0 1 6 51 11 0 1 4 1 7 1 13 0 16 4 52 14 0 1 52 12 0 2 52 7 0 2 52 9 0 2 5 20 15 0 16 0 16 5 16 6 16 3 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"Compile letrec: all names visible during value compilation.
|
||||||
|
1. Define all local slots (initialized to nil).
|
||||||
|
2. Compile each value and assign — names are already in scope
|
||||||
|
so mutually recursive functions can reference each other."
|
||||||
|
"first"
|
||||||
|
"rest"
|
||||||
|
"make-scope"
|
||||||
|
"dict-set!"
|
||||||
|
"next-slot"
|
||||||
|
"get"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (16 0 52 2 0 1 52 1 0 1 1 3 0 52 0 0 2 33 14 0 20 4 0 16 0 52 2 0 1 48 1 32 6 0 16 0 52 2 0 1 17 1 20 5 0 18 0 16 1 48 2 17 2 20 6 0 18 1 1 7 0 48 2 5 20 6 0 18 1 1 8 0 48 2 5 20 9 0 18 1 16 2 48 2 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"scope-define-local"
|
||||||
|
"emit-op"
|
||||||
|
2
|
||||||
|
17
|
||||||
|
"emit-byte"))
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (16 0 52 0 0 1 17 1 16 0 1 2 0 52 1 0 2 17 2 20 3 0 18 0 16 1 1 2 0 52 1 0 2 18 1 4 48 4 5 20 4 0 18 0 1 5 0 48 2 5 20 6 0 18 0 16 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"compile-expr"
|
||||||
|
"emit-op"
|
||||||
|
17
|
||||||
|
"emit-byte"))
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 16 0 52 1 0 2 18 1 16 0 52 1 0 2 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"nth"))
|
||||||
|
"range"
|
||||||
|
0
|
||||||
|
"len"
|
||||||
|
"compile-begin"))
|
||||||
|
"compile-lambda"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 0 0 1 17 3 16 1 52 1 0 1 17 4 20 2 0 16 2 48 1 17 5 20 3 0 48 0 17 6 16 5 1 5 0 3 52 4 0 3 5 51 7 0 1 5 16 3 52 6 0 2 5 20 8 0 16 6 16 4 16 5 3 48 4 5 20 9 0 16 6 1 10 0 48 2 5 16 5 1 12 0 52 11 0 2 17 7 1 13 0 16 7 52 14 0 1 1 15 0 16 5 1 16 0 52 11 0 2 52 14 0 1 1 17 0 16 6 1 18 0 52 11 0 2 1 19 0 52 11 0 2 1 20 0 16 6 1 20 0 52 11 0 2 65 4 0 17 8 20 21 0 16 0 1 18 0 52 11 0 2 16 8 48 2 17 9 20 9 0 16 0 1 22 0 48 2 5 20 23 0 16 0 16 9 48 2 5 51 24 0 1 0 16 7 52 6 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"first"
|
||||||
|
"rest"
|
||||||
|
"make-scope"
|
||||||
|
"make-emitter"
|
||||||
|
"dict-set!"
|
||||||
|
"is-function"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 33 10 0 20 3 0 16 0 48 1 32 62 0 16 0 52 4 0 1 6 33 33 0 5 16 0 52 6 0 1 52 5 0 1 6 33 18 0 5 16 0 52 7 0 1 52 1 0 1 1 2 0 52 0 0 2 33 14 0 20 3 0 16 0 52 7 0 1 48 1 32 2 0 16 0 17 1 16 1 1 8 0 52 0 0 2 52 5 0 1 6 33 14 0 5 16 1 1 9 0 52 0 0 2 52 5 0 1 33 12 0 20 10 0 18 0 16 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"list?"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
"&key"
|
||||||
|
"&rest"
|
||||||
|
"scope-define-local"))
|
||||||
|
"compile-begin"
|
||||||
|
"emit-op"
|
||||||
|
50
|
||||||
|
"get"
|
||||||
|
"upvalues"
|
||||||
|
"upvalue-count"
|
||||||
|
"len"
|
||||||
|
"arity"
|
||||||
|
"locals"
|
||||||
|
"constants"
|
||||||
|
"pool"
|
||||||
|
"entries"
|
||||||
|
"bytecode"
|
||||||
|
"pool-add"
|
||||||
|
51
|
||||||
|
"emit-u16"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 1 2 0 52 1 0 2 33 6 0 1 3 0 32 3 0 1 4 0 48 2 5 20 0 0 18 0 16 0 1 5 0 52 1 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"emit-byte"
|
||||||
|
"get"
|
||||||
|
"is-local"
|
||||||
|
1
|
||||||
|
0
|
||||||
|
"index"))))
|
||||||
|
"compile-define"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 0 0 1 17 3 16 3 52 2 0 1 1 3 0 52 1 0 2 33 10 0 20 4 0 16 3 48 1 32 2 0 16 3 17 4 16 1 52 5 0 1 17 6 16 6 52 7 0 1 52 6 0 1 6 33 18 0 5 16 6 52 0 0 1 52 2 0 1 1 8 0 52 1 0 2 33 16 0 51 9 0 1 7 17 7 16 7 16 6 48 1 32 6 0 16 6 52 0 0 1 17 5 16 2 1 12 0 52 11 0 2 52 10 0 1 52 6 0 1 33 47 0 20 13 0 16 2 16 4 48 2 17 6 20 14 0 16 0 16 5 16 2 4 48 4 5 20 15 0 16 0 1 16 0 48 2 5 20 17 0 16 0 16 6 49 2 32 51 0 20 18 0 16 0 1 19 0 52 11 0 2 16 4 48 2 17 6 20 14 0 16 0 16 5 16 2 4 48 4 5 20 15 0 16 0 1 20 0 48 2 5 20 21 0 16 0 16 6 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"first"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"rest"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"keyword"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 4 0 2 32 43 0 16 0 52 3 0 1 52 2 0 1 1 4 0 52 1 0 2 33 17 0 18 0 16 0 52 5 0 1 52 5 0 1 49 1 32 6 0 16 0 52 3 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"first"
|
||||||
|
"keyword"
|
||||||
|
"rest"))
|
||||||
|
"nil?"
|
||||||
|
"get"
|
||||||
|
"parent"
|
||||||
|
"scope-define-local"
|
||||||
|
"compile-expr"
|
||||||
|
"emit-op"
|
||||||
|
17
|
||||||
|
"emit-byte"
|
||||||
|
"pool-add"
|
||||||
|
"pool"
|
||||||
|
128
|
||||||
|
"emit-u16"))
|
||||||
|
"compile-set"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 2 0 1 52 1 0 1 1 3 0 52 0 0 2 33 14 0 20 4 0 16 1 52 2 0 1 48 1 32 6 0 16 1 52 2 0 1 17 3 16 1 1 6 0 52 5 0 2 17 4 20 7 0 16 2 16 3 48 2 17 5 20 8 0 16 0 16 4 16 2 4 48 4 5 16 5 1 10 0 52 9 0 2 1 11 0 52 0 0 2 33 30 0 20 12 0 16 0 1 13 0 48 2 5 20 14 0 16 0 16 5 1 15 0 52 9 0 2 49 2 32 87 0 16 5 1 10 0 52 9 0 2 1 16 0 52 0 0 2 33 30 0 20 12 0 16 0 1 17 0 48 2 5 20 14 0 16 0 16 5 1 15 0 52 9 0 2 49 2 32 38 0 20 18 0 16 0 1 19 0 52 9 0 2 16 3 48 2 17 6 20 12 0 16 0 1 20 0 48 2 5 20 21 0 16 0 16 6 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"scope-resolve"
|
||||||
|
"compile-expr"
|
||||||
|
"get"
|
||||||
|
"type"
|
||||||
|
"local"
|
||||||
|
"emit-op"
|
||||||
|
17
|
||||||
|
"emit-byte"
|
||||||
|
"index"
|
||||||
|
"upvalue"
|
||||||
|
19
|
||||||
|
"pool-add"
|
||||||
|
"pool"
|
||||||
|
21
|
||||||
|
"emit-u16"))
|
||||||
|
"compile-quote"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 52 0 0 1 33 13 0 20 1 0 16 0 1 2 0 49 2 32 13 0 20 3 0 16 0 16 1 52 4 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"emit-op"
|
||||||
|
2
|
||||||
|
"emit-const"
|
||||||
|
"first"))
|
||||||
|
"compile-cond"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (1 0 0 5 16 1 52 2 0 1 1 3 0 52 1 0 2 33 13 0 20 4 0 16 0 1 3 0 49 2 32 22 1 16 1 52 5 0 1 17 4 16 1 1 7 0 52 6 0 2 17 5 16 1 52 2 0 1 1 3 0 52 8 0 2 33 12 0 16 1 1 3 0 52 9 0 2 32 4 0 52 10 0 0 17 6 16 4 52 12 0 1 1 13 0 52 11 0 2 6 33 15 0 5 20 14 0 16 4 48 1 1 15 0 52 11 0 2 6 34 8 0 5 16 4 3 52 11 0 2 33 16 0 20 16 0 16 0 16 5 16 2 16 3 49 4 32 162 0 20 16 0 16 0 16 4 16 2 4 48 4 5 20 4 0 16 0 1 17 0 48 2 5 20 18 0 16 0 48 1 17 7 20 19 0 16 0 1 20 0 48 2 5 20 16 0 16 0 16 5 16 2 16 3 48 4 5 20 4 0 16 0 1 21 0 48 2 5 20 18 0 16 0 48 1 17 8 20 19 0 16 0 1 20 0 48 2 5 20 22 0 16 0 16 7 20 18 0 16 0 48 1 16 7 1 3 0 52 24 0 2 52 23 0 2 48 3 5 20 25 0 16 0 16 6 16 2 16 3 48 4 5 20 22 0 16 0 16 8 20 18 0 16 0 48 1 16 8 1 3 0 52 24 0 2 52 23 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"Compile (cond test1 body1 test2 body2 ... :else fallback)."
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"emit-op"
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
">"
|
||||||
|
"slice"
|
||||||
|
"list"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"
|
||||||
|
"else"
|
||||||
|
"compile-expr"
|
||||||
|
33
|
||||||
|
"current-offset"
|
||||||
|
"emit-i16"
|
||||||
|
0
|
||||||
|
32
|
||||||
|
"patch-i16"
|
||||||
|
"-"
|
||||||
|
"+"
|
||||||
|
"compile-cond"))
|
||||||
|
"compile-case"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (1 0 0 5 20 1 0 16 0 16 1 52 2 0 1 16 2 4 48 4 5 16 1 52 3 0 1 17 4 20 4 0 16 0 16 4 16 2 16 3 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"Compile (case expr val1 body1 val2 body2 ... :else fallback)."
|
||||||
|
"compile-expr"
|
||||||
|
"first"
|
||||||
|
"rest"
|
||||||
|
"compile-case-clauses"))
|
||||||
|
"compile-case-clauses"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 52 1 0 1 1 2 0 52 0 0 2 33 24 0 20 3 0 16 0 1 4 0 48 2 5 20 3 0 16 0 1 2 0 49 2 32 106 1 16 1 52 5 0 1 17 4 16 1 1 7 0 52 6 0 2 17 5 16 1 52 1 0 1 1 2 0 52 8 0 2 33 12 0 16 1 1 2 0 52 9 0 2 32 4 0 52 10 0 0 17 6 16 4 52 12 0 1 1 13 0 52 11 0 2 6 33 15 0 5 20 14 0 16 4 48 1 1 15 0 52 11 0 2 6 34 8 0 5 16 4 3 52 11 0 2 33 27 0 20 3 0 16 0 1 4 0 48 2 5 20 16 0 16 0 16 5 16 2 16 3 49 4 32 235 0 20 3 0 16 0 1 17 0 48 2 5 20 16 0 16 0 16 4 16 2 4 48 4 5 20 18 0 16 0 1 20 0 52 19 0 2 1 11 0 48 2 17 7 20 3 0 16 0 1 21 0 48 2 5 20 22 0 16 0 16 7 48 2 5 20 23 0 16 0 1 2 0 48 2 5 20 3 0 16 0 1 24 0 48 2 5 20 25 0 16 0 48 1 17 7 20 26 0 16 0 1 27 0 48 2 5 20 3 0 16 0 1 4 0 48 2 5 20 16 0 16 0 16 5 16 2 16 3 48 4 5 20 3 0 16 0 1 28 0 48 2 5 20 25 0 16 0 48 1 17 8 20 26 0 16 0 1 27 0 48 2 5 20 29 0 16 0 16 7 20 25 0 16 0 48 1 16 7 1 2 0 52 31 0 2 52 30 0 2 48 3 5 20 32 0 16 0 16 6 16 2 16 3 48 4 5 20 29 0 16 0 16 8 20 25 0 16 0 48 1 16 8 1 2 0 52 31 0 2 52 30 0 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"emit-op"
|
||||||
|
5
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
">"
|
||||||
|
"slice"
|
||||||
|
"list"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"
|
||||||
|
"else"
|
||||||
|
"compile-expr"
|
||||||
|
6
|
||||||
|
"pool-add"
|
||||||
|
"get"
|
||||||
|
"pool"
|
||||||
|
52
|
||||||
|
"emit-u16"
|
||||||
|
"emit-byte"
|
||||||
|
33
|
||||||
|
"current-offset"
|
||||||
|
"emit-i16"
|
||||||
|
0
|
||||||
|
32
|
||||||
|
"patch-i16"
|
||||||
|
"-"
|
||||||
|
"+"
|
||||||
|
"compile-case-clauses"))
|
||||||
|
"compile-thread"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (1 0 0 5 16 1 52 1 0 1 33 13 0 20 2 0 16 0 1 3 0 49 2 32 67 0 16 1 52 5 0 1 1 6 0 52 4 0 2 33 20 0 20 7 0 16 0 16 1 52 8 0 1 16 2 16 3 49 4 32 31 0 16 1 52 8 0 1 17 4 16 1 52 9 0 1 17 5 20 10 0 16 0 16 4 16 5 16 2 16 3 49 5 50)
|
||||||
|
:constants (
|
||||||
|
"Compile (-> val (f1 a) (f2 b)) by desugaring to nested calls."
|
||||||
|
"empty?"
|
||||||
|
"emit-op"
|
||||||
|
2
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"compile-expr"
|
||||||
|
"first"
|
||||||
|
"rest"
|
||||||
|
"compile-thread-step"))
|
||||||
|
"compile-thread-step"
|
||||||
|
(code :arity 5
|
||||||
|
:bytecode (16 2 52 0 0 1 33 16 0 20 1 0 16 0 16 1 16 3 16 4 49 4 32 128 0 16 2 52 2 0 1 17 5 16 2 52 3 0 1 17 6 16 4 6 33 7 0 5 16 6 52 0 0 1 17 7 16 5 52 4 0 1 33 25 0 16 5 52 2 0 1 16 1 52 6 0 2 16 5 52 3 0 1 52 5 0 2 32 8 0 16 5 16 1 52 6 0 2 17 8 16 6 52 0 0 1 33 16 0 20 1 0 16 0 16 8 16 3 16 7 49 4 32 28 0 20 1 0 16 0 16 8 16 3 4 48 4 5 20 7 0 16 0 16 8 16 6 16 3 16 4 49 5 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"compile-expr"
|
||||||
|
"first"
|
||||||
|
"rest"
|
||||||
|
"list?"
|
||||||
|
"concat"
|
||||||
|
"list"
|
||||||
|
"compile-thread-step"))
|
||||||
|
"compile-defcomp"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 5 20 1 0 16 0 1 3 0 52 2 0 2 1 4 0 48 2 17 3 20 5 0 16 0 1 6 0 48 2 5 20 7 0 16 0 16 3 48 2 5 20 8 0 16 0 1 12 0 52 11 0 1 52 10 0 1 16 1 52 9 0 2 48 2 5 20 5 0 16 0 1 13 0 48 2 5 20 14 0 16 0 1 15 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"Compile defcomp/defisland — delegates to runtime via GLOBAL_GET + CALL."
|
||||||
|
"pool-add"
|
||||||
|
"get"
|
||||||
|
"pool"
|
||||||
|
"eval-defcomp"
|
||||||
|
"emit-op"
|
||||||
|
20
|
||||||
|
"emit-u16"
|
||||||
|
"emit-const"
|
||||||
|
"concat"
|
||||||
|
"list"
|
||||||
|
"make-symbol"
|
||||||
|
"defcomp"
|
||||||
|
48
|
||||||
|
"emit-byte"
|
||||||
|
1))
|
||||||
|
"compile-defmacro"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 5 20 1 0 16 0 1 3 0 52 2 0 2 1 4 0 48 2 17 3 20 5 0 16 0 1 6 0 48 2 5 20 7 0 16 0 16 3 48 2 5 20 8 0 16 0 1 12 0 52 11 0 1 52 10 0 1 16 1 52 9 0 2 48 2 5 20 5 0 16 0 1 13 0 48 2 5 20 14 0 16 0 1 15 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"Compile defmacro — delegates to runtime via GLOBAL_GET + CALL."
|
||||||
|
"pool-add"
|
||||||
|
"get"
|
||||||
|
"pool"
|
||||||
|
"eval-defmacro"
|
||||||
|
"emit-op"
|
||||||
|
20
|
||||||
|
"emit-u16"
|
||||||
|
"emit-const"
|
||||||
|
"concat"
|
||||||
|
"list"
|
||||||
|
"make-symbol"
|
||||||
|
"defmacro"
|
||||||
|
48
|
||||||
|
"emit-byte"
|
||||||
|
1))
|
||||||
|
"compile-quasiquote"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 5 20 1 0 16 0 16 1 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"Compile quasiquote inline — walks the template at compile time,
|
||||||
|
emitting code that builds the structure at runtime. Unquoted
|
||||||
|
expressions are compiled normally (resolving locals/upvalues),
|
||||||
|
avoiding the qq-expand-runtime env-lookup limitation."
|
||||||
|
"compile-qq-expr"))
|
||||||
|
"compile-qq-expr"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 5 16 1 52 3 0 1 1 4 0 52 2 0 2 52 1 0 1 33 12 0 20 5 0 16 0 16 1 49 2 32 109 0 16 1 52 6 0 1 33 24 0 20 7 0 16 0 1 8 0 48 2 5 20 9 0 16 0 1 10 0 49 2 32 76 0 16 1 52 11 0 1 17 3 16 3 52 3 0 1 1 12 0 52 2 0 2 6 33 15 0 5 20 13 0 16 3 48 1 1 14 0 52 2 0 2 33 22 0 20 15 0 16 0 16 1 1 17 0 52 16 0 2 16 2 4 49 4 32 11 0 20 18 0 16 0 16 1 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"Compile a quasiquote sub-expression."
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"list"
|
||||||
|
"emit-const"
|
||||||
|
"empty?"
|
||||||
|
"emit-op"
|
||||||
|
64
|
||||||
|
"emit-u16"
|
||||||
|
0
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"unquote"
|
||||||
|
"compile-expr"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"compile-qq-list"))
|
||||||
|
"compile-qq-list"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 5 51 2 0 16 1 52 1 0 2 17 3 16 3 52 3 0 1 33 41 0 51 5 0 1 0 1 2 16 1 52 4 0 2 5 20 6 0 16 0 1 7 0 48 2 5 20 8 0 16 0 16 1 52 9 0 1 49 2 32 142 0 1 10 0 17 4 1 10 0 17 5 51 11 0 1 5 1 0 1 4 1 2 16 1 52 4 0 2 5 16 5 1 10 0 52 12 0 2 33 35 0 20 6 0 16 0 1 7 0 48 2 5 20 8 0 16 0 16 5 48 2 5 16 4 1 14 0 52 13 0 2 17 4 32 1 0 2 5 16 4 1 14 0 52 12 0 2 33 52 0 20 15 0 16 0 1 17 0 52 16 0 2 1 18 0 48 2 17 6 20 6 0 16 0 1 19 0 48 2 5 20 8 0 16 0 16 6 48 2 5 20 20 0 16 0 16 4 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"Compile a quasiquote list. Handles splice-unquote by building
|
||||||
|
segments and concatenating them."
|
||||||
|
"some"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 6 33 59 0 5 16 0 52 4 0 1 1 5 0 52 3 0 2 6 33 41 0 5 16 0 52 6 0 1 52 1 0 1 1 7 0 52 0 0 2 6 33 19 0 5 20 8 0 16 0 52 6 0 1 48 1 1 9 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"list"
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"splice-unquote"))
|
||||||
|
"not"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 18 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"compile-qq-expr"))
|
||||||
|
"emit-op"
|
||||||
|
64
|
||||||
|
"emit-u16"
|
||||||
|
"len"
|
||||||
|
0
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 6 33 59 0 5 16 0 52 4 0 1 1 5 0 52 3 0 2 6 33 41 0 5 16 0 52 6 0 1 52 1 0 1 1 7 0 52 0 0 2 6 33 19 0 5 20 8 0 16 0 52 6 0 1 48 1 1 9 0 52 0 0 2 33 89 0 18 0 1 11 0 52 10 0 2 33 41 0 20 12 0 18 1 1 13 0 48 2 5 20 14 0 18 1 18 0 48 2 5 18 2 1 16 0 52 15 0 2 19 2 5 1 11 0 19 0 32 1 0 2 5 20 17 0 18 1 16 0 1 16 0 52 18 0 2 18 3 4 48 4 5 18 2 1 16 0 52 15 0 2 19 2 32 23 0 20 19 0 18 1 16 0 18 3 48 3 5 18 0 1 16 0 52 15 0 2 19 0 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"list"
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"splice-unquote"
|
||||||
|
">"
|
||||||
|
0
|
||||||
|
"emit-op"
|
||||||
|
64
|
||||||
|
"emit-u16"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"compile-expr"
|
||||||
|
"nth"
|
||||||
|
"compile-qq-expr"))
|
||||||
|
">"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"pool-add"
|
||||||
|
"get"
|
||||||
|
"pool"
|
||||||
|
"concat"
|
||||||
|
52
|
||||||
|
"emit-byte"))
|
||||||
|
"compile-call"
|
||||||
|
(code :arity 5
|
||||||
|
:bytecode (16 1 52 1 0 1 1 2 0 52 0 0 2 6 33 80 0 5 20 3 0 16 1 48 1 17 6 20 6 0 16 3 16 6 48 2 1 7 0 52 5 0 2 1 8 0 52 0 0 2 52 4 0 1 6 33 39 0 5 20 6 0 16 3 16 6 48 2 1 7 0 52 5 0 2 1 9 0 52 0 0 2 52 4 0 1 6 33 7 0 5 16 6 52 10 0 1 17 5 16 5 33 82 0 20 3 0 16 1 48 1 17 6 16 2 52 11 0 1 17 7 20 12 0 16 0 1 13 0 52 5 0 2 16 6 48 2 17 8 51 15 0 1 0 1 3 16 2 52 14 0 2 5 20 16 0 16 0 1 17 0 48 2 5 20 18 0 16 0 16 8 48 2 5 20 19 0 16 0 16 7 49 2 32 83 0 20 20 0 16 0 16 1 16 3 4 48 4 5 51 15 0 1 0 1 3 16 2 52 14 0 2 5 16 4 33 27 0 20 16 0 16 0 1 21 0 48 2 5 20 19 0 16 0 16 2 52 11 0 1 49 2 32 24 0 20 16 0 16 0 1 22 0 48 2 5 20 19 0 16 0 16 2 52 11 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"not"
|
||||||
|
"get"
|
||||||
|
"scope-resolve"
|
||||||
|
"type"
|
||||||
|
"local"
|
||||||
|
"upvalue"
|
||||||
|
"primitive?"
|
||||||
|
"len"
|
||||||
|
"pool-add"
|
||||||
|
"pool"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 18 1 4 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"compile-expr"))
|
||||||
|
"emit-op"
|
||||||
|
52
|
||||||
|
"emit-u16"
|
||||||
|
"emit-byte"
|
||||||
|
"compile-expr"
|
||||||
|
49
|
||||||
|
48))
|
||||||
|
"compile"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 20 1 0 48 0 17 1 20 2 0 2 48 1 17 2 20 3 0 16 1 16 0 16 2 4 48 4 5 20 4 0 16 1 1 5 0 48 2 5 1 6 0 16 1 1 8 0 52 7 0 2 1 9 0 52 7 0 2 1 10 0 16 1 1 10 0 52 7 0 2 65 2 0 50)
|
||||||
|
:constants (
|
||||||
|
"Compile a single SX expression to a bytecode module."
|
||||||
|
"make-emitter"
|
||||||
|
"make-scope"
|
||||||
|
"compile-expr"
|
||||||
|
"emit-op"
|
||||||
|
50
|
||||||
|
"constants"
|
||||||
|
"get"
|
||||||
|
"pool"
|
||||||
|
"entries"
|
||||||
|
"bytecode"))
|
||||||
|
"compile-module"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 20 1 0 48 0 17 1 20 2 0 2 48 1 17 2 51 4 0 1 1 1 2 16 0 52 5 0 1 52 3 0 2 5 20 6 0 16 1 16 0 52 7 0 1 16 2 4 48 4 5 20 8 0 16 1 1 9 0 48 2 5 1 10 0 16 1 1 12 0 52 11 0 2 1 13 0 52 11 0 2 1 14 0 16 1 1 14 0 52 11 0 2 65 2 0 50)
|
||||||
|
:constants (
|
||||||
|
"Compile a list of top-level expressions to a bytecode module."
|
||||||
|
"make-emitter"
|
||||||
|
"make-scope"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 18 1 4 48 4 5 20 1 0 18 0 1 2 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"compile-expr"
|
||||||
|
"emit-op"
|
||||||
|
5))
|
||||||
|
"init"
|
||||||
|
"compile-expr"
|
||||||
|
"last"
|
||||||
|
"emit-op"
|
||||||
|
50
|
||||||
|
"constants"
|
||||||
|
"get"
|
||||||
|
"pool"
|
||||||
|
"entries"
|
||||||
|
"bytecode")))))
|
||||||
257
shared/static/wasm/sx/core-signals.sxbc
Normal file
257
shared/static/wasm/sx/core-signals.sxbc
Normal file
@@ -0,0 +1,257 @@
|
|||||||
|
(sxbc 1 "59a3141f26d62fda"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 1 31 0 128 30 0 5 52 33 0 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 5 51 45 0 128 44 0 50)
|
||||||
|
:constants (
|
||||||
|
"make-signal"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 1 0 3 1 2 0 16 0 1 3 0 52 4 0 0 1 5 0 52 4 0 0 52 0 0 8 50)
|
||||||
|
:constants (
|
||||||
|
"dict"
|
||||||
|
"__signal"
|
||||||
|
"value"
|
||||||
|
"subscribers"
|
||||||
|
"list"
|
||||||
|
"deps"))
|
||||||
|
"signal?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 6 33 10 0 5 16 0 1 2 0 52 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dict?"
|
||||||
|
"has-key?"
|
||||||
|
"__signal"))
|
||||||
|
"signal-value"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"value"))
|
||||||
|
"signal-set-value!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 16 1 52 0 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"value"))
|
||||||
|
"signal-subscribers"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"subscribers"))
|
||||||
|
"signal-add-sub!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 3 0 52 2 0 2 16 1 52 1 0 2 52 0 0 1 33 19 0 20 4 0 16 0 1 3 0 52 2 0 2 16 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"get"
|
||||||
|
"subscribers"
|
||||||
|
"append!"))
|
||||||
|
"signal-remove-sub!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 2 20 2 0 16 2 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"subscribers"
|
||||||
|
"remove!"))
|
||||||
|
"signal-deps"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"deps"))
|
||||||
|
"signal-set-deps!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 16 1 52 0 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"deps"))
|
||||||
|
"signal"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"make-signal"))
|
||||||
|
"deref"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 48 1 52 0 0 1 33 5 0 16 0 32 87 0 1 3 0 2 52 2 0 2 17 1 16 1 33 63 0 16 1 1 5 0 52 4 0 2 17 2 16 1 1 6 0 52 4 0 2 17 3 16 2 16 0 52 7 0 2 52 0 0 1 33 22 0 20 8 0 16 2 16 0 48 2 5 20 9 0 16 0 16 3 48 2 32 1 0 2 32 1 0 2 5 20 10 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"signal?"
|
||||||
|
"context"
|
||||||
|
"sx-reactive"
|
||||||
|
"get"
|
||||||
|
"deps"
|
||||||
|
"notify"
|
||||||
|
"contains?"
|
||||||
|
"append!"
|
||||||
|
"signal-add-sub!"
|
||||||
|
"signal-value"))
|
||||||
|
"reset!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 33 48 0 20 1 0 16 0 48 1 17 2 16 2 16 1 52 3 0 2 52 2 0 1 33 20 0 20 4 0 16 0 16 1 48 2 5 20 5 0 16 0 49 1 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"signal?"
|
||||||
|
"signal-value"
|
||||||
|
"not"
|
||||||
|
"identical?"
|
||||||
|
"signal-set-value!"
|
||||||
|
"notify-subscribers"))
|
||||||
|
"swap!"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 48 1 33 69 0 20 1 0 16 0 48 1 17 3 20 2 0 16 1 16 3 16 2 52 4 0 2 52 3 0 2 48 1 17 4 16 3 16 4 52 6 0 2 52 5 0 1 33 20 0 20 7 0 16 0 16 4 48 2 5 20 8 0 16 0 49 1 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"signal?"
|
||||||
|
"signal-value"
|
||||||
|
"trampoline"
|
||||||
|
"apply"
|
||||||
|
"cons"
|
||||||
|
"not"
|
||||||
|
"identical?"
|
||||||
|
"signal-set-value!"
|
||||||
|
"notify-subscribers"))
|
||||||
|
"computed"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 2 48 1 17 1 52 1 0 0 17 2 2 17 3 51 2 0 1 4 1 1 1 0 17 4 16 4 48 0 5 20 3 0 51 4 0 1 1 48 1 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"make-signal"
|
||||||
|
"list"
|
||||||
|
(code :upvalue-count 3
|
||||||
|
:bytecode (51 1 0 0 0 20 2 0 18 1 48 1 52 0 0 2 5 20 3 0 18 1 52 4 0 0 48 2 5 1 6 0 52 4 0 0 1 7 0 18 0 52 5 0 4 17 0 1 9 0 16 0 52 8 0 2 5 18 2 48 0 17 1 1 9 0 52 10 0 1 5 20 3 0 18 1 16 0 1 6 0 52 11 0 2 48 2 5 20 12 0 18 1 48 1 17 2 20 13 0 18 1 16 1 48 2 5 16 2 16 1 52 15 0 2 52 14 0 1 33 10 0 20 16 0 18 1 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"signal-remove-sub!"))
|
||||||
|
"signal-deps"
|
||||||
|
"signal-set-deps!"
|
||||||
|
"list"
|
||||||
|
"dict"
|
||||||
|
"deps"
|
||||||
|
"notify"
|
||||||
|
"scope-push!"
|
||||||
|
"sx-reactive"
|
||||||
|
"scope-pop!"
|
||||||
|
"get"
|
||||||
|
"signal-value"
|
||||||
|
"signal-set-value!"
|
||||||
|
"not"
|
||||||
|
"identical?"
|
||||||
|
"notify-subscribers"))
|
||||||
|
"register-in-scope"
|
||||||
|
(code :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"dispose-computed"))))
|
||||||
|
"effect"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (52 0 0 0 17 1 4 17 2 2 17 3 51 1 0 1 2 1 3 1 4 1 1 1 0 17 4 16 4 48 0 5 51 2 0 1 2 1 3 1 4 1 1 17 5 20 3 0 16 5 48 1 5 16 5 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
(code :upvalue-count 5
|
||||||
|
:bytecode (18 0 52 0 0 1 33 108 0 18 1 33 7 0 18 1 48 0 32 1 0 2 5 51 2 0 0 2 18 3 52 1 0 2 5 52 3 0 0 19 3 5 1 5 0 52 3 0 0 1 6 0 18 2 52 4 0 4 17 0 1 8 0 16 0 52 7 0 2 5 18 4 48 0 17 1 1 8 0 52 9 0 1 5 16 0 1 5 0 52 10 0 2 19 3 5 20 11 0 16 1 48 1 33 7 0 16 1 19 1 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"signal-remove-sub!"))
|
||||||
|
"list"
|
||||||
|
"dict"
|
||||||
|
"deps"
|
||||||
|
"notify"
|
||||||
|
"scope-push!"
|
||||||
|
"sx-reactive"
|
||||||
|
"scope-pop!"
|
||||||
|
"get"
|
||||||
|
"callable?"))
|
||||||
|
(code :upvalue-count 4
|
||||||
|
:bytecode (3 19 0 5 18 1 33 7 0 18 1 48 0 32 1 0 2 5 51 1 0 0 2 18 3 52 0 0 2 5 52 2 0 0 19 3 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"signal-remove-sub!"))
|
||||||
|
"list"))
|
||||||
|
"register-in-scope"))
|
||||||
|
"*batch-depth*"
|
||||||
|
0
|
||||||
|
"*batch-queue*"
|
||||||
|
"list"
|
||||||
|
"batch"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 1 2 0 52 0 0 2 21 1 0 5 16 0 48 0 5 20 1 0 1 2 0 52 3 0 2 21 1 0 5 20 1 0 1 5 0 52 4 0 2 33 51 0 20 6 0 17 1 52 7 0 0 21 6 0 5 52 7 0 0 17 2 52 7 0 0 17 3 51 9 0 1 2 1 3 16 1 52 8 0 2 5 51 10 0 16 3 52 8 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"+"
|
||||||
|
"*batch-depth*"
|
||||||
|
1
|
||||||
|
"-"
|
||||||
|
"="
|
||||||
|
0
|
||||||
|
"*batch-queue*"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (51 1 0 0 0 0 1 20 2 0 16 0 48 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 16 0 52 1 0 2 52 0 0 1 33 22 0 20 2 0 18 0 16 0 48 2 5 20 2 0 18 1 16 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"))
|
||||||
|
"signal-subscribers"))
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 49 0 50)
|
||||||
|
:constants ())))
|
||||||
|
"notify-subscribers"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 1 2 0 52 0 0 2 33 33 0 20 5 0 16 0 52 4 0 2 52 3 0 1 33 13 0 20 6 0 20 5 0 16 0 49 2 32 1 0 2 32 7 0 20 7 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
">"
|
||||||
|
"*batch-depth*"
|
||||||
|
0
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"*batch-queue*"
|
||||||
|
"append!"
|
||||||
|
"flush-subscribers"))
|
||||||
|
"flush-subscribers"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (51 1 0 20 2 0 16 0 48 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 49 0 50)
|
||||||
|
:constants ())
|
||||||
|
"signal-subscribers"))
|
||||||
|
"dispose-computed"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 33 29 0 51 2 0 20 3 0 16 0 48 1 52 1 0 2 5 20 4 0 16 0 52 5 0 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"signal?"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"signal-remove-sub!"))
|
||||||
|
"signal-deps"
|
||||||
|
"signal-set-deps!"
|
||||||
|
"list"))
|
||||||
|
"with-island-scope"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 1 0 16 0 52 0 0 2 5 16 1 48 0 17 2 1 1 0 52 2 0 1 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"scope-push!"
|
||||||
|
"sx-island-scope"
|
||||||
|
"scope-pop!"))
|
||||||
|
"register-in-scope"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 1 0 52 0 0 1 17 1 16 1 33 16 0 20 2 0 16 1 16 0 52 3 0 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"scope-peek"
|
||||||
|
"sx-island-scope"
|
||||||
|
"cek-call"
|
||||||
|
"list")))))
|
||||||
330
shared/static/wasm/sx/deps.sxbc
Normal file
330
shared/static/wasm/sx/deps.sxbc
Normal file
@@ -0,0 +1,330 @@
|
|||||||
|
(sxbc 1 "e71dcede46ada0e7"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 51 33 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 50)
|
||||||
|
:constants (
|
||||||
|
"scan-refs"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (52 0 0 0 17 1 20 1 0 16 0 16 1 48 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"scan-refs-walk"))
|
||||||
|
"scan-refs-walk"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 33 56 0 20 3 0 16 0 48 1 17 2 16 2 1 5 0 52 4 0 2 33 31 0 16 1 16 2 52 7 0 2 52 6 0 1 33 12 0 20 8 0 16 1 16 2 49 2 32 1 0 2 32 1 0 2 32 67 0 16 0 52 1 0 1 1 9 0 52 0 0 2 33 14 0 51 11 0 1 1 16 0 52 10 0 2 32 37 0 16 0 52 1 0 1 1 12 0 52 0 0 2 33 20 0 51 13 0 1 0 1 1 16 0 52 14 0 1 52 10 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"scan-refs-walk"))
|
||||||
|
"dict"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 52 1 0 2 18 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"scan-refs-walk"
|
||||||
|
"dict-get"))
|
||||||
|
"keys"))
|
||||||
|
"transitive-deps-walk"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 16 0 52 1 0 2 52 0 0 1 33 126 0 20 2 0 16 1 16 0 48 2 5 20 3 0 16 2 16 0 48 2 17 3 16 3 52 5 0 1 1 6 0 52 4 0 2 6 34 14 0 5 16 3 52 5 0 1 1 7 0 52 4 0 2 33 25 0 51 9 0 1 1 1 2 20 10 0 16 3 52 11 0 1 48 1 52 8 0 2 32 43 0 16 3 52 5 0 1 1 12 0 52 4 0 2 33 26 0 51 9 0 1 1 1 2 20 10 0 20 13 0 16 3 48 1 48 1 52 8 0 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"
|
||||||
|
"env-get"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"component"
|
||||||
|
"island"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 18 0 18 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"transitive-deps-walk"))
|
||||||
|
"scan-refs"
|
||||||
|
"component-body"
|
||||||
|
"macro"
|
||||||
|
"macro-body"))
|
||||||
|
"transitive-deps"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (52 0 0 0 17 2 16 0 1 2 0 52 1 0 2 33 5 0 16 0 32 9 0 1 2 0 16 0 52 3 0 2 17 3 20 4 0 16 3 16 2 16 1 48 3 5 51 6 0 1 3 16 2 52 5 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"str"
|
||||||
|
"transitive-deps-walk"
|
||||||
|
"filter"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 18 0 52 1 0 2 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"="))))
|
||||||
|
"compute-all-deps"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (51 1 0 1 0 20 2 0 16 0 48 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 48 2 17 1 16 1 52 2 0 1 1 3 0 52 1 0 2 6 34 14 0 5 16 1 52 2 0 1 1 4 0 52 1 0 2 33 19 0 20 5 0 16 1 20 6 0 16 0 18 0 48 2 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"env-get"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"component"
|
||||||
|
"island"
|
||||||
|
"component-set-deps!"
|
||||||
|
"transitive-deps"))
|
||||||
|
"env-components"))
|
||||||
|
"scan-components-from-source"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 16 0 48 2 17 1 51 3 0 16 1 52 2 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"regex-find-all"
|
||||||
|
"\\(~([a-zA-Z_][a-zA-Z0-9_\\-:/]*)"
|
||||||
|
"map"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 1 0 16 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"str"
|
||||||
|
"~"))))
|
||||||
|
"components-needed"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 2 52 1 0 0 17 3 51 3 0 1 3 1 1 16 2 52 2 0 2 5 16 3 50)
|
||||||
|
:constants (
|
||||||
|
"scan-components-from-source"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 16 0 52 1 0 2 52 0 0 1 33 12 0 20 2 0 18 0 16 0 48 2 32 1 0 2 5 20 3 0 18 1 16 0 48 2 17 1 16 1 52 5 0 1 1 6 0 52 4 0 2 6 33 16 0 5 20 8 0 16 1 48 1 52 7 0 1 52 0 0 1 33 10 0 20 8 0 16 1 48 1 32 9 0 20 9 0 16 0 18 1 48 2 17 2 51 11 0 0 0 16 2 52 10 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"
|
||||||
|
"env-get"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"component"
|
||||||
|
"empty?"
|
||||||
|
"component-deps"
|
||||||
|
"transitive-deps"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 52 1 0 2 52 0 0 1 33 12 0 20 2 0 18 0 16 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"))))))
|
||||||
|
"page-component-bundle"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"components-needed"))
|
||||||
|
"page-css-classes"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 16 1 48 2 17 2 52 1 0 0 17 3 51 3 0 1 1 1 3 16 2 52 2 0 2 5 51 4 0 1 3 20 5 0 16 0 48 1 52 2 0 2 5 16 3 50)
|
||||||
|
:constants (
|
||||||
|
"components-needed"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 48 2 17 1 16 1 52 2 0 1 1 3 0 52 1 0 2 33 19 0 51 5 0 0 1 20 6 0 16 1 48 1 52 4 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"env-get"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"component"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 52 1 0 2 52 0 0 1 33 12 0 20 2 0 18 0 16 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"))
|
||||||
|
"component-css-classes"))
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 52 1 0 2 52 0 0 1 33 12 0 20 2 0 18 0 16 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"))
|
||||||
|
"scan-css-classes"))
|
||||||
|
"scan-io-refs-walk"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 33 55 0 20 3 0 16 0 48 1 17 3 16 1 16 3 52 4 0 2 33 31 0 16 2 16 3 52 4 0 2 52 5 0 1 33 12 0 20 6 0 16 2 16 3 49 2 32 1 0 2 32 1 0 2 32 71 0 16 0 52 1 0 1 1 7 0 52 0 0 2 33 16 0 51 9 0 1 1 1 2 16 0 52 8 0 2 32 39 0 16 0 52 1 0 1 1 10 0 52 0 0 2 33 22 0 51 11 0 1 0 1 1 1 2 16 0 52 12 0 1 52 8 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"contains?"
|
||||||
|
"not"
|
||||||
|
"append!"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 18 0 18 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"scan-io-refs-walk"))
|
||||||
|
"dict"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (20 0 0 18 0 16 0 52 1 0 2 18 1 18 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"scan-io-refs-walk"
|
||||||
|
"dict-get"))
|
||||||
|
"keys"))
|
||||||
|
"scan-io-refs"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (52 0 0 0 17 2 20 1 0 16 0 16 1 16 2 48 3 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"scan-io-refs-walk"))
|
||||||
|
"transitive-io-refs-walk"
|
||||||
|
(code :arity 5
|
||||||
|
:bytecode (16 1 16 0 52 1 0 2 52 0 0 1 33 163 0 20 2 0 16 1 16 0 48 2 5 20 3 0 16 3 16 0 48 2 17 5 16 5 52 5 0 1 1 6 0 52 4 0 2 33 52 0 51 8 0 1 2 20 9 0 16 5 52 10 0 1 16 4 48 2 52 7 0 2 5 51 11 0 1 1 1 2 1 3 1 4 20 12 0 16 5 52 10 0 1 48 1 52 7 0 2 32 71 0 16 5 52 5 0 1 1 13 0 52 4 0 2 33 54 0 51 8 0 1 2 20 9 0 20 14 0 16 5 48 1 16 4 48 2 52 7 0 2 5 51 11 0 1 1 1 2 1 3 1 4 20 12 0 20 14 0 16 5 48 1 48 1 52 7 0 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"
|
||||||
|
"env-get"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"component"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 52 1 0 2 52 0 0 1 33 12 0 20 2 0 18 0 16 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"))
|
||||||
|
"scan-io-refs"
|
||||||
|
"component-body"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (20 0 0 16 0 18 0 18 1 18 2 18 3 49 5 50)
|
||||||
|
:constants (
|
||||||
|
"transitive-io-refs-walk"))
|
||||||
|
"scan-refs"
|
||||||
|
"macro"
|
||||||
|
"macro-body"))
|
||||||
|
"transitive-io-refs"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (52 0 0 0 17 3 52 0 0 0 17 4 16 0 1 2 0 52 1 0 2 33 5 0 16 0 32 9 0 1 2 0 16 0 52 3 0 2 17 5 20 4 0 16 5 16 4 16 3 16 1 16 2 48 5 5 16 3 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"str"
|
||||||
|
"transitive-io-refs-walk"))
|
||||||
|
"compute-all-io-refs"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (51 1 0 1 0 1 1 20 2 0 16 0 48 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 16 0 48 2 17 1 16 1 52 2 0 1 1 3 0 52 1 0 2 33 21 0 20 4 0 16 1 20 5 0 16 0 18 0 18 1 48 3 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"env-get"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"component"
|
||||||
|
"component-set-io-refs!"
|
||||||
|
"transitive-io-refs"))
|
||||||
|
"env-components"))
|
||||||
|
"component-io-refs-cached"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 5 0 16 0 32 9 0 1 1 0 16 0 52 2 0 2 17 3 20 3 0 16 1 16 3 48 2 17 4 16 4 52 5 0 1 1 6 0 52 4 0 2 6 33 36 0 5 20 9 0 16 4 48 1 52 8 0 1 52 7 0 1 6 33 16 0 5 20 9 0 16 4 48 1 52 10 0 1 52 7 0 1 33 10 0 20 9 0 16 4 49 1 32 11 0 20 11 0 16 0 16 1 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"str"
|
||||||
|
"env-get"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"component"
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"component-io-refs"
|
||||||
|
"empty?"
|
||||||
|
"transitive-io-refs"))
|
||||||
|
"component-pure?"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 5 0 16 0 32 9 0 1 1 0 16 0 52 2 0 2 17 3 20 3 0 16 1 16 3 48 2 17 4 16 4 52 5 0 1 1 6 0 52 4 0 2 6 33 16 0 5 20 9 0 16 4 48 1 52 8 0 1 52 7 0 1 33 14 0 20 9 0 16 4 48 1 52 10 0 1 32 15 0 20 11 0 16 0 16 1 16 2 48 3 52 10 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"str"
|
||||||
|
"env-get"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"component"
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"component-io-refs"
|
||||||
|
"empty?"
|
||||||
|
"transitive-io-refs"))
|
||||||
|
"render-target"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 5 0 16 0 32 9 0 1 1 0 16 0 52 2 0 2 17 3 20 3 0 16 1 16 3 48 2 17 4 16 4 52 6 0 1 1 7 0 52 5 0 2 52 4 0 1 33 6 0 1 8 0 32 72 0 20 9 0 16 4 48 1 17 5 16 5 1 8 0 52 5 0 2 33 6 0 1 8 0 32 45 0 16 5 1 10 0 52 5 0 2 33 6 0 1 10 0 32 27 0 20 11 0 16 0 16 1 16 2 48 3 52 4 0 1 33 6 0 1 8 0 32 3 0 1 10 0 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"str"
|
||||||
|
"env-get"
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"component"
|
||||||
|
"server"
|
||||||
|
"component-affinity"
|
||||||
|
"client"
|
||||||
|
"component-pure?"))
|
||||||
|
"page-render-plan"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 48 2 17 3 52 1 0 0 17 4 52 2 0 0 17 5 52 2 0 0 17 6 52 2 0 0 17 7 51 4 0 1 1 1 2 1 4 1 5 1 7 1 6 16 3 52 3 0 2 5 1 5 0 16 7 1 6 0 16 5 1 7 0 16 4 1 8 0 16 6 65 4 0 50)
|
||||||
|
:constants (
|
||||||
|
"components-needed"
|
||||||
|
"dict"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 6
|
||||||
|
:bytecode (20 0 0 16 0 18 0 18 1 48 3 17 1 18 2 16 0 16 1 52 1 0 3 5 16 1 1 3 0 52 2 0 2 33 33 0 20 4 0 18 3 16 0 48 2 5 51 6 0 0 4 20 7 0 16 0 18 0 18 1 48 3 52 5 0 2 32 9 0 20 4 0 18 5 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-target"
|
||||||
|
"dict-set!"
|
||||||
|
"="
|
||||||
|
"server"
|
||||||
|
"append!"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 52 1 0 2 52 0 0 1 33 12 0 20 2 0 18 0 16 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"append!"))
|
||||||
|
"component-io-refs-cached"))
|
||||||
|
"io-deps"
|
||||||
|
"server"
|
||||||
|
"components"
|
||||||
|
"client"))
|
||||||
|
"env-components"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (51 1 0 1 0 16 0 52 2 0 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"filter"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 48 2 17 1 16 1 52 1 0 1 6 34 7 0 5 16 1 52 2 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"env-get"
|
||||||
|
"component?"
|
||||||
|
"macro?"))
|
||||||
|
"keys")))))
|
||||||
532
shared/static/wasm/sx/dom.sxbc
Normal file
532
shared/static/wasm/sx/dom.sxbc
Normal file
@@ -0,0 +1,532 @@
|
|||||||
|
(sxbc 1 "229a5c9f55b2ac03"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 51 33 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 5 51 45 0 128 44 0 5 51 47 0 128 46 0 5 51 49 0 128 48 0 5 51 51 0 128 50 0 5 51 53 0 128 52 0 5 51 55 0 128 54 0 5 51 57 0 128 56 0 5 51 59 0 128 58 0 5 51 61 0 128 60 0 5 51 63 0 128 62 0 5 51 65 0 128 64 0 5 51 67 0 128 66 0 5 51 69 0 128 68 0 5 51 71 0 128 70 0 5 51 73 0 128 72 0 5 51 75 0 128 74 0 5 51 77 0 128 76 0 5 51 79 0 128 78 0 5 51 81 0 128 80 0 5 51 83 0 128 82 0 5 51 85 0 128 84 0 5 51 87 0 128 86 0 5 51 89 0 128 88 0 5 51 91 0 128 90 0 5 51 93 0 128 92 0 5 51 95 0 128 94 0 5 51 97 0 128 96 0 5 51 99 0 128 98 0 5 51 101 0 128 100 0 5 51 99 0 128 102 0 5 51 104 0 128 103 0 5 51 106 0 128 105 0 5 51 108 0 128 107 0 5 51 110 0 128 109 0 5 51 112 0 128 111 0 5 51 114 0 128 113 0 5 51 116 0 128 115 0 5 51 118 0 128 117 0 5 51 120 0 128 119 0 5 51 122 0 128 121 0 5 51 124 0 128 123 0 5 51 126 0 128 125 0 5 51 128 0 128 127 0 5 51 130 0 128 129 0 5 51 132 0 128 131 0 5 51 134 0 128 133 0 50)
|
||||||
|
:constants (
|
||||||
|
"dom-document"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 1 1 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"host-global"
|
||||||
|
"document"))
|
||||||
|
"dom-window"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 1 1 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"host-global"
|
||||||
|
"window"))
|
||||||
|
"dom-body"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"dom-document"
|
||||||
|
"body"))
|
||||||
|
"dom-head"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"dom-document"
|
||||||
|
"head"))
|
||||||
|
"dom-create-element"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 33 20 0 20 0 0 20 1 0 48 0 1 2 0 16 1 16 0 49 4 32 15 0 20 0 0 20 1 0 48 0 1 3 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-document"
|
||||||
|
"createElementNS"
|
||||||
|
"createElement"))
|
||||||
|
"create-text-node"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-document"
|
||||||
|
"createTextNode"))
|
||||||
|
"create-fragment"
|
||||||
|
(code
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-document"
|
||||||
|
"createDocumentFragment"))
|
||||||
|
"create-comment"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 6 34 4 0 5 1 3 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-document"
|
||||||
|
"createComment"
|
||||||
|
""))
|
||||||
|
"dom-append"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 33 3 0 5 16 1 33 15 0 20 0 0 16 0 1 1 0 16 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"appendChild"))
|
||||||
|
"dom-prepend"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 33 3 0 5 16 1 33 15 0 20 0 0 16 0 1 1 0 16 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"prepend"))
|
||||||
|
"dom-insert-before"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 6 33 3 0 5 16 1 33 17 0 20 0 0 16 0 1 1 0 16 1 16 2 49 4 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"insertBefore"))
|
||||||
|
"dom-insert-after"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 5 20 1 0 16 0 1 2 0 48 2 17 2 20 1 0 16 0 1 3 0 48 2 17 3 16 2 33 37 0 16 3 33 17 0 20 4 0 16 2 1 5 0 16 1 16 3 49 4 32 12 0 20 4 0 16 2 1 6 0 16 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"Insert node after ref in the same parent."
|
||||||
|
"host-get"
|
||||||
|
"parentNode"
|
||||||
|
"nextSibling"
|
||||||
|
"host-call"
|
||||||
|
"insertBefore"
|
||||||
|
"appendChild"))
|
||||||
|
"dom-remove"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 33 13 0 20 0 0 16 0 1 1 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"remove"))
|
||||||
|
"dom-is-active-element?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 48 2 17 1 16 1 6 33 3 0 5 16 0 33 11 0 16 0 16 1 52 3 0 2 32 1 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"dom-document"
|
||||||
|
"activeElement"
|
||||||
|
"identical?"))
|
||||||
|
"dom-is-input-element?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 48 1 6 34 4 0 5 1 2 0 52 0 0 1 17 1 16 1 1 4 0 52 3 0 2 6 34 24 0 5 16 1 1 5 0 52 3 0 2 6 34 10 0 5 16 1 1 6 0 52 3 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"upper"
|
||||||
|
"dom-tag-name"
|
||||||
|
""
|
||||||
|
"="
|
||||||
|
"INPUT"
|
||||||
|
"TEXTAREA"
|
||||||
|
"SELECT"))
|
||||||
|
"dom-is-child-of?"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 33 20 0 5 16 1 6 33 13 0 5 20 0 0 16 1 1 1 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"contains"))
|
||||||
|
"dom-attr-list"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 52 2 0 0 17 2 16 1 33 38 0 20 0 0 16 1 1 3 0 48 2 17 3 2 17 4 51 4 0 1 3 1 1 1 2 1 4 17 4 16 4 1 5 0 48 1 32 1 0 2 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"attributes"
|
||||||
|
"list"
|
||||||
|
"length"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (16 0 18 0 52 0 0 2 33 62 0 20 1 0 18 1 1 2 0 16 0 48 3 17 1 20 3 0 18 2 20 5 0 16 1 1 6 0 48 2 20 5 0 16 1 1 7 0 48 2 52 4 0 2 48 2 5 18 3 16 0 1 9 0 52 8 0 2 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"host-call"
|
||||||
|
"item"
|
||||||
|
"append!"
|
||||||
|
"list"
|
||||||
|
"host-get"
|
||||||
|
"name"
|
||||||
|
"value"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
0))
|
||||||
|
"dom-remove-child"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 33 3 0 5 16 1 33 15 0 20 0 0 16 0 1 1 0 16 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"removeChild"))
|
||||||
|
"dom-replace-child"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 6 33 10 0 5 16 1 6 33 3 0 5 16 2 33 17 0 20 0 0 16 0 1 1 0 16 1 16 2 49 4 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"replaceChild"))
|
||||||
|
"dom-clone"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 16 1 52 2 0 1 33 4 0 3 32 2 0 16 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"cloneNode"
|
||||||
|
"nil?"))
|
||||||
|
"dom-query"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 52 0 0 1 33 18 0 20 1 0 20 2 0 48 0 1 3 0 16 0 49 3 32 12 0 20 1 0 16 0 1 3 0 16 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"host-call"
|
||||||
|
"dom-document"
|
||||||
|
"querySelector"))
|
||||||
|
"dom-query-all"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 5 16 1 52 1 0 1 33 18 0 20 2 0 20 3 0 48 0 1 4 0 16 0 48 3 32 12 0 20 2 0 16 0 1 4 0 16 1 48 3 17 2 16 2 52 1 0 1 33 7 0 52 5 0 0 32 44 0 20 6 0 16 2 1 7 0 48 2 17 3 52 5 0 0 17 4 2 17 5 51 8 0 1 3 1 4 1 2 1 5 17 5 16 5 1 9 0 48 1 5 16 4 50)
|
||||||
|
:constants (
|
||||||
|
"Query DOM and return an SX list (not a host NodeList)."
|
||||||
|
"nil?"
|
||||||
|
"host-call"
|
||||||
|
"dom-document"
|
||||||
|
"querySelectorAll"
|
||||||
|
"list"
|
||||||
|
"host-get"
|
||||||
|
"length"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (16 0 18 0 52 0 0 2 33 36 0 20 1 0 18 1 20 2 0 18 2 1 3 0 16 0 48 3 48 2 5 18 3 16 0 1 5 0 52 4 0 2 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"append!"
|
||||||
|
"host-call"
|
||||||
|
"item"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
0))
|
||||||
|
"dom-query-by-id"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"dom-document"
|
||||||
|
"getElementById"))
|
||||||
|
"dom-closest"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 33 15 0 20 0 0 16 0 1 1 0 16 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"closest"))
|
||||||
|
"dom-matches?"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 33 11 0 5 20 0 0 16 0 1 1 0 48 2 33 15 0 20 2 0 16 0 1 1 0 16 1 49 3 32 1 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"matches"
|
||||||
|
"host-call"))
|
||||||
|
"dom-get-attr"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 33 11 0 5 20 0 0 16 0 1 1 0 48 2 33 32 0 20 2 0 16 0 1 1 0 16 1 48 3 17 2 16 2 52 3 0 1 33 4 0 2 32 2 0 16 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"getAttribute"
|
||||||
|
"host-call"
|
||||||
|
"nil?"))
|
||||||
|
"dom-set-attr"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 6 33 11 0 5 20 0 0 16 0 1 1 0 48 2 33 17 0 20 2 0 16 0 1 1 0 16 1 16 2 49 4 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"setAttribute"
|
||||||
|
"host-call"))
|
||||||
|
"dom-remove-attr"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 33 11 0 5 20 0 0 16 0 1 1 0 48 2 33 15 0 20 2 0 16 0 1 1 0 16 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"removeAttribute"
|
||||||
|
"host-call"))
|
||||||
|
"dom-has-attr?"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 33 11 0 5 20 0 0 16 0 1 1 0 48 2 33 15 0 20 2 0 16 0 1 1 0 16 1 49 3 32 1 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"hasAttribute"
|
||||||
|
"host-call"))
|
||||||
|
"dom-add-class"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 33 23 0 20 0 0 20 1 0 16 0 1 2 0 48 2 1 3 0 16 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"classList"
|
||||||
|
"add"))
|
||||||
|
"dom-remove-class"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 33 23 0 20 0 0 20 1 0 16 0 1 2 0 48 2 1 3 0 16 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"classList"
|
||||||
|
"remove"))
|
||||||
|
"dom-has-class?"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 33 23 0 20 0 0 20 1 0 16 0 1 2 0 48 2 1 3 0 16 1 49 3 32 1 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"classList"
|
||||||
|
"contains"))
|
||||||
|
"dom-text-content"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"textContent"))
|
||||||
|
"dom-set-text-content"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 16 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-set!"
|
||||||
|
"textContent"))
|
||||||
|
"dom-inner-html"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"innerHTML"))
|
||||||
|
"dom-set-inner-html"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 16 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-set!"
|
||||||
|
"innerHTML"))
|
||||||
|
"dom-outer-html"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"outerHTML"))
|
||||||
|
"dom-insert-adjacent-html"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 16 1 16 2 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"insertAdjacentHTML"))
|
||||||
|
"dom-get-style"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 0 0 16 0 1 1 0 48 2 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"style"))
|
||||||
|
"dom-set-style"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 1 2 0 48 2 1 3 0 16 1 16 2 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"host-get"
|
||||||
|
"style"
|
||||||
|
"setProperty"))
|
||||||
|
"dom-get-prop"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"))
|
||||||
|
"dom-set-prop"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-set!"))
|
||||||
|
"dom-tag-name"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 33 25 0 20 1 0 16 0 1 2 0 48 2 6 34 4 0 5 1 3 0 52 0 0 1 32 3 0 1 3 0 50)
|
||||||
|
:constants (
|
||||||
|
"lower"
|
||||||
|
"host-get"
|
||||||
|
"tagName"
|
||||||
|
""))
|
||||||
|
"dom-node-type"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"nodeType"))
|
||||||
|
"dom-node-name"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"nodeName"))
|
||||||
|
"dom-id"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"id"))
|
||||||
|
"dom-parent"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"parentNode"))
|
||||||
|
"dom-first-child"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"firstChild"))
|
||||||
|
"dom-next-sibling"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"nextSibling"))
|
||||||
|
"dom-child-list"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 16 0 33 59 0 20 1 0 16 0 1 2 0 48 2 17 1 20 1 0 16 1 1 3 0 48 2 17 2 52 4 0 0 17 3 2 17 4 51 5 0 1 2 1 3 1 1 1 4 17 4 16 4 1 6 0 48 1 5 16 3 32 4 0 52 4 0 0 50)
|
||||||
|
:constants (
|
||||||
|
"Return child nodes as an SX list."
|
||||||
|
"host-get"
|
||||||
|
"childNodes"
|
||||||
|
"length"
|
||||||
|
"list"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (16 0 18 0 52 0 0 2 33 36 0 20 1 0 18 1 20 2 0 18 2 1 3 0 16 0 48 3 48 2 5 18 3 16 0 1 5 0 52 4 0 2 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"append!"
|
||||||
|
"host-call"
|
||||||
|
"item"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
0))
|
||||||
|
"dom-is-fragment?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 1 2 0 48 2 1 3 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"host-get"
|
||||||
|
"nodeType"
|
||||||
|
11))
|
||||||
|
"dom-child-nodes"
|
||||||
|
"dom-remove-children-after"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 20 1 0 16 0 48 1 17 1 16 1 33 21 0 2 17 2 51 2 0 1 0 1 1 1 2 17 2 16 2 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"Remove all siblings after marker node."
|
||||||
|
"dom-parent"
|
||||||
|
(code :upvalue-count 3
|
||||||
|
:bytecode (20 0 0 18 0 48 1 17 0 16 0 33 20 0 20 1 0 18 1 1 2 0 16 0 48 3 5 18 2 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-next-sibling"
|
||||||
|
"host-call"
|
||||||
|
"removeChild"))))
|
||||||
|
"dom-focus"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 33 13 0 20 0 0 16 0 1 1 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"focus"))
|
||||||
|
"dom-parse-html"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 48 1 17 1 20 2 0 16 1 1 3 0 16 0 1 4 0 48 4 17 2 20 5 0 20 5 0 16 2 1 6 0 48 2 1 7 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-new"
|
||||||
|
"DOMParser"
|
||||||
|
"host-call"
|
||||||
|
"parseFromString"
|
||||||
|
"text/html"
|
||||||
|
"host-get"
|
||||||
|
"body"
|
||||||
|
"childNodes"))
|
||||||
|
"dom-listen"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 2 48 1 17 3 20 1 0 16 0 1 2 0 16 1 16 3 48 4 5 51 3 0 1 0 1 1 1 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-callback"
|
||||||
|
"host-call"
|
||||||
|
"addEventListener"
|
||||||
|
(code :upvalue-count 3
|
||||||
|
:bytecode (20 0 0 18 0 1 1 0 18 1 18 2 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"removeEventListener"))))
|
||||||
|
"dom-add-listener"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (20 0 0 16 2 48 1 17 4 16 3 33 19 0 20 1 0 16 0 1 2 0 16 1 16 4 16 3 48 5 32 14 0 20 1 0 16 0 1 2 0 16 1 16 4 48 4 5 51 3 0 1 0 1 1 1 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-callback"
|
||||||
|
"host-call"
|
||||||
|
"addEventListener"
|
||||||
|
(code :upvalue-count 3
|
||||||
|
:bytecode (20 0 0 18 0 1 1 0 18 1 18 2 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"removeEventListener"))))
|
||||||
|
"dom-dispatch"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 1 1 0 16 1 1 3 0 16 2 1 4 0 3 52 2 0 4 48 3 17 3 20 5 0 16 0 1 6 0 16 3 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-new"
|
||||||
|
"CustomEvent"
|
||||||
|
"dict"
|
||||||
|
"detail"
|
||||||
|
"bubbles"
|
||||||
|
"host-call"
|
||||||
|
"dispatchEvent"))
|
||||||
|
"event-detail"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"detail"))
|
||||||
|
"prevent-default"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 33 13 0 20 0 0 16 0 1 1 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"preventDefault"))
|
||||||
|
"stop-propagation"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 33 13 0 20 0 0 16 0 1 1 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-call"
|
||||||
|
"stopPropagation"))
|
||||||
|
"event-modifier-key?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 6 33 56 0 5 20 0 0 16 0 1 1 0 48 2 6 34 41 0 5 20 0 0 16 0 1 2 0 48 2 6 34 26 0 5 20 0 0 16 0 1 3 0 48 2 6 34 11 0 5 20 0 0 16 0 1 4 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"ctrlKey"
|
||||||
|
"metaKey"
|
||||||
|
"shiftKey"
|
||||||
|
"altKey"))
|
||||||
|
"element-value"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 6 33 19 0 5 20 2 0 16 0 1 3 0 48 2 52 1 0 1 52 0 0 1 33 13 0 20 2 0 16 0 1 3 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"host-get"
|
||||||
|
"value"))
|
||||||
|
"error-message"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 6 33 11 0 5 20 0 0 16 0 1 1 0 48 2 33 13 0 20 0 0 16 0 1 1 0 49 2 32 6 0 16 0 52 2 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"message"
|
||||||
|
"str"))
|
||||||
|
"dom-get-data"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 2 16 2 33 12 0 20 0 0 16 2 16 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"host-get"
|
||||||
|
"__sx_data"))
|
||||||
|
"dom-set-data"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 1 0 16 0 1 2 0 48 2 52 0 0 1 33 17 0 20 3 0 16 0 1 2 0 52 4 0 0 48 3 32 1 0 2 5 20 3 0 20 1 0 16 0 1 2 0 48 2 16 1 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"host-get"
|
||||||
|
"__sx_data"
|
||||||
|
"host-set!"
|
||||||
|
"dict"))
|
||||||
|
"dom-append-to-head"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 48 0 33 18 0 20 1 0 20 0 0 48 0 1 2 0 16 0 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-head"
|
||||||
|
"host-call"
|
||||||
|
"appendChild"))
|
||||||
|
"set-document-title"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 48 0 1 2 0 16 0 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"host-set!"
|
||||||
|
"dom-document"
|
||||||
|
"title")))))
|
||||||
657
shared/static/wasm/sx/engine.sxbc
Normal file
657
shared/static/wasm/sx/engine.sxbc
Normal file
@@ -0,0 +1,657 @@
|
|||||||
|
(sxbc 1 "e038227f8fc8f0ad"
|
||||||
|
(code
|
||||||
|
:bytecode (1 2 0 1 3 0 1 4 0 1 5 0 1 6 0 52 1 0 5 128 0 0 5 1 8 0 128 7 0 5 51 10 0 128 9 0 5 51 12 0 128 11 0 5 51 14 0 128 13 0 5 51 16 0 128 15 0 5 51 18 0 128 17 0 5 51 20 0 128 19 0 5 51 22 0 128 21 0 5 51 24 0 128 23 0 5 51 26 0 128 25 0 5 51 28 0 128 27 0 5 51 30 0 128 29 0 5 51 32 0 128 31 0 5 51 34 0 128 33 0 5 51 36 0 128 35 0 5 51 38 0 128 37 0 5 51 40 0 128 39 0 5 51 42 0 128 41 0 5 51 44 0 128 43 0 5 51 46 0 128 45 0 5 51 48 0 128 47 0 5 51 50 0 128 49 0 5 51 52 0 128 51 0 5 51 54 0 128 53 0 5 51 56 0 128 55 0 5 1 58 0 128 57 0 5 51 60 0 128 59 0 5 51 62 0 128 61 0 5 51 64 0 128 63 0 5 51 66 0 128 65 0 5 51 68 0 128 67 0 5 51 70 0 128 69 0 50)
|
||||||
|
:constants (
|
||||||
|
"ENGINE_VERBS"
|
||||||
|
"list"
|
||||||
|
"get"
|
||||||
|
"post"
|
||||||
|
"put"
|
||||||
|
"delete"
|
||||||
|
"patch"
|
||||||
|
"DEFAULT_SWAP"
|
||||||
|
"outerHTML"
|
||||||
|
"parse-time"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 6 0 1 1 0 32 74 0 16 0 1 3 0 52 2 0 2 33 12 0 16 0 1 1 0 52 4 0 2 32 50 0 16 0 1 5 0 52 2 0 2 33 29 0 16 0 1 5 0 1 8 0 52 7 0 3 1 1 0 52 4 0 2 1 9 0 52 6 0 2 32 9 0 16 0 1 1 0 52 4 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
0
|
||||||
|
"ends-with?"
|
||||||
|
"ms"
|
||||||
|
"parse-int"
|
||||||
|
"s"
|
||||||
|
"*"
|
||||||
|
"replace"
|
||||||
|
""
|
||||||
|
1000))
|
||||||
|
"parse-trigger-spec"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 4 0 2 32 27 0 16 0 1 2 0 52 1 0 2 17 1 51 4 0 51 6 0 16 1 52 5 0 2 52 3 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"split"
|
||||||
|
","
|
||||||
|
"filter"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"nil?"))
|
||||||
|
"map"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 17 1 16 1 52 3 0 1 33 4 0 2 32 111 0 16 1 52 5 0 1 1 6 0 52 4 0 2 6 33 14 0 5 16 1 52 8 0 1 1 9 0 52 7 0 2 33 37 0 1 11 0 1 6 0 1 12 0 1 13 0 20 14 0 16 1 1 16 0 52 15 0 2 48 1 52 10 0 2 52 10 0 4 32 40 0 52 10 0 0 17 2 51 18 0 1 2 16 1 52 19 0 1 52 17 0 2 5 1 11 0 16 1 52 5 0 1 1 12 0 16 2 52 10 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"split"
|
||||||
|
"trim"
|
||||||
|
" "
|
||||||
|
"empty?"
|
||||||
|
"="
|
||||||
|
"first"
|
||||||
|
"every"
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"dict"
|
||||||
|
"event"
|
||||||
|
"modifiers"
|
||||||
|
"interval"
|
||||||
|
"parse-time"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 13 0 18 0 1 1 0 3 52 2 0 3 32 97 0 16 0 1 3 0 52 0 0 2 33 13 0 18 0 1 3 0 3 52 2 0 3 32 72 0 16 0 1 5 0 52 4 0 2 33 26 0 18 0 1 6 0 20 7 0 16 0 1 9 0 52 8 0 2 48 1 52 2 0 3 32 34 0 16 0 1 10 0 52 4 0 2 33 21 0 18 0 1 11 0 16 0 1 12 0 52 8 0 2 52 2 0 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"once"
|
||||||
|
"dict-set!"
|
||||||
|
"changed"
|
||||||
|
"starts-with?"
|
||||||
|
"delay:"
|
||||||
|
"delay"
|
||||||
|
"parse-time"
|
||||||
|
"slice"
|
||||||
|
6
|
||||||
|
"from:"
|
||||||
|
"from"
|
||||||
|
5))
|
||||||
|
"rest"))))
|
||||||
|
"default-trigger"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 24 0 1 4 0 1 5 0 1 6 0 52 3 0 0 52 3 0 4 52 2 0 1 32 85 0 16 0 1 7 0 52 0 0 2 6 34 24 0 5 16 0 1 8 0 52 0 0 2 6 34 10 0 5 16 0 1 9 0 52 0 0 2 33 24 0 1 4 0 1 10 0 1 6 0 52 3 0 0 52 3 0 4 52 2 0 1 32 21 0 1 4 0 1 11 0 1 6 0 52 3 0 0 52 3 0 4 52 2 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"FORM"
|
||||||
|
"list"
|
||||||
|
"dict"
|
||||||
|
"event"
|
||||||
|
"submit"
|
||||||
|
"modifiers"
|
||||||
|
"INPUT"
|
||||||
|
"SELECT"
|
||||||
|
"TEXTAREA"
|
||||||
|
"change"
|
||||||
|
"click"))
|
||||||
|
"get-verb-info"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (51 1 0 1 0 20 2 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"some"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 1 2 0 16 0 52 1 0 2 48 2 17 1 16 1 33 21 0 1 4 0 16 0 52 5 0 1 1 6 0 16 1 52 3 0 4 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"str"
|
||||||
|
"sx-"
|
||||||
|
"dict"
|
||||||
|
"method"
|
||||||
|
"upper"
|
||||||
|
"url"))
|
||||||
|
"ENGINE_VERBS"))
|
||||||
|
"build-request-headers"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 1 0 1 2 0 1 3 0 20 4 0 48 0 52 0 0 4 17 3 20 5 0 16 0 1 6 0 48 2 17 4 16 4 33 14 0 16 3 1 8 0 16 4 52 7 0 3 32 1 0 2 5 20 5 0 20 9 0 1 10 0 48 1 1 11 0 48 2 17 4 16 4 33 14 0 16 3 1 12 0 16 4 52 7 0 3 32 1 0 2 5 16 2 33 14 0 16 3 1 13 0 16 2 52 7 0 3 32 1 0 2 5 20 5 0 16 0 1 14 0 48 2 17 4 16 4 33 38 0 20 15 0 16 4 48 1 17 5 16 5 33 20 0 51 17 0 1 3 1 5 16 5 52 18 0 1 52 16 0 2 32 1 0 2 32 1 0 2 5 16 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict"
|
||||||
|
"SX-Request"
|
||||||
|
"true"
|
||||||
|
"SX-Current-URL"
|
||||||
|
"browser-location-href"
|
||||||
|
"dom-get-attr"
|
||||||
|
"sx-target"
|
||||||
|
"dict-set!"
|
||||||
|
"SX-Target"
|
||||||
|
"dom-query"
|
||||||
|
"script[data-components][data-hash]"
|
||||||
|
"data-hash"
|
||||||
|
"SX-Components-Hash"
|
||||||
|
"SX-Css"
|
||||||
|
"sx-headers"
|
||||||
|
"parse-header-value"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 16 0 18 1 16 0 52 2 0 2 52 1 0 1 52 0 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"str"
|
||||||
|
"get"))
|
||||||
|
"keys"))
|
||||||
|
"process-response-headers"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 1 0 16 0 1 2 0 48 1 1 3 0 16 0 1 4 0 48 1 1 5 0 16 0 1 6 0 48 1 1 7 0 16 0 1 8 0 48 1 1 9 0 16 0 1 10 0 48 1 1 11 0 16 0 1 12 0 48 1 1 13 0 16 0 1 14 0 48 1 1 15 0 16 0 1 16 0 48 1 1 17 0 16 0 1 18 0 48 1 1 19 0 16 0 1 20 0 48 1 1 21 0 16 0 1 22 0 48 1 1 23 0 16 0 1 24 0 48 1 1 25 0 16 0 1 26 0 48 1 52 0 0 26 50)
|
||||||
|
:constants (
|
||||||
|
"dict"
|
||||||
|
"redirect"
|
||||||
|
"SX-Redirect"
|
||||||
|
"refresh"
|
||||||
|
"SX-Refresh"
|
||||||
|
"trigger"
|
||||||
|
"SX-Trigger"
|
||||||
|
"retarget"
|
||||||
|
"SX-Retarget"
|
||||||
|
"reswap"
|
||||||
|
"SX-Reswap"
|
||||||
|
"location"
|
||||||
|
"SX-Location"
|
||||||
|
"replace-url"
|
||||||
|
"SX-Replace-Url"
|
||||||
|
"css-hash"
|
||||||
|
"SX-Css-Hash"
|
||||||
|
"trigger-swap"
|
||||||
|
"SX-Trigger-After-Swap"
|
||||||
|
"trigger-settle"
|
||||||
|
"SX-Trigger-After-Settle"
|
||||||
|
"content-type"
|
||||||
|
"Content-Type"
|
||||||
|
"cache-invalidate"
|
||||||
|
"SX-Cache-Invalidate"
|
||||||
|
"cache-update"
|
||||||
|
"SX-Cache-Update"))
|
||||||
|
"parse-swap-spec"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 6 34 4 0 5 20 1 0 1 2 0 52 0 0 2 17 2 16 2 52 3 0 1 17 3 16 1 17 4 51 5 0 1 4 16 2 52 6 0 1 52 4 0 2 5 1 8 0 16 3 1 9 0 16 4 52 7 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"split"
|
||||||
|
"DEFAULT_SWAP"
|
||||||
|
" "
|
||||||
|
"first"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 6 0 3 19 0 32 19 0 16 0 1 2 0 52 0 0 2 33 6 0 4 19 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"transition:true"
|
||||||
|
"transition:false"))
|
||||||
|
"rest"
|
||||||
|
"dict"
|
||||||
|
"style"
|
||||||
|
"transition"))
|
||||||
|
"parse-retry-spec"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 4 0 2 32 62 0 16 0 1 2 0 52 1 0 2 17 1 1 4 0 16 1 52 5 0 1 1 6 0 16 1 1 9 0 52 8 0 2 1 10 0 52 7 0 2 1 11 0 16 1 1 12 0 52 8 0 2 1 13 0 52 7 0 2 52 3 0 6 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"split"
|
||||||
|
":"
|
||||||
|
"dict"
|
||||||
|
"strategy"
|
||||||
|
"first"
|
||||||
|
"start-ms"
|
||||||
|
"parse-int"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
1000
|
||||||
|
"cap-ms"
|
||||||
|
2
|
||||||
|
30000))
|
||||||
|
"next-retry-ms"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 16 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"min"
|
||||||
|
"*"
|
||||||
|
2))
|
||||||
|
"filter-params"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 0 0 1 33 5 0 16 1 32 116 0 16 0 1 2 0 52 1 0 2 33 7 0 52 3 0 0 32 97 0 16 0 1 4 0 52 1 0 2 33 5 0 16 1 32 80 0 16 0 1 6 0 52 5 0 2 33 39 0 20 8 0 16 0 1 11 0 52 10 0 2 1 12 0 52 9 0 2 52 7 0 2 17 2 51 14 0 1 2 16 1 52 13 0 2 32 29 0 20 8 0 16 0 1 12 0 52 9 0 2 52 7 0 2 17 2 51 15 0 1 2 16 1 52 13 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"="
|
||||||
|
"none"
|
||||||
|
"list"
|
||||||
|
"*"
|
||||||
|
"starts-with?"
|
||||||
|
"not "
|
||||||
|
"map"
|
||||||
|
"trim"
|
||||||
|
"split"
|
||||||
|
"slice"
|
||||||
|
4
|
||||||
|
","
|
||||||
|
"filter"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 52 2 0 1 52 1 0 2 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"first"))
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 52 1 0 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"contains?"
|
||||||
|
"first"))))
|
||||||
|
"resolve-target"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 52 2 0 1 6 34 10 0 5 16 1 1 4 0 52 3 0 2 33 5 0 16 0 32 29 0 16 1 1 5 0 52 3 0 2 33 10 0 20 6 0 16 0 49 1 32 7 0 20 7 0 16 1 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"sx-target"
|
||||||
|
"nil?"
|
||||||
|
"="
|
||||||
|
"this"
|
||||||
|
"closest"
|
||||||
|
"dom-parent"
|
||||||
|
"dom-query"))
|
||||||
|
"apply-optimistic"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 52 2 0 1 33 4 0 2 32 191 0 20 3 0 16 0 48 1 6 34 3 0 5 16 0 17 2 1 5 0 16 2 1 6 0 16 1 52 4 0 4 17 3 16 1 1 8 0 52 7 0 2 33 50 0 16 3 1 10 0 20 11 0 16 2 1 10 0 48 2 52 9 0 3 5 20 12 0 16 2 1 10 0 1 13 0 48 3 5 20 12 0 16 2 1 14 0 1 15 0 48 3 32 94 0 16 1 1 16 0 52 7 0 2 33 34 0 16 3 1 17 0 20 18 0 16 2 1 17 0 48 2 52 9 0 3 5 20 19 0 16 2 1 17 0 3 48 3 32 48 0 16 1 1 21 0 52 20 0 2 33 35 0 16 1 1 23 0 52 22 0 2 17 4 16 3 1 24 0 16 4 52 9 0 3 5 20 25 0 16 2 16 4 48 2 32 1 0 2 5 16 3 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"sx-optimistic"
|
||||||
|
"nil?"
|
||||||
|
"resolve-target"
|
||||||
|
"dict"
|
||||||
|
"target"
|
||||||
|
"directive"
|
||||||
|
"="
|
||||||
|
"remove"
|
||||||
|
"dict-set!"
|
||||||
|
"opacity"
|
||||||
|
"dom-get-style"
|
||||||
|
"dom-set-style"
|
||||||
|
"0"
|
||||||
|
"pointer-events"
|
||||||
|
"none"
|
||||||
|
"disable"
|
||||||
|
"disabled"
|
||||||
|
"dom-get-prop"
|
||||||
|
"dom-set-prop"
|
||||||
|
"starts-with?"
|
||||||
|
"add-class:"
|
||||||
|
"slice"
|
||||||
|
10
|
||||||
|
"add-class"
|
||||||
|
"dom-add-class"))
|
||||||
|
"revert-optimistic"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 33 153 0 16 0 1 1 0 52 0 0 2 17 1 16 0 1 2 0 52 0 0 2 17 2 16 2 1 4 0 52 3 0 2 33 44 0 20 5 0 16 1 1 6 0 16 0 1 6 0 52 0 0 2 6 34 4 0 5 1 7 0 48 3 5 20 5 0 16 1 1 8 0 1 7 0 49 3 32 72 0 16 2 1 9 0 52 3 0 2 33 28 0 20 10 0 16 1 1 11 0 16 0 1 11 0 52 0 0 2 6 34 2 0 5 4 49 3 32 32 0 16 0 1 12 0 52 0 0 2 33 19 0 20 13 0 16 1 16 0 1 12 0 52 0 0 2 49 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"target"
|
||||||
|
"directive"
|
||||||
|
"="
|
||||||
|
"remove"
|
||||||
|
"dom-set-style"
|
||||||
|
"opacity"
|
||||||
|
""
|
||||||
|
"pointer-events"
|
||||||
|
"disable"
|
||||||
|
"dom-set-prop"
|
||||||
|
"disabled"
|
||||||
|
"add-class"
|
||||||
|
"dom-remove-class"))
|
||||||
|
"find-oob-swaps"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (52 0 0 0 17 1 51 2 0 1 0 1 1 1 3 0 1 4 0 52 0 0 2 52 1 0 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 1 2 0 16 0 1 3 0 52 1 0 3 48 2 17 1 51 5 0 1 0 0 1 16 1 52 4 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"str"
|
||||||
|
"["
|
||||||
|
"]"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 18 0 48 2 6 34 4 0 5 1 1 0 17 1 20 2 0 16 0 48 1 17 2 20 3 0 16 0 18 0 48 2 5 16 2 33 29 0 20 4 0 18 1 1 6 0 16 0 1 7 0 16 1 1 8 0 16 2 52 5 0 6 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"outerHTML"
|
||||||
|
"dom-id"
|
||||||
|
"dom-remove-attr"
|
||||||
|
"append!"
|
||||||
|
"dict"
|
||||||
|
"element"
|
||||||
|
"swap-type"
|
||||||
|
"target-id"))))
|
||||||
|
"sx-swap-oob"
|
||||||
|
"hx-swap-oob"))
|
||||||
|
"morph-node"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 6 34 11 0 5 20 0 0 16 0 1 2 0 48 2 33 4 0 2 32 137 1 20 0 0 16 0 1 3 0 48 2 6 33 55 0 5 20 4 0 16 0 1 5 0 48 2 6 33 40 0 5 20 0 0 16 1 1 3 0 48 2 6 33 25 0 5 20 7 0 16 0 1 3 0 48 2 20 7 0 16 1 1 3 0 48 2 52 6 0 2 33 12 0 20 8 0 16 0 16 1 49 2 32 53 1 20 10 0 16 0 48 1 20 10 0 16 1 48 1 52 6 0 2 52 9 0 1 6 34 23 0 5 20 11 0 16 0 48 1 20 11 0 16 1 48 1 52 6 0 2 52 9 0 1 33 24 0 20 12 0 20 13 0 16 0 48 1 20 14 0 16 1 48 1 16 0 49 3 32 233 0 20 10 0 16 0 48 1 1 15 0 52 6 0 2 6 34 15 0 5 20 10 0 16 0 48 1 1 16 0 52 6 0 2 33 46 0 20 17 0 16 0 48 1 20 17 0 16 1 48 1 52 6 0 2 52 9 0 1 33 17 0 20 18 0 16 0 20 17 0 16 1 48 1 49 2 32 1 0 2 32 151 0 20 10 0 16 0 48 1 1 19 0 52 6 0 2 33 133 0 20 0 0 16 0 1 3 0 48 2 6 33 44 0 5 20 0 0 16 1 1 3 0 48 2 6 33 29 0 5 20 7 0 16 0 1 3 0 48 2 20 7 0 16 1 1 3 0 48 2 52 6 0 2 52 9 0 1 33 18 0 20 20 0 16 0 48 1 5 20 21 0 16 0 48 1 32 1 0 2 5 20 22 0 16 0 16 1 48 2 5 20 23 0 16 0 48 1 6 33 8 0 5 20 24 0 16 0 48 1 52 9 0 1 33 12 0 20 25 0 16 0 16 1 49 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-has-attr?"
|
||||||
|
"sx-preserve"
|
||||||
|
"sx-ignore"
|
||||||
|
"data-sx-island"
|
||||||
|
"is-processed?"
|
||||||
|
"island-hydrated"
|
||||||
|
"="
|
||||||
|
"dom-get-attr"
|
||||||
|
"morph-island-children"
|
||||||
|
"not"
|
||||||
|
"dom-node-type"
|
||||||
|
"dom-node-name"
|
||||||
|
"dom-replace-child"
|
||||||
|
"dom-parent"
|
||||||
|
"dom-clone"
|
||||||
|
3
|
||||||
|
8
|
||||||
|
"dom-text-content"
|
||||||
|
"dom-set-text-content"
|
||||||
|
1
|
||||||
|
"dispose-island"
|
||||||
|
"dispose-islands-in"
|
||||||
|
"sync-attrs"
|
||||||
|
"dom-is-active-element?"
|
||||||
|
"dom-is-input-element?"
|
||||||
|
"morph-children"))
|
||||||
|
"sync-attrs"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 6 34 4 0 5 1 2 0 17 2 16 2 52 3 0 1 33 7 0 52 4 0 0 32 9 0 16 2 1 6 0 52 5 0 2 17 3 51 8 0 1 0 1 3 20 9 0 16 1 48 1 52 7 0 2 5 51 10 0 1 1 1 3 1 0 20 9 0 16 0 48 1 52 7 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-sx-reactive-attrs"
|
||||||
|
""
|
||||||
|
"empty?"
|
||||||
|
"list"
|
||||||
|
"split"
|
||||||
|
","
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (16 0 52 0 0 1 17 1 16 0 1 2 0 52 1 0 2 17 2 20 5 0 18 0 16 1 48 2 16 2 52 4 0 2 52 3 0 1 6 33 13 0 5 18 1 16 1 52 6 0 2 52 3 0 1 33 14 0 20 7 0 18 0 16 1 16 2 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"dom-get-attr"
|
||||||
|
"contains?"
|
||||||
|
"dom-set-attr"))
|
||||||
|
"dom-attr-list"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (16 0 52 0 0 1 17 1 20 2 0 18 0 16 1 48 2 52 1 0 1 6 33 31 0 5 18 1 16 1 52 3 0 2 52 1 0 1 6 33 14 0 5 16 1 1 5 0 52 4 0 2 52 1 0 1 33 12 0 20 6 0 18 2 16 1 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"first"
|
||||||
|
"not"
|
||||||
|
"dom-has-attr?"
|
||||||
|
"contains?"
|
||||||
|
"="
|
||||||
|
"data-sx-reactive-attrs"
|
||||||
|
"dom-remove-attr"))))
|
||||||
|
"morph-children"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 2 20 0 0 16 1 48 1 17 3 51 2 0 52 3 0 0 16 2 52 1 0 3 17 4 1 4 0 17 5 51 6 0 1 4 1 5 1 2 1 0 16 3 52 5 0 2 5 51 7 0 1 5 1 2 1 0 16 5 16 2 52 9 0 1 52 8 0 2 52 5 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-child-list"
|
||||||
|
"reduce"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 1 48 1 17 2 16 2 33 16 0 16 0 16 2 16 1 52 1 0 3 5 16 0 32 2 0 16 0 50)
|
||||||
|
:constants (
|
||||||
|
"dom-id"
|
||||||
|
"dict-set!"))
|
||||||
|
"dict"
|
||||||
|
0
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 4
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 16 1 33 11 0 18 0 16 1 52 1 0 2 32 1 0 2 17 2 16 2 6 33 11 0 5 16 2 52 3 0 1 52 2 0 1 33 100 0 18 1 18 2 52 5 0 1 52 4 0 2 6 33 19 0 5 16 2 18 2 18 1 52 7 0 2 52 6 0 2 52 2 0 1 33 39 0 20 8 0 18 3 16 2 18 1 18 2 52 5 0 1 52 4 0 2 33 11 0 18 2 18 1 52 7 0 2 32 1 0 2 48 3 32 1 0 2 5 20 9 0 16 2 16 0 48 2 5 18 1 52 10 0 1 19 1 32 100 0 18 1 18 2 52 5 0 1 52 4 0 2 33 71 0 18 2 18 1 52 7 0 2 17 3 20 0 0 16 3 48 1 6 33 7 0 5 16 1 52 2 0 1 33 19 0 20 8 0 18 3 20 11 0 16 0 48 1 16 3 49 3 32 18 0 20 9 0 16 3 16 0 48 2 5 18 1 52 10 0 1 19 1 32 14 0 20 12 0 18 3 20 11 0 16 0 48 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-id"
|
||||||
|
"dict-get"
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"="
|
||||||
|
"nth"
|
||||||
|
"dom-insert-before"
|
||||||
|
"morph-node"
|
||||||
|
"inc"
|
||||||
|
"dom-clone"
|
||||||
|
"dom-append"))
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (16 0 18 0 52 0 0 2 33 76 0 18 1 16 0 52 1 0 2 17 1 20 2 0 16 1 18 2 48 2 6 33 34 0 5 20 4 0 16 1 1 5 0 48 2 52 3 0 1 6 33 15 0 5 20 4 0 16 1 1 6 0 48 2 52 3 0 1 33 12 0 20 7 0 18 2 16 1 49 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
">="
|
||||||
|
"nth"
|
||||||
|
"dom-is-child-of?"
|
||||||
|
"not"
|
||||||
|
"dom-has-attr?"
|
||||||
|
"sx-preserve"
|
||||||
|
"sx-ignore"
|
||||||
|
"dom-remove-child"))
|
||||||
|
"range"
|
||||||
|
"len"))
|
||||||
|
"morph-island-children"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 2 20 0 0 16 1 1 1 0 48 2 17 3 20 0 0 16 0 1 2 0 48 2 17 4 20 0 0 16 1 1 2 0 48 2 17 5 52 3 0 0 17 6 52 3 0 0 17 7 51 5 0 1 6 16 3 52 4 0 2 5 51 6 0 1 7 16 5 52 4 0 2 5 51 7 0 1 6 16 2 52 4 0 2 5 51 8 0 1 7 1 0 16 4 52 4 0 2 5 20 9 0 16 1 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"[data-sx-lake]"
|
||||||
|
"[data-sx-marsh]"
|
||||||
|
"dict"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 33 13 0 18 0 16 1 16 0 52 2 0 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-sx-lake"
|
||||||
|
"dict-set!"))
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 33 13 0 18 0 16 1 16 0 52 2 0 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-sx-marsh"
|
||||||
|
"dict-set!"))
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 18 0 16 1 52 2 0 2 17 2 16 2 33 22 0 20 3 0 16 0 16 2 48 2 5 20 4 0 16 0 16 2 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-sx-lake"
|
||||||
|
"dict-get"
|
||||||
|
"sync-attrs"
|
||||||
|
"morph-children"))
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 18 0 16 1 52 2 0 2 17 2 16 2 33 14 0 20 3 0 16 0 16 2 18 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-sx-marsh"
|
||||||
|
"dict-get"
|
||||||
|
"morph-marsh"))
|
||||||
|
"process-signal-updates"))
|
||||||
|
"morph-marsh"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 3 20 0 0 16 0 1 2 0 48 2 17 4 20 3 0 16 1 48 1 17 5 16 4 6 33 18 0 5 16 5 6 33 11 0 5 16 5 52 5 0 1 52 4 0 1 33 61 0 20 6 0 16 5 48 1 17 6 16 3 33 16 0 20 7 0 16 3 16 6 52 8 0 1 48 2 32 2 0 16 6 17 7 20 9 0 16 0 48 1 5 20 10 0 16 0 51 11 0 1 7 1 4 1 0 49 2 32 19 0 20 12 0 16 0 16 1 48 2 5 20 13 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-data"
|
||||||
|
"sx-marsh-transform"
|
||||||
|
"sx-marsh-env"
|
||||||
|
"dom-inner-html"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"parse"
|
||||||
|
"cek-call"
|
||||||
|
"list"
|
||||||
|
"dispose-marsh-scope"
|
||||||
|
"with-marsh-scope"
|
||||||
|
(code :upvalue-count 3
|
||||||
|
:bytecode (20 0 0 18 0 18 1 2 48 3 17 0 20 1 0 18 2 2 48 2 5 20 2 0 18 2 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-to-dom"
|
||||||
|
"dom-remove-children-after"
|
||||||
|
"dom-append"))
|
||||||
|
"sync-attrs"
|
||||||
|
"morph-children"))
|
||||||
|
"process-signal-updates"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 51 3 0 16 1 52 2 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-query-all"
|
||||||
|
"[data-sx-signal]"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 33 94 0 16 1 1 3 0 52 2 0 2 17 2 16 2 1 5 0 52 4 0 2 33 67 0 16 1 1 5 0 16 2 52 6 0 3 17 3 16 1 16 2 1 8 0 52 7 0 2 52 6 0 2 17 4 20 9 0 16 4 48 1 17 5 20 10 0 20 11 0 16 3 48 1 16 5 48 2 5 20 12 0 16 0 1 1 0 49 2 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"data-sx-signal"
|
||||||
|
"index-of"
|
||||||
|
":"
|
||||||
|
">"
|
||||||
|
0
|
||||||
|
"slice"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"json-parse"
|
||||||
|
"reset!"
|
||||||
|
"use-store"
|
||||||
|
"dom-remove-attr"))))
|
||||||
|
"swap-dom-nodes"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 2 6 1 0 0 52 1 0 2 33 56 0 5 20 2 0 16 1 48 1 33 12 0 20 3 0 16 0 16 1 49 2 32 30 0 20 4 0 1 5 0 2 48 2 17 3 20 6 0 16 3 16 1 48 2 5 20 3 0 16 0 16 3 49 2 32 73 1 6 1 7 0 52 1 0 2 33 117 0 5 20 8 0 16 0 48 1 17 3 20 9 0 16 1 48 1 17 4 20 2 0 16 1 48 1 33 71 0 20 10 0 16 1 48 1 17 5 16 5 33 45 0 20 9 0 16 5 48 1 17 4 5 20 11 0 16 3 16 4 16 0 48 3 5 20 12 0 16 5 48 1 17 6 20 13 0 16 3 16 4 16 6 48 3 32 9 0 20 14 0 16 3 16 0 48 2 32 11 0 20 11 0 16 3 16 4 16 0 48 3 5 16 4 32 201 0 6 1 15 0 52 1 0 2 33 13 0 5 20 16 0 16 0 16 1 49 2 32 177 0 6 1 17 0 52 1 0 2 33 13 0 5 20 6 0 16 0 16 1 49 2 32 153 0 6 1 18 0 52 1 0 2 33 13 0 5 20 19 0 16 0 16 1 49 2 32 129 0 6 1 20 0 52 1 0 2 33 20 0 5 20 21 0 20 8 0 16 0 48 1 16 1 16 0 49 3 32 98 0 6 1 22 0 52 1 0 2 33 18 0 5 20 14 0 20 8 0 16 0 48 1 16 0 49 2 32 69 0 6 1 23 0 52 1 0 2 33 5 0 5 2 32 53 0 5 20 2 0 16 1 48 1 33 12 0 20 3 0 16 0 16 1 49 2 32 30 0 20 4 0 1 5 0 2 48 2 17 3 20 6 0 16 3 16 1 48 2 5 20 3 0 16 0 16 3 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"innerHTML"
|
||||||
|
"="
|
||||||
|
"dom-is-fragment?"
|
||||||
|
"morph-children"
|
||||||
|
"dom-create-element"
|
||||||
|
"div"
|
||||||
|
"dom-append"
|
||||||
|
"outerHTML"
|
||||||
|
"dom-parent"
|
||||||
|
"dom-clone"
|
||||||
|
"dom-first-child"
|
||||||
|
"dom-replace-child"
|
||||||
|
"dom-next-sibling"
|
||||||
|
"insert-remaining-siblings"
|
||||||
|
"dom-remove-child"
|
||||||
|
"afterend"
|
||||||
|
"dom-insert-after"
|
||||||
|
"beforeend"
|
||||||
|
"afterbegin"
|
||||||
|
"dom-prepend"
|
||||||
|
"beforebegin"
|
||||||
|
"dom-insert-before"
|
||||||
|
"delete"
|
||||||
|
"none"))
|
||||||
|
"insert-remaining-siblings"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 2 33 33 0 20 0 0 16 2 48 1 17 3 20 1 0 16 1 16 2 48 2 5 20 2 0 16 0 16 2 16 3 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-next-sibling"
|
||||||
|
"dom-insert-after"
|
||||||
|
"insert-remaining-siblings"))
|
||||||
|
"swap-html-string"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 2 6 1 0 0 52 1 0 2 33 13 0 5 20 2 0 16 0 16 1 49 2 32 212 0 6 1 3 0 52 1 0 2 33 38 0 5 20 4 0 16 0 48 1 17 3 20 5 0 16 0 1 6 0 16 1 48 3 5 20 7 0 16 3 16 0 48 2 5 16 3 32 163 0 6 1 6 0 52 1 0 2 33 16 0 5 20 5 0 16 0 1 6 0 16 1 49 3 32 136 0 6 1 8 0 52 1 0 2 33 16 0 5 20 5 0 16 0 1 8 0 16 1 49 3 32 109 0 6 1 9 0 52 1 0 2 33 16 0 5 20 5 0 16 0 1 9 0 16 1 49 3 32 82 0 6 1 10 0 52 1 0 2 33 16 0 5 20 5 0 16 0 1 10 0 16 1 49 3 32 55 0 6 1 11 0 52 1 0 2 33 18 0 5 20 7 0 20 4 0 16 0 48 1 16 0 49 2 32 26 0 6 1 12 0 52 1 0 2 33 5 0 5 2 32 10 0 5 20 2 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"innerHTML"
|
||||||
|
"="
|
||||||
|
"dom-set-inner-html"
|
||||||
|
"outerHTML"
|
||||||
|
"dom-parent"
|
||||||
|
"dom-insert-adjacent-html"
|
||||||
|
"afterend"
|
||||||
|
"dom-remove-child"
|
||||||
|
"beforeend"
|
||||||
|
"afterbegin"
|
||||||
|
"beforebegin"
|
||||||
|
"delete"
|
||||||
|
"none"))
|
||||||
|
"handle-history"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 3 20 0 0 16 0 1 2 0 48 2 17 4 16 2 1 4 0 52 3 0 2 17 5 16 5 33 10 0 20 5 0 16 5 49 1 32 101 0 16 3 6 33 14 0 5 16 3 1 8 0 52 7 0 2 52 6 0 1 33 27 0 20 9 0 16 3 1 10 0 52 7 0 2 33 5 0 16 1 32 2 0 16 3 49 1 32 51 0 16 4 6 33 14 0 5 16 4 1 8 0 52 7 0 2 52 6 0 1 33 27 0 20 5 0 16 4 1 10 0 52 7 0 2 33 5 0 16 1 32 2 0 16 4 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"sx-push-url"
|
||||||
|
"sx-replace-url"
|
||||||
|
"get"
|
||||||
|
"replace-url"
|
||||||
|
"browser-replace-state"
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"false"
|
||||||
|
"browser-push-state"
|
||||||
|
"true"))
|
||||||
|
"PRELOAD_TTL"
|
||||||
|
30000
|
||||||
|
"preload-cache-get"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 16 1 52 0 0 2 17 2 16 2 52 1 0 1 33 4 0 2 32 52 0 20 4 0 48 0 16 2 1 6 0 52 5 0 2 52 3 0 2 20 7 0 52 2 0 2 33 13 0 16 0 16 1 52 8 0 2 5 2 32 11 0 16 0 16 1 52 8 0 2 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"dict-get"
|
||||||
|
"nil?"
|
||||||
|
">"
|
||||||
|
"-"
|
||||||
|
"now-ms"
|
||||||
|
"get"
|
||||||
|
"timestamp"
|
||||||
|
"PRELOAD_TTL"
|
||||||
|
"dict-delete!"))
|
||||||
|
"preload-cache-set"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 0 16 1 1 2 0 16 2 1 3 0 16 3 1 4 0 20 5 0 48 0 52 1 0 6 52 0 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"dict"
|
||||||
|
"text"
|
||||||
|
"content-type"
|
||||||
|
"timestamp"
|
||||||
|
"now-ms"))
|
||||||
|
"classify-trigger"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 1 16 1 1 3 0 52 2 0 2 33 6 0 1 4 0 32 57 0 16 1 1 5 0 52 2 0 2 33 6 0 1 5 0 32 39 0 16 1 1 6 0 52 2 0 2 33 6 0 1 6 0 32 21 0 16 1 1 7 0 52 2 0 2 33 6 0 1 7 0 32 3 0 1 1 0 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"event"
|
||||||
|
"="
|
||||||
|
"every"
|
||||||
|
"poll"
|
||||||
|
"intersect"
|
||||||
|
"load"
|
||||||
|
"revealed"))
|
||||||
|
"should-boost-link?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 6 33 119 0 5 16 1 1 4 0 52 3 0 2 52 2 0 1 6 33 101 0 5 16 1 1 5 0 52 3 0 2 52 2 0 1 6 33 83 0 5 16 1 1 6 0 52 3 0 2 52 2 0 1 6 33 65 0 5 20 7 0 16 1 48 1 6 33 53 0 5 20 8 0 16 0 1 9 0 48 2 52 2 0 1 6 33 34 0 5 20 8 0 16 0 1 10 0 48 2 52 2 0 1 6 33 15 0 5 20 8 0 16 0 1 11 0 48 2 52 2 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"href"
|
||||||
|
"not"
|
||||||
|
"starts-with?"
|
||||||
|
"#"
|
||||||
|
"javascript:"
|
||||||
|
"mailto:"
|
||||||
|
"browser-same-origin?"
|
||||||
|
"dom-has-attr?"
|
||||||
|
"sx-get"
|
||||||
|
"sx-post"
|
||||||
|
"sx-disable"))
|
||||||
|
"should-boost-form?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 1 2 0 48 2 52 0 0 1 6 33 34 0 5 20 1 0 16 0 1 3 0 48 2 52 0 0 1 6 33 15 0 5 20 1 0 16 0 1 4 0 48 2 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"dom-has-attr?"
|
||||||
|
"sx-get"
|
||||||
|
"sx-post"
|
||||||
|
"sx-disable"))
|
||||||
|
"parse-sse-swap"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 6 34 4 0 5 1 2 0 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-attr"
|
||||||
|
"sx-sse-swap"
|
||||||
|
"message")))))
|
||||||
107
shared/static/wasm/sx/freeze.sxbc
Normal file
107
shared/static/wasm/sx/freeze.sxbc
Normal file
@@ -0,0 +1,107 @@
|
|||||||
|
(sxbc 1 "19bca721c37b25b6"
|
||||||
|
(code
|
||||||
|
:bytecode (52 1 0 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 50)
|
||||||
|
:constants (
|
||||||
|
"freeze-registry"
|
||||||
|
"dict"
|
||||||
|
"freeze-signal"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 1 0 2 52 0 0 2 17 2 16 2 33 56 0 20 3 0 16 2 52 2 0 2 6 34 5 0 5 52 4 0 0 17 3 20 5 0 16 3 1 7 0 16 0 1 8 0 16 1 52 6 0 4 48 2 5 20 3 0 16 2 16 3 52 9 0 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"context"
|
||||||
|
"sx-freeze-scope"
|
||||||
|
"get"
|
||||||
|
"freeze-registry"
|
||||||
|
"list"
|
||||||
|
"append!"
|
||||||
|
"dict"
|
||||||
|
"name"
|
||||||
|
"signal"
|
||||||
|
"dict-set!"))
|
||||||
|
"freeze-scope"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 1 0 16 0 52 0 0 2 5 20 3 0 16 0 52 4 0 0 52 2 0 3 5 20 5 0 16 1 2 48 2 5 1 1 0 52 6 0 1 5 2 50)
|
||||||
|
:constants (
|
||||||
|
"scope-push!"
|
||||||
|
"sx-freeze-scope"
|
||||||
|
"dict-set!"
|
||||||
|
"freeze-registry"
|
||||||
|
"list"
|
||||||
|
"cek-call"
|
||||||
|
"scope-pop!"))
|
||||||
|
"cek-freeze-scope"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 52 0 0 2 6 34 5 0 5 52 2 0 0 17 1 52 3 0 0 17 2 51 5 0 1 2 16 1 52 4 0 2 5 1 6 0 16 0 1 7 0 16 2 52 3 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"freeze-registry"
|
||||||
|
"list"
|
||||||
|
"dict"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 1 2 0 52 1 0 2 20 3 0 16 0 1 4 0 52 1 0 2 48 1 52 0 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"get"
|
||||||
|
"name"
|
||||||
|
"signal-value"
|
||||||
|
"signal"))
|
||||||
|
"name"
|
||||||
|
"signals"))
|
||||||
|
"cek-freeze-all"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 20 3 0 52 2 0 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"map"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"cek-freeze-scope"))
|
||||||
|
"keys"
|
||||||
|
"freeze-registry"))
|
||||||
|
"cek-thaw-scope"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 1 0 16 0 52 0 0 2 6 34 5 0 5 52 2 0 0 17 2 16 1 1 3 0 52 0 0 2 17 3 16 3 33 14 0 51 5 0 1 3 16 2 52 4 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"freeze-registry"
|
||||||
|
"list"
|
||||||
|
"signals"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 1 16 0 1 2 0 52 0 0 2 17 2 18 0 16 1 52 0 0 2 17 3 16 3 52 4 0 1 52 3 0 1 33 12 0 20 5 0 16 2 16 3 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"name"
|
||||||
|
"signal"
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"reset!"))))
|
||||||
|
"cek-thaw-all"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (51 1 0 16 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 2 0 52 1 0 2 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"cek-thaw-scope"
|
||||||
|
"get"
|
||||||
|
"name"))))
|
||||||
|
"freeze-to-sx"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 48 1 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"sx-serialize"
|
||||||
|
"cek-freeze-scope"))
|
||||||
|
"thaw-from-sx"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 16 1 52 2 0 1 52 1 0 1 33 27 0 16 1 52 3 0 1 17 2 20 4 0 16 2 1 6 0 52 5 0 2 16 2 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"sx-parse"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
"cek-thaw-scope"
|
||||||
|
"get"
|
||||||
|
"name")))))
|
||||||
119
shared/static/wasm/sx/harness-reactive.sxbc
Normal file
119
shared/static/wasm/sx/harness-reactive.sxbc
Normal file
@@ -0,0 +1,119 @@
|
|||||||
|
(sxbc 1 "57726b5b82c1a3cb"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 50)
|
||||||
|
:constants (
|
||||||
|
"assert-signal-value"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 2 20 1 0 16 2 16 1 1 3 0 16 1 1 4 0 16 2 52 2 0 4 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"deref"
|
||||||
|
"assert="
|
||||||
|
"str"
|
||||||
|
"Expected signal value "
|
||||||
|
", got "))
|
||||||
|
"assert-signal-has-subscribers"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 3 0 16 0 48 1 52 2 0 1 1 4 0 52 1 0 2 1 5 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
"signal-subscribers"
|
||||||
|
0
|
||||||
|
"Expected signal to have subscribers"))
|
||||||
|
"assert-signal-no-subscribers"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 20 3 0 16 0 48 1 52 2 0 1 1 4 0 52 1 0 2 1 5 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
"signal-subscribers"
|
||||||
|
0
|
||||||
|
"Expected signal to have no subscribers"))
|
||||||
|
"assert-signal-subscriber-count"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 1 0 16 0 48 1 52 0 0 1 17 2 20 2 0 16 2 16 1 1 4 0 16 1 1 5 0 16 2 52 3 0 4 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"len"
|
||||||
|
"signal-subscribers"
|
||||||
|
"assert="
|
||||||
|
"str"
|
||||||
|
"Expected "
|
||||||
|
" subscribers, got "))
|
||||||
|
"simulate-signal-set!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"reset!"))
|
||||||
|
"simulate-signal-swap!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"swap!"))
|
||||||
|
"assert-computed-dep-count"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 1 0 16 0 48 1 52 0 0 1 17 2 20 2 0 16 2 16 1 1 4 0 16 1 1 5 0 16 2 52 3 0 4 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"len"
|
||||||
|
"signal-deps"
|
||||||
|
"assert="
|
||||||
|
"str"
|
||||||
|
"Expected "
|
||||||
|
" deps, got "))
|
||||||
|
"assert-computed-depends-on"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 2 0 16 0 48 1 16 1 52 1 0 2 1 3 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
"contains?"
|
||||||
|
"signal-deps"
|
||||||
|
"Expected computed to depend on the given signal"))
|
||||||
|
"count-effect-runs"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 48 1 17 1 20 2 0 51 3 0 1 1 48 1 5 1 1 0 17 2 20 2 0 51 4 0 1 2 1 0 48 1 17 3 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"signal"
|
||||||
|
0
|
||||||
|
"effect"
|
||||||
|
(code :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"deref"))
|
||||||
|
(code :upvalue-count 2
|
||||||
|
:bytecode (18 0 1 1 0 52 0 0 2 19 0 5 20 2 0 18 1 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"cek-call"))))
|
||||||
|
"make-test-signal"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 52 1 0 0 17 2 20 2 0 51 3 0 1 2 1 1 48 1 5 1 0 0 16 1 1 4 0 16 2 65 2 0 50)
|
||||||
|
:constants (
|
||||||
|
"signal"
|
||||||
|
"list"
|
||||||
|
"effect"
|
||||||
|
(code :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 20 1 0 18 1 48 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"
|
||||||
|
"deref"))
|
||||||
|
"history"))
|
||||||
|
"assert-batch-coalesces"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 17 2 20 1 0 1 0 0 48 1 17 3 20 2 0 51 3 0 1 3 1 2 48 1 5 1 0 0 17 2 5 20 4 0 16 0 48 1 5 20 5 0 16 2 16 1 1 7 0 16 1 1 8 0 16 2 52 6 0 4 49 3 50)
|
||||||
|
:constants (
|
||||||
|
0
|
||||||
|
"signal"
|
||||||
|
"effect"
|
||||||
|
(code :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 18 0 48 1 5 18 1 1 2 0 52 1 0 2 19 1 50)
|
||||||
|
:constants (
|
||||||
|
"deref"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"batch"
|
||||||
|
"assert="
|
||||||
|
"str"
|
||||||
|
"Expected "
|
||||||
|
" notifications, got ")))))
|
||||||
393
shared/static/wasm/sx/harness-web.sxbc
Normal file
393
shared/static/wasm/sx/harness-web.sxbc
Normal file
@@ -0,0 +1,393 @@
|
|||||||
|
(sxbc 1 "b94a32e5b86d6f76"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 51 33 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 5 51 45 0 128 44 0 5 51 47 0 128 46 0 5 51 49 0 128 48 0 5 51 51 0 128 50 0 5 51 53 0 128 52 0 50)
|
||||||
|
:constants (
|
||||||
|
"mock-element"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 52 1 0 0 1 2 0 65 0 0 1 3 0 52 1 0 0 1 4 0 16 0 1 5 0 1 6 0 1 7 0 65 0 0 16 1 33 11 0 1 9 0 16 1 65 1 0 32 3 0 65 0 0 16 2 33 11 0 1 10 0 16 2 65 1 0 32 3 0 65 0 0 52 8 0 3 65 6 0 50)
|
||||||
|
:constants (
|
||||||
|
"children"
|
||||||
|
"list"
|
||||||
|
"listeners"
|
||||||
|
"event-log"
|
||||||
|
"tag"
|
||||||
|
"text"
|
||||||
|
""
|
||||||
|
"attrs"
|
||||||
|
"merge"
|
||||||
|
"class"
|
||||||
|
"id"))
|
||||||
|
"mock-set-text!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 16 1 52 0 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"text"))
|
||||||
|
"mock-append-child!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 2 0 52 1 0 2 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"
|
||||||
|
"get"
|
||||||
|
"children"))
|
||||||
|
"mock-set-attr!"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 16 1 16 2 52 0 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"get"
|
||||||
|
"attrs"))
|
||||||
|
"mock-get-attr"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 16 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"attrs"))
|
||||||
|
"mock-add-listener!"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 3 16 3 16 1 52 3 0 2 52 2 0 1 33 15 0 16 3 16 1 52 5 0 0 52 4 0 3 32 1 0 2 5 20 6 0 16 3 16 1 52 0 0 2 16 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"listeners"
|
||||||
|
"not"
|
||||||
|
"has-key?"
|
||||||
|
"dict-set!"
|
||||||
|
"list"
|
||||||
|
"append!"))
|
||||||
|
"simulate-click"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 1 2 0 52 0 0 2 17 1 16 1 33 14 0 51 4 0 1 0 16 1 52 3 0 2 32 1 0 2 5 20 5 0 16 0 1 6 0 52 0 0 2 1 7 0 1 2 0 65 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"listeners"
|
||||||
|
"click"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 1 2 0 18 0 1 3 0 1 4 0 65 2 0 52 1 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"cek-call"
|
||||||
|
"list"
|
||||||
|
"target"
|
||||||
|
"type"
|
||||||
|
"click"))
|
||||||
|
"append!"
|
||||||
|
"event-log"
|
||||||
|
"type"))
|
||||||
|
"simulate-input"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 16 1 48 3 5 16 0 1 3 0 52 2 0 2 1 4 0 52 2 0 2 17 2 16 2 33 14 0 51 6 0 1 0 16 2 52 5 0 2 32 1 0 2 5 20 7 0 16 0 1 8 0 52 2 0 2 1 1 0 16 1 1 9 0 1 4 0 65 2 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"mock-set-attr!"
|
||||||
|
"value"
|
||||||
|
"get"
|
||||||
|
"listeners"
|
||||||
|
"input"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 1 2 0 18 0 1 3 0 1 4 0 65 2 0 52 1 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"cek-call"
|
||||||
|
"list"
|
||||||
|
"target"
|
||||||
|
"type"
|
||||||
|
"input"))
|
||||||
|
"append!"
|
||||||
|
"event-log"
|
||||||
|
"type"))
|
||||||
|
"simulate-event"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 16 1 52 0 0 2 17 3 16 3 33 18 0 51 3 0 1 0 1 2 1 1 16 3 52 2 0 2 32 1 0 2 5 20 4 0 16 0 1 5 0 52 0 0 2 1 6 0 16 2 1 7 0 16 1 65 2 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"listeners"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (20 0 0 16 0 1 2 0 18 0 1 3 0 18 1 1 4 0 18 2 65 3 0 52 1 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"cek-call"
|
||||||
|
"list"
|
||||||
|
"target"
|
||||||
|
"detail"
|
||||||
|
"type"))
|
||||||
|
"append!"
|
||||||
|
"event-log"
|
||||||
|
"detail"
|
||||||
|
"type"))
|
||||||
|
"assert-text"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 2 20 2 0 16 2 16 1 1 4 0 16 1 1 5 0 16 2 1 6 0 52 3 0 5 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"text"
|
||||||
|
"assert="
|
||||||
|
"str"
|
||||||
|
"Expected text \""
|
||||||
|
"\", got \""
|
||||||
|
"\""))
|
||||||
|
"assert-attr"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 48 2 17 3 20 1 0 16 3 16 2 1 3 0 16 1 1 4 0 16 2 1 5 0 16 3 1 6 0 52 2 0 7 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"mock-get-attr"
|
||||||
|
"assert="
|
||||||
|
"str"
|
||||||
|
"Expected attr "
|
||||||
|
"=\""
|
||||||
|
"\", got \""
|
||||||
|
"\""))
|
||||||
|
"assert-class"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 6 34 4 0 5 1 2 0 17 2 20 3 0 16 2 1 6 0 52 5 0 2 16 1 52 4 0 2 1 8 0 16 1 1 9 0 16 2 1 10 0 52 7 0 5 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"mock-get-attr"
|
||||||
|
"class"
|
||||||
|
""
|
||||||
|
"assert"
|
||||||
|
"contains?"
|
||||||
|
"split"
|
||||||
|
" "
|
||||||
|
"str"
|
||||||
|
"Expected class \""
|
||||||
|
"\" in \""
|
||||||
|
"\""))
|
||||||
|
"assert-no-class"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 6 34 4 0 5 1 2 0 17 2 20 3 0 16 2 1 7 0 52 6 0 2 16 1 52 5 0 2 52 4 0 1 1 9 0 16 1 1 10 0 16 2 1 11 0 52 8 0 5 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"mock-get-attr"
|
||||||
|
"class"
|
||||||
|
""
|
||||||
|
"assert"
|
||||||
|
"not"
|
||||||
|
"contains?"
|
||||||
|
"split"
|
||||||
|
" "
|
||||||
|
"str"
|
||||||
|
"Expected no class \""
|
||||||
|
"\" but found in \""
|
||||||
|
"\""))
|
||||||
|
"assert-child-count"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 52 0 0 1 17 2 20 3 0 16 2 16 1 1 5 0 16 1 1 6 0 16 2 52 4 0 4 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"len"
|
||||||
|
"get"
|
||||||
|
"children"
|
||||||
|
"assert="
|
||||||
|
"str"
|
||||||
|
"Expected "
|
||||||
|
" children, got "))
|
||||||
|
"assert-event-fired"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 51 2 0 1 1 16 0 1 4 0 52 3 0 2 52 1 0 2 1 6 0 16 1 1 7 0 52 5 0 3 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
"some"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 18 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"type"))
|
||||||
|
"get"
|
||||||
|
"event-log"
|
||||||
|
"str"
|
||||||
|
"Expected event \""
|
||||||
|
"\" to have been fired"))
|
||||||
|
"assert-no-event"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 51 3 0 1 1 16 0 1 5 0 52 4 0 2 52 2 0 2 52 1 0 1 1 7 0 16 1 1 8 0 52 6 0 3 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
"not"
|
||||||
|
"some"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 18 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"type"))
|
||||||
|
"get"
|
||||||
|
"event-log"
|
||||||
|
"str"
|
||||||
|
"Expected event \""
|
||||||
|
"\" to NOT have been fired"))
|
||||||
|
"event-fire-count"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (51 2 0 1 1 16 0 1 4 0 52 3 0 2 52 1 0 2 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"len"
|
||||||
|
"filter"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 18 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"type"))
|
||||||
|
"get"
|
||||||
|
"event-log"))
|
||||||
|
"make-web-harness"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 1 0 16 0 48 2 17 1 20 2 0 16 1 1 3 0 1 4 0 65 0 0 1 5 0 20 6 0 1 7 0 1 8 0 1 5 0 48 3 65 2 0 48 3 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"make-harness"
|
||||||
|
"platform"
|
||||||
|
"harness-set!"
|
||||||
|
"dom"
|
||||||
|
"elements"
|
||||||
|
"root"
|
||||||
|
"mock-element"
|
||||||
|
"div"
|
||||||
|
"id"))
|
||||||
|
"is-renderable?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 4 0 3 32 118 0 16 0 52 1 0 1 33 4 0 3 32 105 0 16 0 52 2 0 1 33 4 0 3 32 92 0 16 0 52 3 0 1 33 4 0 3 32 79 0 16 0 52 4 0 1 33 4 0 4 32 66 0 16 0 52 6 0 1 52 5 0 1 33 4 0 4 32 49 0 16 0 52 7 0 1 33 4 0 3 32 36 0 16 0 52 8 0 1 17 1 16 1 52 10 0 1 1 11 0 52 9 0 2 6 33 11 0 5 16 1 52 4 0 1 52 5 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"string?"
|
||||||
|
"number?"
|
||||||
|
"boolean?"
|
||||||
|
"dict?"
|
||||||
|
"not"
|
||||||
|
"list?"
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"))
|
||||||
|
"is-render-leak?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 6 33 12 0 5 20 2 0 16 0 48 1 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"is-renderable?"))
|
||||||
|
"assert-renderable"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 1 0 16 0 48 1 1 3 0 16 1 1 4 0 16 0 52 5 0 1 16 0 52 6 0 1 33 6 0 1 7 0 32 48 0 16 0 52 8 0 1 6 33 26 0 5 16 0 52 10 0 1 52 9 0 1 6 33 11 0 5 16 0 52 11 0 1 52 6 0 1 33 6 0 1 12 0 32 3 0 1 13 0 52 2 0 5 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
"is-renderable?"
|
||||||
|
"str"
|
||||||
|
"Render leak in "
|
||||||
|
": "
|
||||||
|
"type-of"
|
||||||
|
"dict?"
|
||||||
|
" — dict would appear as {:key val} text in output"
|
||||||
|
"list?"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
" — list of dicts would appear as raw data in output"
|
||||||
|
" — non-renderable value would appear as text"))
|
||||||
|
"render-body-audit"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (52 0 0 0 17 1 51 2 0 1 1 16 0 52 1 0 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 33 88 0 20 1 0 18 0 1 2 0 16 0 52 3 0 1 33 6 0 1 4 0 32 48 0 16 0 52 5 0 1 6 33 26 0 5 16 0 52 7 0 1 52 6 0 1 6 33 11 0 5 16 0 52 8 0 1 52 3 0 1 33 6 0 1 9 0 32 3 0 1 10 0 1 11 0 16 0 52 12 0 1 65 2 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"is-render-leak?"
|
||||||
|
"append!"
|
||||||
|
"leak-kind"
|
||||||
|
"dict?"
|
||||||
|
"dict"
|
||||||
|
"list?"
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
"list-of-dicts"
|
||||||
|
"other"
|
||||||
|
"value-type"
|
||||||
|
"type-of"))))
|
||||||
|
"assert-render-body-clean"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 2 20 1 0 16 2 52 2 0 1 1 4 0 16 2 52 5 0 1 1 6 0 16 1 1 7 0 1 8 0 1 9 0 52 3 0 7 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"render-body-audit"
|
||||||
|
"assert"
|
||||||
|
"empty?"
|
||||||
|
"str"
|
||||||
|
"Render body has "
|
||||||
|
"len"
|
||||||
|
" leak(s) in "
|
||||||
|
". "
|
||||||
|
"render-to-html/render-to-dom render ALL body expressions — "
|
||||||
|
"put side effects in let bindings, not body expressions."))
|
||||||
|
"mock-render"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 4 0 2 32 173 0 16 0 52 1 0 1 33 25 0 20 2 0 1 3 0 48 1 17 1 20 4 0 16 1 16 0 48 2 5 16 1 32 139 0 16 0 52 5 0 1 33 29 0 20 2 0 1 3 0 48 1 17 1 20 4 0 16 1 16 0 52 6 0 1 48 2 5 16 1 32 101 0 16 0 52 8 0 1 52 7 0 1 33 4 0 2 32 84 0 16 0 52 9 0 1 33 4 0 2 32 71 0 16 0 52 10 0 1 17 1 16 1 52 12 0 1 1 13 0 52 11 0 2 52 7 0 1 33 4 0 2 32 39 0 20 2 0 20 14 0 16 1 48 1 48 1 17 2 2 17 3 51 15 0 1 2 1 3 17 3 16 3 16 0 52 16 0 1 48 1 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"string?"
|
||||||
|
"mock-element"
|
||||||
|
"TEXT"
|
||||||
|
"mock-set-text!"
|
||||||
|
"number?"
|
||||||
|
"str"
|
||||||
|
"not"
|
||||||
|
"list?"
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 33 127 0 16 0 52 2 0 1 17 1 16 1 52 4 0 1 1 5 0 52 3 0 2 33 62 0 16 0 52 6 0 1 52 1 0 1 52 0 0 1 33 41 0 20 7 0 18 0 20 8 0 16 1 48 1 16 0 1 10 0 52 9 0 2 48 3 5 18 1 16 0 52 6 0 1 52 6 0 1 49 1 32 1 0 2 32 38 0 20 11 0 16 1 48 1 17 2 16 2 33 12 0 20 12 0 18 0 16 2 48 2 32 1 0 2 5 18 1 16 0 52 6 0 1 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"rest"
|
||||||
|
"mock-set-attr!"
|
||||||
|
"keyword-name"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"mock-render"
|
||||||
|
"mock-append-child!"))
|
||||||
|
"rest"))
|
||||||
|
"mock-render-fragment"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (51 1 0 20 3 0 16 0 52 2 0 2 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"filter"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"nil?"))
|
||||||
|
"map"
|
||||||
|
"mock-render"))
|
||||||
|
"assert-single-render-root"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 2 20 1 0 16 2 52 3 0 1 1 4 0 52 2 0 2 1 6 0 16 1 1 7 0 16 2 52 3 0 1 1 8 0 1 9 0 1 10 0 52 5 0 7 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"mock-render-fragment"
|
||||||
|
"assert"
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"str"
|
||||||
|
"Expected single render root in "
|
||||||
|
" but got "
|
||||||
|
" element(s). "
|
||||||
|
"Multi-body let/begin in render-to-html/render-to-dom renders "
|
||||||
|
"ALL expressions — put side effects in let bindings."))
|
||||||
|
"assert-tag"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 3 0 52 2 0 2 16 1 52 1 0 2 1 5 0 16 1 1 6 0 16 0 1 3 0 52 2 0 2 1 7 0 52 4 0 5 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"tag"
|
||||||
|
"str"
|
||||||
|
"Expected <"
|
||||||
|
"> but got <"
|
||||||
|
">")))))
|
||||||
303
shared/static/wasm/sx/harness.sxbc
Normal file
303
shared/static/wasm/sx/harness.sxbc
Normal file
@@ -0,0 +1,303 @@
|
|||||||
|
(sxbc 1 "b3cae03948f7a615"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 1 5 0 51 6 0 1 7 0 51 8 0 1 9 0 51 10 0 1 11 0 51 12 0 1 13 0 51 14 0 1 15 0 51 16 0 1 17 0 51 18 0 1 19 0 51 20 0 1 21 0 51 14 0 1 22 0 51 23 0 1 24 0 51 14 0 1 25 0 51 18 0 1 26 0 51 16 0 1 27 0 51 16 0 1 28 0 51 29 0 1 30 0 51 31 0 1 32 0 51 16 0 1 33 0 51 14 0 1 34 0 51 35 0 1 36 0 51 14 0 1 37 0 51 38 0 1 39 0 51 16 0 1 40 0 51 16 0 1 41 0 51 14 0 1 42 0 51 16 0 1 43 0 51 14 0 1 44 0 51 14 0 65 27 0 128 4 0 5 51 46 0 128 45 0 5 51 48 0 128 47 0 5 51 50 0 128 49 0 5 51 52 0 128 51 0 5 51 54 0 128 53 0 5 51 56 0 128 55 0 5 51 58 0 128 57 0 5 51 60 0 128 59 0 5 51 62 0 128 61 0 5 51 64 0 128 63 0 5 51 66 0 128 65 0 5 51 68 0 128 67 0 5 51 70 0 128 69 0 5 51 72 0 128 71 0 5 51 74 0 128 73 0 5 51 76 0 128 75 0 5 51 78 0 128 77 0 5 51 80 0 128 79 0 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 0 0 1 33 17 0 16 1 6 34 4 0 5 1 2 0 52 1 0 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"error"
|
||||||
|
"Assertion failed"))
|
||||||
|
"assert="
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 16 1 52 1 0 2 52 0 0 1 33 28 0 16 2 6 34 15 0 5 1 4 0 16 1 1 5 0 16 0 52 3 0 4 52 2 0 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"error"
|
||||||
|
"str"
|
||||||
|
"Expected "
|
||||||
|
", got "))
|
||||||
|
"default-platform"
|
||||||
|
"current-user"
|
||||||
|
(code
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())
|
||||||
|
"csrf-token"
|
||||||
|
(code
|
||||||
|
:bytecode (1 0 0 50)
|
||||||
|
:constants (
|
||||||
|
"test-csrf-token"))
|
||||||
|
"app-url"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 50)
|
||||||
|
:constants (
|
||||||
|
"/mock-app-url"))
|
||||||
|
"frag"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 50)
|
||||||
|
:constants (
|
||||||
|
""))
|
||||||
|
"sleep"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())
|
||||||
|
"local-storage-set"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())
|
||||||
|
"set-cookie"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (2 50)
|
||||||
|
:constants ())
|
||||||
|
"url-for"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 50)
|
||||||
|
:constants (
|
||||||
|
"/mock-url"))
|
||||||
|
"create-element"
|
||||||
|
"request-path"
|
||||||
|
(code
|
||||||
|
:bytecode (1 0 0 50)
|
||||||
|
:constants (
|
||||||
|
"/"))
|
||||||
|
"config"
|
||||||
|
"set-attr"
|
||||||
|
"set-text"
|
||||||
|
"remove-child"
|
||||||
|
"fetch"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 1 1 0 1 2 0 1 3 0 1 4 0 3 65 3 0 50)
|
||||||
|
:constants (
|
||||||
|
"status"
|
||||||
|
200
|
||||||
|
"body"
|
||||||
|
""
|
||||||
|
"ok"))
|
||||||
|
"query"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (52 0 0 0 50)
|
||||||
|
:constants (
|
||||||
|
"list"))
|
||||||
|
"add-class"
|
||||||
|
"get-element"
|
||||||
|
"now"
|
||||||
|
(code
|
||||||
|
:bytecode (1 0 0 50)
|
||||||
|
:constants (
|
||||||
|
0))
|
||||||
|
"abort"
|
||||||
|
"action"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 3 65 1 0 50)
|
||||||
|
:constants (
|
||||||
|
"ok"))
|
||||||
|
"remove-class"
|
||||||
|
"append-child"
|
||||||
|
"request-arg"
|
||||||
|
"emit-dom"
|
||||||
|
"local-storage-get"
|
||||||
|
"get-cookie"
|
||||||
|
"make-harness"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 6 0 20 1 0 32 9 0 20 1 0 16 0 52 2 0 2 17 1 1 3 0 52 4 0 0 1 5 0 16 1 1 6 0 1 7 0 65 0 0 1 8 0 65 0 0 1 9 0 2 65 3 0 65 3 0 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"default-platform"
|
||||||
|
"merge"
|
||||||
|
"log"
|
||||||
|
"list"
|
||||||
|
"platform"
|
||||||
|
"state"
|
||||||
|
"cookies"
|
||||||
|
"storage"
|
||||||
|
"dom"))
|
||||||
|
"harness-reset!"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 2 0 0 52 0 0 3 5 16 0 1 3 0 1 4 0 65 0 0 1 5 0 65 0 0 1 6 0 2 65 3 0 52 0 0 3 5 16 0 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"log"
|
||||||
|
"list"
|
||||||
|
"state"
|
||||||
|
"cookies"
|
||||||
|
"storage"
|
||||||
|
"dom"))
|
||||||
|
"harness-log"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 2 16 1 52 2 0 1 33 5 0 16 2 32 11 0 51 4 0 1 1 16 2 52 3 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"log"
|
||||||
|
"nil?"
|
||||||
|
"filter"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 18 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"op"))))
|
||||||
|
"harness-get"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 16 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"state"))
|
||||||
|
"harness-set!"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 16 1 16 2 52 0 0 3 5 2 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"get"
|
||||||
|
"state"))
|
||||||
|
"make-interceptor"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (51 0 0 1 2 1 0 1 1 50)
|
||||||
|
:constants (
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (16 0 52 0 0 1 33 7 0 18 0 48 0 32 122 0 1 2 0 16 0 52 3 0 1 52 1 0 2 33 13 0 18 0 16 0 52 4 0 1 48 1 32 93 0 1 5 0 16 0 52 3 0 1 52 1 0 2 33 22 0 18 0 16 0 52 4 0 1 16 0 1 2 0 52 6 0 2 48 2 32 55 0 1 7 0 16 0 52 3 0 1 52 1 0 2 33 31 0 18 0 16 0 52 4 0 1 16 0 1 2 0 52 6 0 2 16 0 1 5 0 52 6 0 2 48 3 32 8 0 18 0 16 0 52 8 0 2 17 1 18 1 1 10 0 52 9 0 2 17 2 20 11 0 16 2 1 12 0 16 0 1 13 0 16 1 1 14 0 18 2 65 3 0 48 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"="
|
||||||
|
1
|
||||||
|
"len"
|
||||||
|
"first"
|
||||||
|
2
|
||||||
|
"nth"
|
||||||
|
3
|
||||||
|
"apply"
|
||||||
|
"get"
|
||||||
|
"log"
|
||||||
|
"append!"
|
||||||
|
"args"
|
||||||
|
"result"
|
||||||
|
"op"))))
|
||||||
|
"install-interceptors"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (51 1 0 1 0 1 1 16 0 1 4 0 52 3 0 2 52 2 0 1 52 0 0 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 1 1 0 52 0 0 2 16 0 52 0 0 2 17 1 20 2 0 18 0 16 0 16 1 48 3 17 2 20 3 0 18 1 16 0 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"platform"
|
||||||
|
"make-interceptor"
|
||||||
|
"env-bind!"))
|
||||||
|
"keys"
|
||||||
|
"get"
|
||||||
|
"platform"))
|
||||||
|
"io-calls"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (51 1 0 1 1 16 0 1 3 0 52 2 0 2 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"filter"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 18 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"op"))
|
||||||
|
"get"
|
||||||
|
"log"))
|
||||||
|
"io-call-count"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 1 0 16 0 16 1 48 2 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"len"
|
||||||
|
"io-calls"))
|
||||||
|
"io-call-nth"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 48 2 17 3 16 2 16 3 52 2 0 1 52 1 0 2 33 11 0 16 3 16 2 52 3 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"io-calls"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"nth"))
|
||||||
|
"io-call-args"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 16 2 48 3 17 3 16 3 52 1 0 1 33 4 0 2 32 9 0 16 3 1 3 0 52 2 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"io-call-nth"
|
||||||
|
"nil?"
|
||||||
|
"get"
|
||||||
|
"args"))
|
||||||
|
"io-call-result"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 16 2 48 3 17 3 16 3 52 1 0 1 33 4 0 2 32 9 0 16 3 1 3 0 52 2 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"io-call-nth"
|
||||||
|
"nil?"
|
||||||
|
"get"
|
||||||
|
"result"))
|
||||||
|
"assert-io-called"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 2 0 16 0 16 1 48 2 1 3 0 52 1 0 2 1 5 0 16 1 1 6 0 52 4 0 3 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
">"
|
||||||
|
"io-call-count"
|
||||||
|
0
|
||||||
|
"str"
|
||||||
|
"Expected IO operation "
|
||||||
|
" to be called but it was not"))
|
||||||
|
"assert-no-io"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 20 2 0 16 0 16 1 48 2 1 3 0 52 1 0 2 1 5 0 16 1 1 6 0 20 2 0 16 0 16 1 48 2 1 7 0 52 4 0 5 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"assert"
|
||||||
|
"="
|
||||||
|
"io-call-count"
|
||||||
|
0
|
||||||
|
"str"
|
||||||
|
"Expected IO operation "
|
||||||
|
" not to be called but it was called "
|
||||||
|
" time(s)"))
|
||||||
|
"assert-io-count"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 48 2 17 3 20 1 0 16 3 16 2 52 2 0 2 1 4 0 16 1 1 5 0 16 2 1 6 0 16 3 1 7 0 52 3 0 7 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"io-call-count"
|
||||||
|
"assert"
|
||||||
|
"="
|
||||||
|
"str"
|
||||||
|
"Expected "
|
||||||
|
" to be called "
|
||||||
|
" time(s) but was called "
|
||||||
|
" time(s)"))
|
||||||
|
"assert-io-args"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (20 0 0 16 0 16 1 16 2 48 3 17 4 20 1 0 20 2 0 16 4 16 3 48 2 1 4 0 16 2 1 5 0 16 1 1 6 0 16 3 52 3 0 1 1 7 0 16 4 52 3 0 1 52 3 0 8 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"io-call-args"
|
||||||
|
"assert"
|
||||||
|
"equal?"
|
||||||
|
"str"
|
||||||
|
"Expected call "
|
||||||
|
" to "
|
||||||
|
" with args "
|
||||||
|
" but got "))
|
||||||
|
"assert-io-result"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (20 0 0 16 0 16 1 16 2 48 3 17 4 20 1 0 20 2 0 16 4 16 3 48 2 1 4 0 16 2 1 5 0 16 1 1 6 0 16 3 52 3 0 1 1 7 0 16 4 52 3 0 1 52 3 0 8 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"io-call-result"
|
||||||
|
"assert"
|
||||||
|
"equal?"
|
||||||
|
"str"
|
||||||
|
"Expected call "
|
||||||
|
" to "
|
||||||
|
" to return "
|
||||||
|
" but got "))
|
||||||
|
"assert-state"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 48 2 17 3 20 1 0 20 2 0 16 3 16 2 48 2 1 4 0 16 1 1 5 0 16 2 52 3 0 1 1 6 0 16 3 52 3 0 1 52 3 0 6 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"harness-get"
|
||||||
|
"assert"
|
||||||
|
"equal?"
|
||||||
|
"str"
|
||||||
|
"Expected state "
|
||||||
|
" to be "
|
||||||
|
" but got ")))))
|
||||||
309
shared/static/wasm/sx/hypersx.sxbc
Normal file
309
shared/static/wasm/sx/hypersx.sxbc
Normal file
@@ -0,0 +1,309 @@
|
|||||||
|
(sxbc 1 "352dd0823915cc55"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 50)
|
||||||
|
:constants (
|
||||||
|
"hsx-indent"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 17 1 51 2 0 1 1 1 4 0 16 0 52 3 0 2 52 1 0 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
""
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 1 1 0 52 0 0 2 19 0 50)
|
||||||
|
:constants (
|
||||||
|
"str"
|
||||||
|
" "))
|
||||||
|
"range"
|
||||||
|
0))
|
||||||
|
"hsx-sym-name"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 33 10 0 20 3 0 16 0 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"))
|
||||||
|
"hsx-kw-name"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 33 10 0 20 3 0 16 0 49 1 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"))
|
||||||
|
"hsx-is-element?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 6 33 26 0 5 16 0 1 2 0 52 1 0 2 52 0 0 1 6 33 8 0 5 20 3 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"is-html-tag?"))
|
||||||
|
"hsx-is-component?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 6 33 10 0 5 16 0 1 1 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"~"))
|
||||||
|
"hsx-extract-css"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (2 17 1 2 17 2 52 0 0 0 17 3 1 1 0 17 4 16 0 52 2 0 1 17 5 2 17 6 51 3 0 1 4 1 5 1 0 1 1 1 6 1 2 1 3 17 6 16 6 48 0 5 1 5 0 16 1 1 6 0 16 2 1 7 0 16 3 1 8 0 16 4 16 5 52 9 0 2 33 11 0 16 0 16 4 52 10 0 2 32 4 0 52 0 0 0 52 4 0 8 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
0
|
||||||
|
"len"
|
||||||
|
(code :upvalue-count 7
|
||||||
|
:bytecode (18 0 18 1 52 0 0 2 33 180 0 20 1 0 18 2 18 0 52 2 0 2 48 1 17 0 16 0 1 4 0 52 3 0 2 33 37 0 18 2 18 0 1 6 0 52 5 0 2 52 2 0 2 19 3 5 18 0 1 7 0 52 5 0 2 19 0 5 18 4 49 0 32 113 0 16 0 1 8 0 52 3 0 2 33 37 0 18 2 18 0 1 6 0 52 5 0 2 52 2 0 2 19 5 5 18 0 1 7 0 52 5 0 2 19 0 5 18 4 49 0 32 64 0 16 0 33 58 0 20 9 0 18 6 18 2 18 0 52 2 0 2 48 2 5 20 9 0 18 6 18 2 18 0 1 6 0 52 5 0 2 52 2 0 2 48 2 5 18 0 1 7 0 52 5 0 2 19 0 5 18 4 49 0 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"hsx-kw-name"
|
||||||
|
"nth"
|
||||||
|
"="
|
||||||
|
"class"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
2
|
||||||
|
"id"
|
||||||
|
"append!"))
|
||||||
|
"dict"
|
||||||
|
"classes"
|
||||||
|
"id"
|
||||||
|
"attrs"
|
||||||
|
"children"
|
||||||
|
"<"
|
||||||
|
"slice"))
|
||||||
|
"hsx-tag-str"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 17 2 16 1 1 1 0 52 0 0 2 17 3 16 1 1 2 0 52 0 0 2 17 4 16 3 6 33 7 0 5 16 3 52 3 0 1 33 21 0 51 5 0 1 2 16 3 1 7 0 52 6 0 2 52 4 0 2 32 1 0 2 5 16 4 33 16 0 16 2 1 9 0 16 4 52 8 0 3 17 2 32 1 0 2 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"classes"
|
||||||
|
"id"
|
||||||
|
"string?"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 1 1 0 16 0 52 0 0 3 19 0 50)
|
||||||
|
:constants (
|
||||||
|
"str"
|
||||||
|
"."))
|
||||||
|
"split"
|
||||||
|
" "
|
||||||
|
"str"
|
||||||
|
"#"))
|
||||||
|
"hsx-atom"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 6 0 1 1 0 32 151 0 16 0 52 2 0 1 33 15 0 1 4 0 16 0 1 4 0 52 3 0 3 32 127 0 16 0 52 5 0 1 33 9 0 16 0 52 3 0 1 32 109 0 16 0 52 7 0 1 1 8 0 52 6 0 2 33 17 0 16 0 33 6 0 1 9 0 32 3 0 1 10 0 32 76 0 16 0 52 7 0 1 1 11 0 52 6 0 2 33 20 0 1 12 0 20 13 0 16 0 48 1 1 14 0 52 3 0 3 32 40 0 16 0 52 7 0 1 1 15 0 52 6 0 2 33 17 0 1 16 0 20 17 0 16 0 48 1 52 3 0 2 32 7 0 20 18 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"nil"
|
||||||
|
"string?"
|
||||||
|
"str"
|
||||||
|
"\""
|
||||||
|
"number?"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"boolean"
|
||||||
|
"true"
|
||||||
|
"false"
|
||||||
|
"symbol"
|
||||||
|
"{"
|
||||||
|
"symbol-name"
|
||||||
|
"}"
|
||||||
|
"keyword"
|
||||||
|
":"
|
||||||
|
"keyword-name"
|
||||||
|
"sx-serialize"))
|
||||||
|
"hsx-inline"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 33 10 0 20 2 0 16 0 49 1 32 84 1 16 0 52 3 0 1 33 6 0 1 4 0 32 69 1 20 5 0 16 0 52 6 0 1 48 1 17 1 16 1 1 8 0 52 7 0 2 33 24 0 1 10 0 20 2 0 16 0 1 12 0 52 11 0 2 48 1 52 9 0 2 32 20 1 16 1 1 13 0 52 7 0 2 33 49 0 1 14 0 16 0 52 16 0 1 1 12 0 52 15 0 2 33 17 0 20 17 0 16 0 1 12 0 52 11 0 2 48 1 32 3 0 1 18 0 1 19 0 52 9 0 3 32 215 0 16 1 1 20 0 52 7 0 2 33 38 0 20 2 0 16 0 1 12 0 52 11 0 2 48 1 1 21 0 20 17 0 16 0 1 22 0 52 11 0 2 48 1 52 9 0 3 32 165 0 16 1 1 23 0 52 7 0 2 33 38 0 20 2 0 16 0 1 12 0 52 11 0 2 48 1 1 24 0 20 17 0 16 0 1 22 0 52 11 0 2 48 1 52 9 0 3 32 115 0 16 1 1 9 0 52 7 0 2 33 33 0 1 25 0 1 18 0 51 28 0 16 0 52 29 0 1 52 27 0 2 52 26 0 2 1 25 0 52 9 0 3 32 70 0 1 30 0 20 2 0 16 0 52 6 0 1 48 1 16 0 52 16 0 1 1 12 0 52 15 0 2 33 30 0 1 31 0 1 31 0 20 17 0 16 0 52 29 0 1 52 27 0 2 52 26 0 2 52 9 0 2 32 3 0 1 18 0 1 19 0 52 9 0 4 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"list?"
|
||||||
|
"sx-serialize"
|
||||||
|
"empty?"
|
||||||
|
"()"
|
||||||
|
"hsx-sym-name"
|
||||||
|
"first"
|
||||||
|
"="
|
||||||
|
"deref"
|
||||||
|
"str"
|
||||||
|
"@"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"signal"
|
||||||
|
"signal("
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
"hsx-inline"
|
||||||
|
""
|
||||||
|
")"
|
||||||
|
"reset!"
|
||||||
|
" := "
|
||||||
|
2
|
||||||
|
"swap!"
|
||||||
|
" <- "
|
||||||
|
"\""
|
||||||
|
"join"
|
||||||
|
"map"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 5 0 16 0 32 17 0 1 2 0 20 3 0 16 0 48 1 1 4 0 52 1 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"string?"
|
||||||
|
"str"
|
||||||
|
"{"
|
||||||
|
"hsx-inline"
|
||||||
|
"}"))
|
||||||
|
"rest"
|
||||||
|
"("
|
||||||
|
" "))
|
||||||
|
"hsx-attrs-str"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 6 0 1 1 0 32 48 0 52 2 0 0 17 1 1 3 0 17 2 2 17 3 51 4 0 1 2 1 0 1 1 1 3 17 3 16 3 48 0 5 1 6 0 1 6 0 16 1 52 7 0 2 52 5 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
""
|
||||||
|
"list"
|
||||||
|
0
|
||||||
|
(code :upvalue-count 4
|
||||||
|
:bytecode (18 0 18 1 52 1 0 1 52 0 0 2 33 70 0 20 2 0 18 2 1 4 0 20 5 0 18 1 18 0 52 6 0 2 48 1 1 7 0 20 8 0 18 1 18 0 1 10 0 52 9 0 2 52 6 0 2 48 1 52 3 0 4 48 2 5 18 0 1 11 0 52 9 0 2 19 0 5 18 3 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"append!"
|
||||||
|
"str"
|
||||||
|
":"
|
||||||
|
"keyword-name"
|
||||||
|
"nth"
|
||||||
|
" "
|
||||||
|
"hsx-atom"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
2))
|
||||||
|
"str"
|
||||||
|
" "
|
||||||
|
"join"))
|
||||||
|
"hsx-children"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 52 0 0 1 33 5 0 16 0 32 85 0 16 1 52 2 0 1 1 3 0 52 1 0 2 6 33 15 0 5 16 1 52 6 0 1 52 5 0 1 52 4 0 1 33 23 0 16 0 1 8 0 20 9 0 16 1 52 6 0 1 48 1 52 7 0 3 32 27 0 16 0 1 10 0 1 10 0 51 13 0 1 2 16 1 52 12 0 2 52 11 0 2 52 7 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"not"
|
||||||
|
"list?"
|
||||||
|
"first"
|
||||||
|
"str"
|
||||||
|
" "
|
||||||
|
"hsx-atom"
|
||||||
|
"
|
||||||
|
"
|
||||||
|
"join"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 1 2 0 52 1 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"sx->hypersx-node"
|
||||||
|
"+"
|
||||||
|
1))))
|
||||||
|
"sx->hypersx-node"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 1 48 1 17 2 16 0 52 1 0 1 33 12 0 16 2 1 3 0 52 2 0 2 32 201 4 16 0 52 5 0 1 52 4 0 1 33 16 0 16 2 20 6 0 16 0 48 1 52 2 0 2 32 172 4 16 0 52 7 0 1 33 12 0 16 2 1 8 0 52 2 0 2 32 151 4 20 9 0 16 0 52 10 0 1 48 1 17 3 16 3 1 2 0 52 11 0 2 33 16 0 16 2 20 12 0 16 0 48 1 52 2 0 2 32 110 4 16 3 1 13 0 52 11 0 2 33 16 0 16 2 20 12 0 16 0 48 1 52 2 0 2 32 82 4 16 3 1 14 0 52 11 0 2 33 16 0 16 2 20 12 0 16 0 48 1 52 2 0 2 32 54 4 16 3 1 15 0 52 11 0 2 33 16 0 16 2 20 12 0 16 0 48 1 52 2 0 2 32 26 4 16 3 1 16 0 52 11 0 2 33 16 0 16 2 20 12 0 16 0 48 1 52 2 0 2 32 254 3 16 3 1 17 0 52 11 0 2 6 34 10 0 5 16 3 1 18 0 52 11 0 2 33 68 0 16 2 16 3 1 19 0 20 20 0 16 0 1 22 0 52 21 0 2 48 1 1 19 0 20 20 0 16 0 1 23 0 52 21 0 2 48 1 1 24 0 20 25 0 16 0 52 26 0 1 16 1 1 22 0 52 27 0 2 48 2 52 2 0 8 32 160 3 16 3 1 28 0 52 11 0 2 33 54 0 16 2 1 29 0 20 12 0 16 0 1 22 0 52 21 0 2 48 1 1 24 0 1 24 0 51 32 0 1 1 16 0 1 23 0 52 33 0 2 52 31 0 2 52 30 0 2 52 2 0 5 32 94 3 16 3 1 34 0 52 11 0 2 33 223 0 16 0 1 22 0 52 21 0 2 17 4 16 0 1 23 0 52 21 0 2 17 5 16 0 52 36 0 1 1 37 0 52 35 0 2 33 12 0 16 0 1 37 0 52 21 0 2 32 1 0 2 17 6 16 5 52 5 0 1 52 4 0 1 6 33 22 0 5 16 6 52 1 0 1 6 34 11 0 5 16 6 52 5 0 1 52 4 0 1 33 54 0 16 2 1 38 0 20 12 0 16 4 48 1 1 19 0 20 6 0 16 5 48 1 16 6 33 17 0 1 19 0 20 6 0 16 6 48 1 52 2 0 2 32 3 0 1 39 0 52 2 0 6 32 74 0 16 2 1 38 0 20 12 0 16 4 48 1 1 24 0 20 25 0 16 5 16 1 1 22 0 52 27 0 2 48 2 16 6 33 31 0 1 24 0 16 2 1 40 0 20 25 0 16 6 16 1 1 22 0 52 27 0 2 48 2 52 2 0 4 32 3 0 1 39 0 52 2 0 6 32 115 2 16 3 1 41 0 52 11 0 2 6 34 24 0 5 16 3 1 42 0 52 11 0 2 6 34 10 0 5 16 3 1 43 0 52 11 0 2 33 121 0 16 0 1 22 0 52 21 0 2 17 4 16 0 1 23 0 52 33 0 2 17 5 16 2 16 3 1 19 0 1 44 0 51 45 0 16 4 52 5 0 1 6 33 26 0 5 16 4 52 7 0 1 52 4 0 1 6 33 11 0 5 16 4 52 10 0 1 52 5 0 1 33 5 0 16 4 32 6 0 16 4 52 46 0 1 52 31 0 2 52 30 0 2 1 24 0 1 24 0 51 32 0 1 1 16 5 52 31 0 2 52 30 0 2 52 2 0 6 32 210 1 16 3 1 31 0 52 11 0 2 6 33 62 0 5 16 0 52 36 0 1 1 37 0 52 11 0 2 6 33 44 0 5 16 0 1 22 0 52 21 0 2 52 5 0 1 6 33 26 0 5 20 9 0 16 0 1 22 0 52 21 0 2 52 10 0 1 48 1 1 47 0 52 11 0 2 33 81 0 16 0 1 22 0 52 21 0 2 17 4 16 0 1 23 0 52 21 0 2 17 5 16 2 1 48 0 20 12 0 16 5 48 1 1 49 0 20 20 0 16 4 1 22 0 52 21 0 2 48 1 1 24 0 20 25 0 16 4 52 26 0 1 16 1 1 22 0 52 27 0 2 48 2 52 2 0 7 32 51 1 16 3 1 50 0 52 11 0 2 6 33 62 0 5 16 0 52 36 0 1 1 37 0 52 11 0 2 6 33 44 0 5 16 0 1 22 0 52 21 0 2 52 5 0 1 6 33 26 0 5 20 9 0 16 0 1 22 0 52 21 0 2 52 10 0 1 48 1 1 47 0 52 11 0 2 33 81 0 16 0 1 22 0 52 21 0 2 17 4 16 0 1 23 0 52 21 0 2 17 5 16 2 1 51 0 20 20 0 16 4 1 22 0 52 21 0 2 48 1 1 52 0 20 12 0 16 5 48 1 1 24 0 20 25 0 16 4 52 26 0 1 16 1 1 22 0 52 27 0 2 48 2 52 2 0 7 32 148 0 20 53 0 16 3 48 1 33 61 0 20 54 0 16 0 52 55 0 1 48 1 17 4 20 56 0 16 2 20 57 0 16 3 16 4 48 2 20 58 0 16 4 1 60 0 52 59 0 2 48 1 52 2 0 3 16 4 1 61 0 52 59 0 2 16 1 49 3 32 77 0 20 62 0 16 3 48 1 33 54 0 20 54 0 16 0 52 55 0 1 48 1 17 4 20 56 0 16 2 16 3 20 58 0 16 4 1 60 0 52 59 0 2 48 1 52 2 0 3 16 4 1 61 0 52 59 0 2 16 1 49 3 32 13 0 16 2 20 20 0 16 0 48 1 52 2 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"hsx-indent"
|
||||||
|
"nil?"
|
||||||
|
"str"
|
||||||
|
"nil"
|
||||||
|
"not"
|
||||||
|
"list?"
|
||||||
|
"hsx-atom"
|
||||||
|
"empty?"
|
||||||
|
"()"
|
||||||
|
"hsx-sym-name"
|
||||||
|
"first"
|
||||||
|
"="
|
||||||
|
"hsx-inline"
|
||||||
|
"deref"
|
||||||
|
"reset!"
|
||||||
|
"swap!"
|
||||||
|
"signal"
|
||||||
|
"defcomp"
|
||||||
|
"defisland"
|
||||||
|
" "
|
||||||
|
"sx-serialize"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
2
|
||||||
|
"
|
||||||
|
"
|
||||||
|
"sx->hypersx-node"
|
||||||
|
"last"
|
||||||
|
"+"
|
||||||
|
"when"
|
||||||
|
"when "
|
||||||
|
"join"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 16 0 18 0 1 2 0 52 1 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"sx->hypersx-node"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"slice"
|
||||||
|
"if"
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
3
|
||||||
|
"if "
|
||||||
|
""
|
||||||
|
"else
|
||||||
|
"
|
||||||
|
"let"
|
||||||
|
"letrec"
|
||||||
|
"let*"
|
||||||
|
", "
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 6 33 14 0 5 16 0 52 2 0 1 1 3 0 52 1 0 2 33 35 0 20 5 0 16 0 52 6 0 1 48 1 1 7 0 20 8 0 16 0 1 10 0 52 9 0 2 48 1 52 4 0 3 32 7 0 20 5 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"list?"
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"str"
|
||||||
|
"sx-serialize"
|
||||||
|
"first"
|
||||||
|
" = "
|
||||||
|
"hsx-inline"
|
||||||
|
"nth"
|
||||||
|
1))
|
||||||
|
"list"
|
||||||
|
"fn"
|
||||||
|
"map "
|
||||||
|
" -> "
|
||||||
|
"for-each"
|
||||||
|
"for "
|
||||||
|
" in "
|
||||||
|
"hsx-is-element?"
|
||||||
|
"hsx-extract-css"
|
||||||
|
"rest"
|
||||||
|
"hsx-children"
|
||||||
|
"hsx-tag-str"
|
||||||
|
"hsx-attrs-str"
|
||||||
|
"get"
|
||||||
|
"attrs"
|
||||||
|
"children"
|
||||||
|
"hsx-is-component?"))
|
||||||
|
"sx->hypersx"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 1 0 51 3 0 16 0 52 2 0 2 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"join"
|
||||||
|
"
|
||||||
|
|
||||||
|
"
|
||||||
|
"map"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"sx->hypersx-node"
|
||||||
|
0)))))))
|
||||||
1193
shared/static/wasm/sx/orchestration.sxbc
Normal file
1193
shared/static/wasm/sx/orchestration.sxbc
Normal file
File diff suppressed because it is too large
Load Diff
372
shared/static/wasm/sx/page-helpers.sxbc
Normal file
372
shared/static/wasm/sx/page-helpers.sxbc
Normal file
@@ -0,0 +1,372 @@
|
|||||||
|
(sxbc 1 "c2d5bf6a702b8eb7"
|
||||||
|
(code
|
||||||
|
:bytecode (1 1 0 1 2 0 1 3 0 1 4 0 1 5 0 1 6 0 1 7 0 1 8 0 1 9 0 1 4 0 1 10 0 1 11 0 1 12 0 1 13 0 1 14 0 1 8 0 1 15 0 1 4 0 1 16 0 1 17 0 1 18 0 1 4 0 1 19 0 1 13 0 1 20 0 1 6 0 1 21 0 1 22 0 1 23 0 1 8 0 1 24 0 1 8 0 1 25 0 1 11 0 1 26 0 1 13 0 1 27 0 1 22 0 1 28 0 1 4 0 1 29 0 1 4 0 1 30 0 1 8 0 1 31 0 1 13 0 1 32 0 1 33 0 1 34 0 1 4 0 1 35 0 1 6 0 1 36 0 1 2 0 1 37 0 1 6 0 1 38 0 1 2 0 1 39 0 1 6 0 1 40 0 1 13 0 1 41 0 1 2 0 1 42 0 1 33 0 1 43 0 1 13 0 1 44 0 1 22 0 65 35 0 128 0 0 5 51 46 0 128 45 0 5 51 48 0 128 47 0 5 51 50 0 128 49 0 5 51 52 0 128 51 0 5 51 54 0 128 53 0 5 51 56 0 128 55 0 5 51 58 0 128 57 0 5 51 60 0 128 59 0 5 51 62 0 128 61 0 5 51 64 0 128 63 0 5 51 66 0 128 65 0 50)
|
||||||
|
:constants (
|
||||||
|
"special-form-category-map"
|
||||||
|
"defmacro"
|
||||||
|
"Functions & Components"
|
||||||
|
"for-each"
|
||||||
|
"Higher-Order Forms"
|
||||||
|
"defpage"
|
||||||
|
"Domain Definitions"
|
||||||
|
"let"
|
||||||
|
"Binding"
|
||||||
|
"filter"
|
||||||
|
"shift"
|
||||||
|
"Continuations"
|
||||||
|
"and"
|
||||||
|
"Control Flow"
|
||||||
|
"set!"
|
||||||
|
"map-indexed"
|
||||||
|
"dynamic-wind"
|
||||||
|
"Guards"
|
||||||
|
"reduce"
|
||||||
|
"cond"
|
||||||
|
"defquery"
|
||||||
|
"->"
|
||||||
|
"Sequencing & Threading"
|
||||||
|
"let*"
|
||||||
|
"define"
|
||||||
|
"reset"
|
||||||
|
"case"
|
||||||
|
"do"
|
||||||
|
"map"
|
||||||
|
"some"
|
||||||
|
"letrec"
|
||||||
|
"if"
|
||||||
|
"quote"
|
||||||
|
"Quoting"
|
||||||
|
"every?"
|
||||||
|
"defhandler"
|
||||||
|
"fn"
|
||||||
|
"defstyle"
|
||||||
|
"lambda"
|
||||||
|
"defaction"
|
||||||
|
"or"
|
||||||
|
"defcomp"
|
||||||
|
"quasiquote"
|
||||||
|
"when"
|
||||||
|
"begin"
|
||||||
|
"extract-define-kwargs"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (65 0 0 17 1 16 0 1 1 0 52 0 0 2 17 2 16 2 52 2 0 1 17 3 51 4 0 1 3 1 2 1 1 1 6 0 16 3 52 5 0 2 52 3 0 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"slice"
|
||||||
|
2
|
||||||
|
"len"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 18 0 52 0 0 2 6 33 20 0 5 18 1 16 0 52 5 0 2 52 4 0 1 1 6 0 52 3 0 2 33 94 0 20 7 0 18 1 16 0 52 5 0 2 48 1 17 1 18 1 16 0 1 2 0 52 1 0 2 52 5 0 2 17 2 18 2 16 1 16 2 52 4 0 1 1 9 0 52 3 0 2 33 29 0 1 11 0 1 13 0 20 15 0 16 2 52 14 0 2 52 12 0 2 1 16 0 52 10 0 3 32 6 0 16 2 52 10 0 1 52 8 0 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"nth"
|
||||||
|
"keyword"
|
||||||
|
"keyword-name"
|
||||||
|
"dict-set!"
|
||||||
|
"list"
|
||||||
|
"str"
|
||||||
|
"("
|
||||||
|
"join"
|
||||||
|
" "
|
||||||
|
"map"
|
||||||
|
"serialize"
|
||||||
|
")"))
|
||||||
|
"range"
|
||||||
|
0))
|
||||||
|
"categorize-special-forms"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (65 0 0 17 1 51 1 0 1 1 16 0 52 0 0 2 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 6 33 59 0 5 16 0 52 4 0 1 1 5 0 52 3 0 2 6 33 41 0 5 16 0 52 6 0 1 52 1 0 1 1 7 0 52 0 0 2 6 33 19 0 5 20 8 0 16 0 52 6 0 1 48 1 1 9 0 52 0 0 2 33 175 0 16 0 1 11 0 52 10 0 2 17 1 20 12 0 16 0 48 1 17 2 20 14 0 16 1 52 13 0 2 6 34 4 0 5 1 15 0 17 3 18 0 16 3 52 17 0 2 52 16 0 1 33 15 0 18 0 16 3 52 2 0 0 52 18 0 3 32 1 0 2 5 20 19 0 18 0 16 3 52 13 0 2 1 20 0 16 2 1 20 0 52 13 0 2 6 34 4 0 5 1 21 0 1 22 0 16 2 1 22 0 52 13 0 2 6 34 4 0 5 1 21 0 1 23 0 16 2 1 23 0 52 13 0 2 6 34 4 0 5 1 21 0 1 24 0 16 2 1 24 0 52 13 0 2 6 34 4 0 5 1 21 0 1 25 0 16 1 65 5 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"list"
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"define-special-form"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"extract-define-kwargs"
|
||||||
|
"get"
|
||||||
|
"special-form-category-map"
|
||||||
|
"Other"
|
||||||
|
"not"
|
||||||
|
"has-key?"
|
||||||
|
"dict-set!"
|
||||||
|
"append!"
|
||||||
|
"doc"
|
||||||
|
""
|
||||||
|
"example"
|
||||||
|
"tail-position"
|
||||||
|
"syntax"
|
||||||
|
"name"))))
|
||||||
|
"build-ref-items-with-href"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (51 1 0 1 3 1 2 1 1 16 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (18 0 1 1 0 52 0 0 2 33 90 0 16 0 1 3 0 52 2 0 2 17 1 16 0 1 4 0 52 2 0 2 17 2 16 0 1 5 0 52 2 0 2 17 3 1 6 0 16 3 6 33 12 0 5 51 8 0 1 1 18 1 52 7 0 2 33 11 0 18 2 16 1 52 9 0 2 32 1 0 2 1 10 0 16 3 1 11 0 16 2 1 12 0 16 1 65 4 0 32 64 0 16 0 1 3 0 52 2 0 2 17 1 16 0 1 4 0 52 2 0 2 17 2 1 6 0 51 8 0 1 1 18 1 52 7 0 2 33 11 0 18 2 16 1 52 9 0 2 32 1 0 2 1 11 0 16 2 1 12 0 16 1 65 3 0 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
3
|
||||||
|
"nth"
|
||||||
|
0
|
||||||
|
1
|
||||||
|
2
|
||||||
|
"href"
|
||||||
|
"some"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 18 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="))
|
||||||
|
"str"
|
||||||
|
"exists"
|
||||||
|
"desc"
|
||||||
|
"name"))))
|
||||||
|
"build-reference-data"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 6 1 0 0 52 1 0 2 33 82 0 5 1 2 0 20 3 0 16 1 1 2 0 52 4 0 2 1 5 0 16 2 1 6 0 48 4 1 7 0 20 3 0 16 1 1 7 0 52 4 0 2 1 5 0 16 2 1 6 0 48 4 1 8 0 20 3 0 16 1 1 8 0 52 4 0 2 1 5 0 16 2 1 6 0 48 4 65 3 0 32 227 0 6 1 9 0 52 1 0 2 33 57 0 5 1 10 0 20 3 0 16 1 1 10 0 52 4 0 2 1 11 0 16 2 1 6 0 48 4 1 12 0 20 3 0 16 1 1 12 0 52 4 0 2 1 11 0 16 2 1 6 0 48 4 65 2 0 32 159 0 6 1 13 0 52 1 0 2 33 32 0 5 1 14 0 20 3 0 16 1 1 14 0 52 4 0 2 1 15 0 16 2 1 16 0 48 4 65 1 0 32 116 0 6 1 17 0 52 1 0 2 33 26 0 5 1 18 0 51 20 0 16 1 1 18 0 52 4 0 2 52 19 0 2 65 1 0 32 79 0 5 1 2 0 20 3 0 16 1 1 2 0 52 4 0 2 1 5 0 16 2 1 6 0 48 4 1 7 0 20 3 0 16 1 1 7 0 52 4 0 2 1 5 0 16 2 1 6 0 48 4 1 8 0 20 3 0 16 1 1 8 0 52 4 0 2 1 5 0 16 2 1 6 0 48 4 65 3 0 50)
|
||||||
|
:constants (
|
||||||
|
"attributes"
|
||||||
|
"="
|
||||||
|
"req-attrs"
|
||||||
|
"build-ref-items-with-href"
|
||||||
|
"get"
|
||||||
|
"/geography/hypermedia/reference/attributes/"
|
||||||
|
3
|
||||||
|
"beh-attrs"
|
||||||
|
"uniq-attrs"
|
||||||
|
"headers"
|
||||||
|
"req-headers"
|
||||||
|
"/geography/hypermedia/reference/headers/"
|
||||||
|
"resp-headers"
|
||||||
|
"events"
|
||||||
|
"events-list"
|
||||||
|
"/geography/hypermedia/reference/events/"
|
||||||
|
2
|
||||||
|
"js-api"
|
||||||
|
"js-api-list"
|
||||||
|
"map"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 16 0 1 2 0 52 1 0 2 1 3 0 16 0 1 4 0 52 1 0 2 65 2 0 50)
|
||||||
|
:constants (
|
||||||
|
"desc"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"name"
|
||||||
|
0))))
|
||||||
|
"build-attr-detail"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 52 0 0 1 33 10 0 1 1 0 3 65 1 0 32 108 0 1 2 0 16 1 1 4 0 52 3 0 2 1 5 0 16 0 1 6 0 16 1 1 7 0 52 3 0 2 1 1 0 2 1 8 0 16 1 1 9 0 52 3 0 2 1 10 0 16 1 1 11 0 52 3 0 2 1 12 0 16 1 1 4 0 52 13 0 2 33 32 0 1 15 0 16 0 1 17 0 1 18 0 52 16 0 3 1 19 0 1 20 0 52 16 0 3 52 14 0 2 32 1 0 2 65 7 0 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"attr-not-found"
|
||||||
|
"attr-handler"
|
||||||
|
"get"
|
||||||
|
"handler"
|
||||||
|
"attr-title"
|
||||||
|
"attr-example"
|
||||||
|
"example"
|
||||||
|
"attr-description"
|
||||||
|
"description"
|
||||||
|
"attr-demo"
|
||||||
|
"demo"
|
||||||
|
"attr-wire-id"
|
||||||
|
"has-key?"
|
||||||
|
"str"
|
||||||
|
"ref-wire-"
|
||||||
|
"replace"
|
||||||
|
":"
|
||||||
|
"-"
|
||||||
|
"*"
|
||||||
|
"star"))
|
||||||
|
"build-header-detail"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 52 0 0 1 33 10 0 1 1 0 3 65 1 0 32 60 0 1 2 0 16 1 1 4 0 52 3 0 2 1 5 0 16 1 1 6 0 52 3 0 2 1 1 0 2 1 7 0 16 0 1 8 0 16 1 1 9 0 52 3 0 2 1 10 0 16 1 1 11 0 52 3 0 2 65 6 0 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"header-not-found"
|
||||||
|
"header-description"
|
||||||
|
"get"
|
||||||
|
"description"
|
||||||
|
"header-demo"
|
||||||
|
"demo"
|
||||||
|
"header-title"
|
||||||
|
"header-example"
|
||||||
|
"example"
|
||||||
|
"header-direction"
|
||||||
|
"direction"))
|
||||||
|
"build-event-detail"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 52 0 0 1 33 10 0 1 1 0 3 65 1 0 32 48 0 1 2 0 16 1 1 4 0 52 3 0 2 1 5 0 16 1 1 6 0 52 3 0 2 1 7 0 16 1 1 8 0 52 3 0 2 1 1 0 2 1 9 0 16 0 65 5 0 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"event-not-found"
|
||||||
|
"event-example"
|
||||||
|
"get"
|
||||||
|
"example"
|
||||||
|
"event-demo"
|
||||||
|
"demo"
|
||||||
|
"event-description"
|
||||||
|
"description"
|
||||||
|
"event-title"))
|
||||||
|
"build-component-source"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 1 16 0 1 2 0 52 0 0 2 17 2 16 0 1 3 0 52 0 0 2 17 3 16 0 1 4 0 52 0 0 2 17 4 16 0 1 5 0 52 0 0 2 17 5 16 0 1 6 0 52 0 0 2 17 6 16 1 1 8 0 52 7 0 2 33 15 0 1 10 0 16 2 1 11 0 52 9 0 3 32 211 0 16 3 52 12 0 1 33 25 0 16 4 33 13 0 1 14 0 1 15 0 52 13 0 2 32 4 0 52 13 0 0 32 40 0 16 4 33 26 0 1 18 0 16 3 52 17 0 2 1 14 0 1 15 0 52 13 0 2 52 16 0 2 32 9 0 1 18 0 16 3 52 17 0 2 17 7 1 19 0 1 21 0 16 7 52 20 0 2 1 22 0 52 9 0 3 17 8 16 1 1 23 0 52 7 0 2 33 6 0 1 24 0 32 3 0 1 25 0 17 9 16 1 1 26 0 52 7 0 2 6 33 29 0 5 16 6 52 28 0 1 52 27 0 1 6 33 14 0 5 16 6 1 29 0 52 7 0 2 52 27 0 1 33 12 0 1 30 0 16 6 52 9 0 2 32 3 0 1 31 0 17 10 1 19 0 16 9 1 21 0 16 2 1 21 0 16 8 16 10 1 32 0 16 5 1 22 0 52 9 0 10 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"type"
|
||||||
|
"name"
|
||||||
|
"params"
|
||||||
|
"has-children"
|
||||||
|
"body-sx"
|
||||||
|
"affinity"
|
||||||
|
"="
|
||||||
|
"not-found"
|
||||||
|
"str"
|
||||||
|
";; component "
|
||||||
|
" not found"
|
||||||
|
"empty?"
|
||||||
|
"list"
|
||||||
|
"&rest"
|
||||||
|
"children"
|
||||||
|
"append"
|
||||||
|
"cons"
|
||||||
|
"&key"
|
||||||
|
"("
|
||||||
|
"join"
|
||||||
|
" "
|
||||||
|
")"
|
||||||
|
"island"
|
||||||
|
"defisland"
|
||||||
|
"defcomp"
|
||||||
|
"component"
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"auto"
|
||||||
|
" :affinity "
|
||||||
|
""
|
||||||
|
"
|
||||||
|
"))
|
||||||
|
"build-bundle-analysis"
|
||||||
|
(code :arity 6
|
||||||
|
:bytecode (52 0 0 0 17 6 51 2 0 1 2 1 1 1 6 16 0 52 1 0 2 5 1 3 0 16 3 1 4 0 16 6 1 5 0 16 5 1 6 0 16 4 1 7 0 16 2 65 5 0 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 1 16 1 52 2 0 1 17 2 18 0 1 4 0 52 3 0 2 33 22 0 16 2 18 0 52 7 0 2 1 8 0 52 6 0 2 52 5 0 1 32 3 0 1 4 0 17 3 1 8 0 16 3 52 9 0 2 17 4 1 4 0 17 5 1 4 0 17 6 52 10 0 0 17 7 52 10 0 0 17 8 51 12 0 0 1 1 5 1 6 1 7 1 8 16 1 52 11 0 2 5 20 13 0 18 2 1 14 0 16 5 1 15 0 16 7 52 2 0 1 1 16 0 16 0 1 16 0 52 0 0 2 1 17 0 16 2 1 18 0 16 6 1 19 0 16 8 1 20 0 16 4 1 21 0 16 3 1 22 0 16 0 1 22 0 52 0 0 2 1 23 0 16 0 1 23 0 52 0 0 2 65 10 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"needed-names"
|
||||||
|
"len"
|
||||||
|
">"
|
||||||
|
0
|
||||||
|
"round"
|
||||||
|
"*"
|
||||||
|
"/"
|
||||||
|
100
|
||||||
|
"-"
|
||||||
|
"list"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 5
|
||||||
|
:bytecode (18 0 16 0 52 0 0 2 17 1 16 1 52 2 0 1 52 1 0 1 33 174 0 16 1 1 3 0 52 0 0 2 33 14 0 18 1 1 5 0 52 4 0 2 19 1 32 39 0 18 2 1 5 0 52 4 0 2 19 2 5 51 7 0 0 3 16 1 1 8 0 52 0 0 2 6 34 5 0 5 52 9 0 0 52 6 0 2 5 20 10 0 18 4 1 8 0 16 1 1 8 0 52 0 0 2 6 34 5 0 5 52 9 0 0 1 11 0 16 1 1 11 0 52 0 0 2 1 12 0 16 1 1 12 0 52 0 0 2 6 34 5 0 5 52 9 0 0 1 13 0 16 1 1 13 0 52 0 0 2 1 14 0 16 0 1 3 0 16 1 1 3 0 52 0 0 2 1 15 0 16 1 1 15 0 52 0 0 2 65 7 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"is-pure"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (51 2 0 1 0 18 0 52 1 0 2 52 0 0 1 33 12 0 20 3 0 18 0 16 0 49 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"some"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 18 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="))
|
||||||
|
"append!"))
|
||||||
|
"io-refs"
|
||||||
|
"list"
|
||||||
|
"append!"
|
||||||
|
"render-target"
|
||||||
|
"deps"
|
||||||
|
"source"
|
||||||
|
"name"
|
||||||
|
"affinity"))
|
||||||
|
"append!"
|
||||||
|
"pure-in-page"
|
||||||
|
"io-refs"
|
||||||
|
"direct"
|
||||||
|
"needed"
|
||||||
|
"io-in-page"
|
||||||
|
"components"
|
||||||
|
"savings"
|
||||||
|
"pct"
|
||||||
|
"path"
|
||||||
|
"name"))
|
||||||
|
"total-macros"
|
||||||
|
"pages"
|
||||||
|
"io-count"
|
||||||
|
"pure-count"
|
||||||
|
"total-components"))
|
||||||
|
"build-routing-analysis"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (52 0 0 0 17 1 1 1 0 17 2 1 1 0 17 3 51 3 0 1 3 1 2 1 1 16 0 52 2 0 2 5 1 4 0 16 1 1 5 0 16 2 16 3 52 6 0 2 1 7 0 16 3 1 8 0 16 2 65 4 0 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
0
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 3
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 1 16 0 1 2 0 52 0 0 2 6 34 4 0 5 1 3 0 17 2 2 17 3 1 3 0 17 4 16 1 33 26 0 1 4 0 17 3 5 1 5 0 17 4 5 18 0 1 7 0 52 6 0 2 19 0 32 52 0 16 2 52 8 0 1 33 26 0 1 4 0 17 3 5 1 9 0 17 4 5 18 0 1 7 0 52 6 0 2 19 0 32 17 0 1 10 0 17 3 5 18 1 1 7 0 52 6 0 2 19 1 5 20 11 0 18 2 1 12 0 16 4 1 13 0 16 3 1 14 0 16 2 52 16 0 1 1 17 0 52 15 0 2 33 22 0 16 2 1 20 0 1 17 0 52 19 0 3 1 21 0 52 18 0 2 32 2 0 16 2 1 1 0 16 1 1 22 0 16 0 1 22 0 52 0 0 2 1 23 0 16 0 1 23 0 52 0 0 2 65 6 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"has-data"
|
||||||
|
"content-src"
|
||||||
|
""
|
||||||
|
"server"
|
||||||
|
"Has :data expression — needs server IO"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"empty?"
|
||||||
|
"No content expression"
|
||||||
|
"client"
|
||||||
|
"append!"
|
||||||
|
"reason"
|
||||||
|
"mode"
|
||||||
|
"content-expr"
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
80
|
||||||
|
"str"
|
||||||
|
"slice"
|
||||||
|
0
|
||||||
|
"..."
|
||||||
|
"path"
|
||||||
|
"name"))
|
||||||
|
"pages"
|
||||||
|
"total-pages"
|
||||||
|
"+"
|
||||||
|
"server-count"
|
||||||
|
"client-count"))
|
||||||
|
"build-affinity-analysis"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 16 0 1 1 0 16 1 65 2 0 50)
|
||||||
|
:constants (
|
||||||
|
"components"
|
||||||
|
"page-plans")))))
|
||||||
365
shared/static/wasm/sx/render.sxbc
Normal file
365
shared/static/wasm/sx/render.sxbc
Normal file
@@ -0,0 +1,365 @@
|
|||||||
|
(sxbc 1 "96c150ad4f0a6342"
|
||||||
|
(code
|
||||||
|
:bytecode (1 2 0 1 3 0 1 4 0 1 5 0 1 6 0 1 7 0 1 8 0 1 9 0 1 10 0 1 11 0 1 12 0 1 13 0 1 14 0 1 15 0 1 16 0 1 17 0 1 18 0 1 19 0 1 20 0 1 21 0 1 22 0 1 23 0 1 24 0 1 25 0 1 26 0 1 27 0 1 28 0 1 29 0 1 30 0 1 31 0 1 32 0 1 33 0 1 34 0 1 35 0 1 36 0 1 37 0 1 38 0 1 39 0 1 40 0 1 41 0 1 42 0 1 43 0 1 44 0 1 45 0 1 46 0 1 47 0 1 48 0 1 49 0 1 50 0 1 51 0 1 52 0 1 53 0 1 54 0 1 55 0 1 56 0 1 57 0 1 58 0 1 59 0 1 60 0 1 61 0 1 62 0 1 63 0 1 64 0 1 65 0 1 66 0 1 67 0 1 68 0 1 69 0 1 70 0 1 71 0 1 72 0 1 73 0 1 74 0 1 75 0 1 76 0 1 77 0 1 78 0 1 79 0 1 80 0 1 81 0 1 82 0 1 83 0 1 84 0 1 85 0 1 86 0 1 87 0 1 88 0 1 89 0 1 90 0 1 91 0 1 92 0 1 93 0 1 94 0 1 95 0 1 96 0 1 97 0 1 98 0 1 99 0 1 100 0 1 101 0 1 102 0 1 103 0 1 104 0 1 105 0 1 106 0 1 107 0 1 108 0 1 109 0 1 110 0 1 111 0 1 112 0 1 113 0 1 114 0 1 115 0 1 116 0 1 117 0 1 118 0 1 119 0 1 120 0 1 121 0 1 122 0 1 123 0 1 124 0 1 125 0 1 126 0 1 127 0 1 128 0 1 129 0 1 130 0 1 131 0 1 132 0 1 133 0 1 134 0 1 135 0 1 136 0 1 137 0 1 138 0 1 139 0 1 140 0 52 1 0 139 128 0 0 5 1 142 0 1 143 0 1 53 0 1 71 0 1 144 0 1 55 0 1 84 0 1 73 0 1 7 0 1 6 0 1 145 0 1 87 0 1 146 0 1 54 0 52 1 0 14 128 141 0 5 1 148 0 1 149 0 1 150 0 1 151 0 1 152 0 1 153 0 1 154 0 1 155 0 1 156 0 1 157 0 1 158 0 1 159 0 1 160 0 1 161 0 1 162 0 1 163 0 1 164 0 1 165 0 1 166 0 1 167 0 1 168 0 1 169 0 1 170 0 52 1 0 23 128 147 0 5 52 1 0 0 128 171 0 5 51 173 0 128 172 0 5 51 175 0 128 174 0 5 51 177 0 128 176 0 5 51 179 0 128 178 0 5 51 181 0 128 180 0 5 51 183 0 128 182 0 5 51 185 0 128 184 0 5 51 187 0 128 186 0 5 51 189 0 128 188 0 5 51 191 0 128 190 0 5 51 193 0 128 192 0 50)
|
||||||
|
:constants (
|
||||||
|
"HTML_TAGS"
|
||||||
|
"list"
|
||||||
|
"html"
|
||||||
|
"head"
|
||||||
|
"body"
|
||||||
|
"title"
|
||||||
|
"meta"
|
||||||
|
"link"
|
||||||
|
"script"
|
||||||
|
"style"
|
||||||
|
"noscript"
|
||||||
|
"header"
|
||||||
|
"nav"
|
||||||
|
"main"
|
||||||
|
"section"
|
||||||
|
"article"
|
||||||
|
"aside"
|
||||||
|
"footer"
|
||||||
|
"h1"
|
||||||
|
"h2"
|
||||||
|
"h3"
|
||||||
|
"h4"
|
||||||
|
"h5"
|
||||||
|
"h6"
|
||||||
|
"hgroup"
|
||||||
|
"div"
|
||||||
|
"p"
|
||||||
|
"blockquote"
|
||||||
|
"pre"
|
||||||
|
"figure"
|
||||||
|
"figcaption"
|
||||||
|
"address"
|
||||||
|
"details"
|
||||||
|
"summary"
|
||||||
|
"a"
|
||||||
|
"span"
|
||||||
|
"em"
|
||||||
|
"strong"
|
||||||
|
"small"
|
||||||
|
"b"
|
||||||
|
"i"
|
||||||
|
"u"
|
||||||
|
"s"
|
||||||
|
"mark"
|
||||||
|
"sub"
|
||||||
|
"sup"
|
||||||
|
"abbr"
|
||||||
|
"cite"
|
||||||
|
"code"
|
||||||
|
"kbd"
|
||||||
|
"samp"
|
||||||
|
"var"
|
||||||
|
"time"
|
||||||
|
"br"
|
||||||
|
"wbr"
|
||||||
|
"hr"
|
||||||
|
"ul"
|
||||||
|
"ol"
|
||||||
|
"li"
|
||||||
|
"dl"
|
||||||
|
"dt"
|
||||||
|
"dd"
|
||||||
|
"table"
|
||||||
|
"thead"
|
||||||
|
"tbody"
|
||||||
|
"tfoot"
|
||||||
|
"tr"
|
||||||
|
"th"
|
||||||
|
"td"
|
||||||
|
"caption"
|
||||||
|
"colgroup"
|
||||||
|
"col"
|
||||||
|
"form"
|
||||||
|
"input"
|
||||||
|
"textarea"
|
||||||
|
"select"
|
||||||
|
"option"
|
||||||
|
"optgroup"
|
||||||
|
"button"
|
||||||
|
"label"
|
||||||
|
"fieldset"
|
||||||
|
"legend"
|
||||||
|
"output"
|
||||||
|
"datalist"
|
||||||
|
"img"
|
||||||
|
"video"
|
||||||
|
"audio"
|
||||||
|
"source"
|
||||||
|
"picture"
|
||||||
|
"canvas"
|
||||||
|
"iframe"
|
||||||
|
"svg"
|
||||||
|
"math"
|
||||||
|
"path"
|
||||||
|
"circle"
|
||||||
|
"ellipse"
|
||||||
|
"rect"
|
||||||
|
"line"
|
||||||
|
"polyline"
|
||||||
|
"polygon"
|
||||||
|
"text"
|
||||||
|
"tspan"
|
||||||
|
"g"
|
||||||
|
"defs"
|
||||||
|
"use"
|
||||||
|
"clipPath"
|
||||||
|
"mask"
|
||||||
|
"pattern"
|
||||||
|
"linearGradient"
|
||||||
|
"radialGradient"
|
||||||
|
"stop"
|
||||||
|
"filter"
|
||||||
|
"feGaussianBlur"
|
||||||
|
"feOffset"
|
||||||
|
"feBlend"
|
||||||
|
"feColorMatrix"
|
||||||
|
"feComposite"
|
||||||
|
"feMerge"
|
||||||
|
"feMergeNode"
|
||||||
|
"feTurbulence"
|
||||||
|
"feComponentTransfer"
|
||||||
|
"feFuncR"
|
||||||
|
"feFuncG"
|
||||||
|
"feFuncB"
|
||||||
|
"feFuncA"
|
||||||
|
"feDisplacementMap"
|
||||||
|
"feFlood"
|
||||||
|
"feImage"
|
||||||
|
"feMorphology"
|
||||||
|
"feSpecularLighting"
|
||||||
|
"feDiffuseLighting"
|
||||||
|
"fePointLight"
|
||||||
|
"feSpotLight"
|
||||||
|
"feDistantLight"
|
||||||
|
"animate"
|
||||||
|
"animateTransform"
|
||||||
|
"foreignObject"
|
||||||
|
"template"
|
||||||
|
"slot"
|
||||||
|
"dialog"
|
||||||
|
"menu"
|
||||||
|
"VOID_ELEMENTS"
|
||||||
|
"area"
|
||||||
|
"base"
|
||||||
|
"embed"
|
||||||
|
"param"
|
||||||
|
"track"
|
||||||
|
"BOOLEAN_ATTRS"
|
||||||
|
"async"
|
||||||
|
"autofocus"
|
||||||
|
"autoplay"
|
||||||
|
"checked"
|
||||||
|
"controls"
|
||||||
|
"default"
|
||||||
|
"defer"
|
||||||
|
"disabled"
|
||||||
|
"formnovalidate"
|
||||||
|
"hidden"
|
||||||
|
"inert"
|
||||||
|
"ismap"
|
||||||
|
"loop"
|
||||||
|
"multiple"
|
||||||
|
"muted"
|
||||||
|
"nomodule"
|
||||||
|
"novalidate"
|
||||||
|
"open"
|
||||||
|
"playsinline"
|
||||||
|
"readonly"
|
||||||
|
"required"
|
||||||
|
"reversed"
|
||||||
|
"selected"
|
||||||
|
"*definition-form-extensions*"
|
||||||
|
"definition-form?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 6 34 94 0 5 16 0 1 2 0 52 0 0 2 6 34 80 0 5 16 0 1 3 0 52 0 0 2 6 34 66 0 5 16 0 1 4 0 52 0 0 2 6 34 52 0 5 16 0 1 5 0 52 0 0 2 6 34 38 0 5 16 0 1 6 0 52 0 0 2 6 34 24 0 5 16 0 1 7 0 52 0 0 2 6 34 10 0 5 20 9 0 16 0 52 8 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"define"
|
||||||
|
"defcomp"
|
||||||
|
"defisland"
|
||||||
|
"defmacro"
|
||||||
|
"defstyle"
|
||||||
|
"deftype"
|
||||||
|
"defeffect"
|
||||||
|
"contains?"
|
||||||
|
"*definition-form-extensions*"))
|
||||||
|
"parse-element-args"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (52 0 0 0 17 2 52 1 0 0 17 3 51 3 0 1 0 1 1 1 2 1 3 1 4 0 1 5 0 1 6 0 4 52 0 0 4 16 0 52 2 0 3 5 16 2 16 3 52 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dict"
|
||||||
|
"list"
|
||||||
|
"reduce"
|
||||||
|
(code :arity 2 :upvalue-count 4
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 2 16 2 33 29 0 16 0 1 1 0 4 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 154 0 16 1 52 6 0 1 1 7 0 52 5 0 2 6 33 24 0 5 16 0 1 3 0 52 0 0 2 52 4 0 1 18 0 52 9 0 1 52 8 0 2 33 78 0 20 10 0 20 11 0 18 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 12 0 2 18 1 48 2 48 1 17 3 18 2 20 14 0 16 1 48 1 16 3 52 13 0 3 5 16 0 1 1 0 3 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 5 32 32 0 20 15 0 18 3 16 1 48 2 5 16 0 1 3 0 16 0 1 3 0 52 0 0 2 52 4 0 1 52 2 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"skip"
|
||||||
|
"assoc"
|
||||||
|
"i"
|
||||||
|
"inc"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"keyword"
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"nth"
|
||||||
|
"dict-set!"
|
||||||
|
"keyword-name"
|
||||||
|
"append!"))
|
||||||
|
"i"
|
||||||
|
0
|
||||||
|
"skip"))
|
||||||
|
"render-attrs"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 1 0 51 3 0 1 0 16 0 52 4 0 1 52 2 0 2 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"join"
|
||||||
|
""
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (18 0 16 0 52 0 0 2 17 1 20 2 0 16 0 52 1 0 2 6 33 3 0 5 16 1 33 12 0 1 4 0 16 0 52 3 0 2 32 70 0 20 2 0 16 0 52 1 0 2 6 33 7 0 5 16 1 52 5 0 1 33 6 0 1 6 0 32 41 0 16 1 52 7 0 1 33 6 0 1 6 0 32 26 0 1 4 0 16 0 1 8 0 20 9 0 16 1 52 3 0 1 48 1 1 10 0 52 3 0 5 50)
|
||||||
|
:constants (
|
||||||
|
"dict-get"
|
||||||
|
"contains?"
|
||||||
|
"BOOLEAN_ATTRS"
|
||||||
|
"str"
|
||||||
|
" "
|
||||||
|
"not"
|
||||||
|
""
|
||||||
|
"nil?"
|
||||||
|
"=\""
|
||||||
|
"escape-attr"
|
||||||
|
"\""))
|
||||||
|
"keys"))
|
||||||
|
"eval-cond"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 0 0 1 33 12 0 20 1 0 16 0 16 1 49 2 32 9 0 20 2 0 16 0 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"cond-scheme?"
|
||||||
|
"eval-cond-scheme"
|
||||||
|
"eval-cond-clojure"))
|
||||||
|
"eval-cond-scheme"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 0 0 1 33 4 0 2 32 76 0 16 0 52 1 0 1 17 2 16 2 52 1 0 1 17 3 16 2 1 3 0 52 2 0 2 17 4 16 3 52 4 0 1 33 5 0 16 4 32 35 0 20 5 0 20 6 0 16 3 16 1 48 2 48 1 33 5 0 16 4 32 13 0 20 7 0 16 0 52 8 0 1 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"is-else-clause?"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"eval-cond-scheme"
|
||||||
|
"rest"))
|
||||||
|
"eval-cond-clojure"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 33 4 0 2 32 71 0 16 0 52 3 0 1 17 2 16 0 1 5 0 52 4 0 2 17 3 16 2 52 6 0 1 33 5 0 16 3 32 38 0 20 7 0 20 8 0 16 2 16 1 48 2 48 1 33 5 0 16 3 32 16 0 20 9 0 16 0 1 2 0 52 10 0 2 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"is-else-clause?"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"eval-cond-clojure"
|
||||||
|
"slice"))
|
||||||
|
"process-bindings"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 1 48 1 17 2 51 2 0 1 2 16 0 52 1 0 2 5 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"env-extend"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 1 0 1 1 2 0 52 0 0 2 6 33 14 0 5 16 0 52 4 0 1 1 5 0 52 3 0 2 33 79 0 16 0 52 6 0 1 52 1 0 1 1 7 0 52 0 0 2 33 14 0 20 8 0 16 0 52 6 0 1 48 1 32 10 0 16 0 52 6 0 1 52 9 0 1 17 1 20 10 0 18 0 16 1 20 11 0 20 12 0 16 0 1 14 0 52 13 0 2 18 0 48 2 48 1 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"list"
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
2
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"str"
|
||||||
|
"env-bind!"
|
||||||
|
"trampoline"
|
||||||
|
"eval-expr"
|
||||||
|
"nth"
|
||||||
|
1))))
|
||||||
|
"is-render-expr?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 2 0 1 1 3 0 52 1 0 2 52 0 0 1 6 34 7 0 5 16 0 52 4 0 1 33 4 0 4 32 170 0 16 0 52 5 0 1 17 1 16 1 52 2 0 1 1 6 0 52 1 0 2 52 0 0 1 33 4 0 4 32 138 0 20 7 0 16 1 48 1 17 2 16 2 1 8 0 52 1 0 2 6 34 116 0 5 16 2 1 9 0 52 1 0 2 6 34 102 0 5 16 2 1 11 0 52 10 0 2 6 34 88 0 5 16 2 1 12 0 52 10 0 2 6 34 74 0 5 20 14 0 16 2 52 13 0 2 6 34 60 0 5 16 2 1 17 0 52 16 0 2 1 18 0 52 15 0 2 6 33 39 0 5 16 0 52 19 0 1 1 20 0 52 15 0 2 6 33 21 0 5 16 0 1 20 0 52 21 0 2 52 2 0 1 1 22 0 52 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"list"
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"<>"
|
||||||
|
"raw!"
|
||||||
|
"starts-with?"
|
||||||
|
"~"
|
||||||
|
"html:"
|
||||||
|
"contains?"
|
||||||
|
"HTML_TAGS"
|
||||||
|
">"
|
||||||
|
"index-of"
|
||||||
|
"-"
|
||||||
|
0
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"nth"
|
||||||
|
"keyword"))
|
||||||
|
"merge-spread-attrs"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (51 1 0 1 1 1 0 16 1 52 2 0 1 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 16 0 52 0 0 2 17 1 16 0 1 2 0 52 1 0 2 33 62 0 18 1 1 2 0 52 0 0 2 17 2 18 1 1 2 0 16 2 6 33 14 0 5 16 2 1 5 0 52 1 0 2 52 4 0 1 33 14 0 16 2 1 7 0 16 1 52 6 0 3 32 2 0 16 1 52 3 0 3 32 84 0 16 0 1 8 0 52 1 0 2 33 62 0 18 1 1 8 0 52 0 0 2 17 2 18 1 1 8 0 16 2 6 33 14 0 5 16 2 1 5 0 52 1 0 2 52 4 0 1 33 14 0 16 2 1 9 0 16 1 52 6 0 3 32 2 0 16 1 52 3 0 3 32 10 0 18 1 16 0 16 1 52 3 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict-get"
|
||||||
|
"="
|
||||||
|
"class"
|
||||||
|
"dict-set!"
|
||||||
|
"not"
|
||||||
|
""
|
||||||
|
"str"
|
||||||
|
" "
|
||||||
|
"style"
|
||||||
|
";"))
|
||||||
|
"keys"))
|
||||||
|
"escape-html"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 17 1 16 1 1 2 0 1 3 0 52 1 0 3 17 1 5 16 1 1 4 0 1 5 0 52 1 0 3 17 1 5 16 1 1 6 0 1 7 0 52 1 0 3 17 1 5 16 1 1 8 0 1 9 0 52 1 0 3 17 1 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"str"
|
||||||
|
"replace"
|
||||||
|
"&"
|
||||||
|
"&"
|
||||||
|
"<"
|
||||||
|
"<"
|
||||||
|
">"
|
||||||
|
">"
|
||||||
|
"\""
|
||||||
|
"""))
|
||||||
|
"escape-attr"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"escape-html")))))
|
||||||
523
shared/static/wasm/sx/router.sxbc
Normal file
523
shared/static/wasm/sx/router.sxbc
Normal file
@@ -0,0 +1,523 @@
|
|||||||
|
(sxbc 1 "10d418bcee7e13ff"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 51 33 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 5 51 45 0 128 44 0 5 51 47 0 128 46 0 5 51 49 0 128 48 0 5 51 51 0 128 50 0 5 51 53 0 128 52 0 5 51 55 0 128 54 0 5 51 57 0 128 56 0 5 51 59 0 128 58 0 5 51 61 0 128 60 0 5 51 63 0 128 62 0 5 51 65 0 128 64 0 5 51 67 0 128 66 0 5 51 69 0 128 68 0 5 51 71 0 128 70 0 50)
|
||||||
|
:constants (
|
||||||
|
"split-path-segments"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 12 0 16 0 1 3 0 52 2 0 2 32 2 0 16 0 17 1 16 1 52 5 0 1 52 4 0 1 6 33 10 0 5 16 1 1 1 0 52 6 0 2 33 25 0 16 1 1 7 0 16 1 52 9 0 1 1 3 0 52 8 0 2 52 2 0 3 32 2 0 16 1 17 2 16 2 52 5 0 1 33 7 0 52 10 0 0 32 9 0 16 2 1 1 0 52 11 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"/"
|
||||||
|
"slice"
|
||||||
|
1
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"ends-with?"
|
||||||
|
0
|
||||||
|
"-"
|
||||||
|
"len"
|
||||||
|
"list"
|
||||||
|
"split"))
|
||||||
|
"make-route-segment"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 6 33 10 0 5 16 0 1 3 0 52 2 0 2 33 59 0 16 0 1 5 0 16 0 52 7 0 1 1 5 0 52 6 0 2 52 4 0 3 17 1 65 0 0 17 2 16 2 1 9 0 1 10 0 52 8 0 3 5 16 2 1 11 0 16 1 52 8 0 3 5 16 2 32 32 0 65 0 0 17 1 16 1 1 9 0 1 12 0 52 8 0 3 5 16 1 1 11 0 16 0 52 8 0 3 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"<"
|
||||||
|
"ends-with?"
|
||||||
|
">"
|
||||||
|
"slice"
|
||||||
|
1
|
||||||
|
"-"
|
||||||
|
"len"
|
||||||
|
"dict-set!"
|
||||||
|
"type"
|
||||||
|
"param"
|
||||||
|
"value"
|
||||||
|
"literal"))
|
||||||
|
"parse-route-pattern"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 20 2 0 16 1 52 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"split-path-segments"
|
||||||
|
"map"
|
||||||
|
"make-route-segment"))
|
||||||
|
"match-route-segments"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 2 0 1 16 1 52 2 0 1 52 1 0 2 52 0 0 1 33 4 0 2 32 35 0 65 0 0 17 2 3 17 3 51 4 0 1 3 1 0 1 2 16 1 52 3 0 2 5 16 3 33 5 0 16 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"="
|
||||||
|
"len"
|
||||||
|
"for-each-indexed"
|
||||||
|
(code :arity 2 :upvalue-count 3
|
||||||
|
:bytecode (18 0 33 103 0 18 1 16 0 52 0 0 2 17 2 16 1 1 2 0 52 1 0 2 17 3 16 3 1 4 0 52 3 0 2 33 32 0 16 2 16 1 1 6 0 52 1 0 2 52 3 0 2 52 5 0 1 33 6 0 4 19 0 32 1 0 2 32 35 0 16 3 1 7 0 52 3 0 2 33 20 0 18 2 16 1 1 6 0 52 1 0 2 16 2 52 8 0 3 32 3 0 4 19 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"nth"
|
||||||
|
"get"
|
||||||
|
"type"
|
||||||
|
"="
|
||||||
|
"literal"
|
||||||
|
"not"
|
||||||
|
"value"
|
||||||
|
"param"
|
||||||
|
"dict-set!"))))
|
||||||
|
"match-route"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 2 20 1 0 16 1 48 1 17 3 20 2 0 16 2 16 3 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"split-path-segments"
|
||||||
|
"parse-route-pattern"
|
||||||
|
"match-route-segments"))
|
||||||
|
"find-matching-route"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 17 0 20 2 0 16 0 48 1 6 34 3 0 5 16 0 32 2 0 16 0 17 2 20 3 0 16 2 48 1 17 3 2 17 4 51 5 0 1 4 1 3 16 1 52 4 0 2 5 16 4 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"/("
|
||||||
|
"sx-url-to-path"
|
||||||
|
"split-path-segments"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (18 0 52 0 0 1 33 65 0 20 1 0 18 1 16 0 1 3 0 52 2 0 2 48 2 17 1 16 1 52 0 0 1 52 4 0 1 33 30 0 16 0 65 0 0 52 5 0 2 17 2 16 2 1 7 0 16 1 52 6 0 3 5 16 2 19 0 32 1 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"match-route-segments"
|
||||||
|
"get"
|
||||||
|
"parsed"
|
||||||
|
"not"
|
||||||
|
"merge"
|
||||||
|
"dict-set!"
|
||||||
|
"params"))))
|
||||||
|
"_fn-to-segment"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 6 1 0 0 52 1 0 2 33 7 0 5 1 2 0 32 147 0 6 1 3 0 52 1 0 2 33 7 0 5 1 4 0 32 129 0 6 1 5 0 52 1 0 2 33 7 0 5 1 6 0 32 111 0 6 1 7 0 52 1 0 2 33 7 0 5 1 8 0 32 93 0 6 1 9 0 52 1 0 2 33 7 0 5 1 10 0 32 75 0 6 1 11 0 52 1 0 2 33 7 0 5 1 12 0 32 57 0 6 1 13 0 52 1 0 2 33 7 0 5 1 14 0 32 39 0 6 1 15 0 52 1 0 2 33 7 0 5 1 16 0 32 21 0 6 1 17 0 52 1 0 2 33 7 0 5 1 18 0 32 3 0 5 16 0 50)
|
||||||
|
:constants (
|
||||||
|
"doc"
|
||||||
|
"="
|
||||||
|
"docs"
|
||||||
|
"spec"
|
||||||
|
"specs"
|
||||||
|
"bootstrapper"
|
||||||
|
"bootstrappers"
|
||||||
|
"test"
|
||||||
|
"testing"
|
||||||
|
"example"
|
||||||
|
"examples"
|
||||||
|
"protocol"
|
||||||
|
"protocols"
|
||||||
|
"essay"
|
||||||
|
"essays"
|
||||||
|
"plan"
|
||||||
|
"plans"
|
||||||
|
"reference-detail"
|
||||||
|
"reference"))
|
||||||
|
"sx-url-to-path"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 6 33 10 0 5 16 0 1 4 0 52 3 0 2 52 0 0 1 33 4 0 2 32 99 0 16 0 1 6 0 16 0 52 8 0 1 1 9 0 52 7 0 2 52 5 0 3 17 1 16 1 1 11 0 1 12 0 52 10 0 3 1 13 0 1 14 0 52 10 0 3 1 4 0 1 14 0 52 10 0 3 17 2 51 16 0 16 2 1 12 0 52 17 0 2 52 15 0 2 17 3 1 12 0 1 12 0 20 21 0 16 3 52 20 0 2 52 19 0 2 52 18 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"starts-with?"
|
||||||
|
"/("
|
||||||
|
"ends-with?"
|
||||||
|
")"
|
||||||
|
"slice"
|
||||||
|
2
|
||||||
|
"-"
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"replace"
|
||||||
|
"."
|
||||||
|
"/"
|
||||||
|
"("
|
||||||
|
""
|
||||||
|
"filter"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"empty?"))
|
||||||
|
"split"
|
||||||
|
"str"
|
||||||
|
"join"
|
||||||
|
"map"
|
||||||
|
"_fn-to-segment"))
|
||||||
|
"_count-leading-dots"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 6 0 1 1 0 32 39 0 16 0 1 3 0 52 2 0 2 33 24 0 1 5 0 20 6 0 16 0 1 5 0 52 7 0 2 48 1 52 4 0 2 32 3 0 1 1 0 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
0
|
||||||
|
"starts-with?"
|
||||||
|
"."
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"_count-leading-dots"
|
||||||
|
"slice"))
|
||||||
|
"_strip-trailing-close"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 30 0 20 2 0 16 0 1 4 0 16 0 52 6 0 1 1 7 0 52 5 0 2 52 3 0 3 49 1 32 2 0 16 0 50)
|
||||||
|
:constants (
|
||||||
|
"ends-with?"
|
||||||
|
")"
|
||||||
|
"_strip-trailing-close"
|
||||||
|
"slice"
|
||||||
|
0
|
||||||
|
"-"
|
||||||
|
"len"
|
||||||
|
1))
|
||||||
|
"_index-of-safe"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 16 1 52 0 0 2 17 2 16 2 52 1 0 1 6 34 10 0 5 16 2 1 3 0 52 2 0 2 33 4 0 2 32 2 0 16 2 50)
|
||||||
|
:constants (
|
||||||
|
"index-of"
|
||||||
|
"nil?"
|
||||||
|
"<"
|
||||||
|
0))
|
||||||
|
"_last-index-of"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 16 1 48 2 17 2 16 2 52 1 0 1 33 4 0 2 32 53 0 20 2 0 16 0 16 2 1 5 0 52 4 0 2 52 3 0 2 16 1 48 2 17 3 16 3 52 1 0 1 33 5 0 16 2 32 15 0 16 2 1 5 0 52 4 0 2 16 3 52 4 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"_index-of-safe"
|
||||||
|
"nil?"
|
||||||
|
"_last-index-of"
|
||||||
|
"slice"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"_pop-sx-url-level"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 16 0 52 2 0 1 20 0 0 16 0 48 1 52 2 0 1 52 1 0 2 17 2 16 2 1 4 0 52 3 0 2 33 6 0 1 5 0 32 67 0 20 6 0 16 1 1 7 0 48 2 17 3 16 3 52 8 0 1 33 6 0 1 5 0 32 40 0 16 1 1 11 0 16 3 52 10 0 3 16 0 16 0 52 2 0 1 16 2 1 4 0 52 1 0 2 52 1 0 2 52 10 0 2 52 9 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"_strip-trailing-close"
|
||||||
|
"-"
|
||||||
|
"len"
|
||||||
|
"<="
|
||||||
|
1
|
||||||
|
"/"
|
||||||
|
"_last-index-of"
|
||||||
|
".("
|
||||||
|
"nil?"
|
||||||
|
"str"
|
||||||
|
"slice"
|
||||||
|
0))
|
||||||
|
"_pop-sx-url-levels"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 1 1 0 52 0 0 2 33 5 0 16 0 32 21 0 20 2 0 20 3 0 16 0 48 1 16 1 1 5 0 52 4 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"<="
|
||||||
|
0
|
||||||
|
"_pop-sx-url-levels"
|
||||||
|
"_pop-sx-url-level"
|
||||||
|
"-"
|
||||||
|
1))
|
||||||
|
"_split-pos-kw"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 16 0 52 1 0 1 52 0 0 2 33 23 0 1 2 0 1 4 0 16 2 52 3 0 2 1 5 0 16 3 65 2 0 32 136 0 16 0 16 1 52 6 0 2 17 4 16 4 1 8 0 52 7 0 2 33 84 0 16 1 1 11 0 52 10 0 2 16 0 52 1 0 1 52 9 0 2 33 18 0 16 0 16 1 1 11 0 52 10 0 2 52 6 0 2 32 3 0 1 12 0 17 5 20 13 0 16 0 16 1 1 14 0 52 10 0 2 16 2 16 3 16 4 16 5 52 16 0 2 52 16 0 1 52 15 0 2 49 4 32 30 0 20 13 0 16 0 16 1 1 11 0 52 10 0 2 16 2 16 4 52 16 0 1 52 15 0 2 16 3 49 4 50)
|
||||||
|
:constants (
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
"positional"
|
||||||
|
"join"
|
||||||
|
"."
|
||||||
|
"keywords"
|
||||||
|
"nth"
|
||||||
|
"starts-with?"
|
||||||
|
":"
|
||||||
|
"<"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
""
|
||||||
|
"_split-pos-kw"
|
||||||
|
2
|
||||||
|
"append"
|
||||||
|
"list"))
|
||||||
|
"_parse-relative-body"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 19 0 1 1 0 1 2 0 1 3 0 52 4 0 0 65 2 0 32 25 0 20 5 0 16 0 1 7 0 52 6 0 2 1 8 0 52 4 0 0 52 4 0 0 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"positional"
|
||||||
|
""
|
||||||
|
"keywords"
|
||||||
|
"list"
|
||||||
|
"_split-pos-kw"
|
||||||
|
"split"
|
||||||
|
"."
|
||||||
|
0))
|
||||||
|
"_extract-innermost"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 16 0 20 0 0 16 0 48 1 52 2 0 1 52 1 0 2 17 2 20 3 0 16 1 1 4 0 48 2 17 3 16 3 52 5 0 1 33 29 0 1 6 0 1 7 0 1 8 0 16 1 1 9 0 52 1 0 2 1 10 0 16 2 65 3 0 32 47 0 1 6 0 16 1 1 11 0 16 3 1 9 0 52 12 0 2 52 1 0 3 1 8 0 16 1 16 3 1 9 0 52 12 0 2 52 1 0 2 1 10 0 16 2 65 3 0 50)
|
||||||
|
:constants (
|
||||||
|
"_strip-trailing-close"
|
||||||
|
"slice"
|
||||||
|
"len"
|
||||||
|
"_last-index-of"
|
||||||
|
".("
|
||||||
|
"nil?"
|
||||||
|
"before"
|
||||||
|
"/("
|
||||||
|
"content"
|
||||||
|
2
|
||||||
|
"suffix"
|
||||||
|
0
|
||||||
|
"+"))
|
||||||
|
"_find-kw-in-tokens"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 1 16 0 52 1 0 1 52 0 0 2 33 4 0 2 32 77 0 16 0 16 1 52 3 0 2 16 2 52 2 0 2 6 33 20 0 5 16 1 1 6 0 52 5 0 2 16 0 52 1 0 1 52 4 0 2 33 18 0 16 0 16 1 1 6 0 52 5 0 2 52 3 0 2 32 18 0 20 7 0 16 0 16 1 1 6 0 52 5 0 2 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
"="
|
||||||
|
"nth"
|
||||||
|
"<"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"_find-kw-in-tokens"))
|
||||||
|
"_find-keyword-value"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 2 0 52 1 0 2 1 3 0 16 1 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"_find-kw-in-tokens"
|
||||||
|
"split"
|
||||||
|
"."
|
||||||
|
0))
|
||||||
|
"_replace-kw-in-tokens"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (16 1 16 0 52 1 0 1 52 0 0 2 33 7 0 52 2 0 0 32 108 0 16 0 16 1 52 4 0 2 16 2 52 3 0 2 6 33 20 0 5 16 1 1 7 0 52 6 0 2 16 0 52 1 0 1 52 5 0 2 33 35 0 16 2 16 3 52 2 0 2 20 9 0 16 0 16 1 1 10 0 52 6 0 2 16 2 16 3 48 4 52 8 0 2 32 32 0 16 0 16 1 52 4 0 2 20 9 0 16 0 16 1 1 7 0 52 6 0 2 16 2 16 3 48 4 52 11 0 2 50)
|
||||||
|
:constants (
|
||||||
|
">="
|
||||||
|
"len"
|
||||||
|
"list"
|
||||||
|
"="
|
||||||
|
"nth"
|
||||||
|
"<"
|
||||||
|
"+"
|
||||||
|
1
|
||||||
|
"append"
|
||||||
|
"_replace-kw-in-tokens"
|
||||||
|
2
|
||||||
|
"cons"))
|
||||||
|
"_set-keyword-in-content"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 48 2 17 3 16 3 52 1 0 1 33 19 0 16 0 1 3 0 16 1 1 3 0 16 2 52 2 0 5 32 28 0 1 3 0 20 5 0 16 0 1 3 0 52 6 0 2 1 7 0 16 1 16 2 48 4 52 4 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"_find-keyword-value"
|
||||||
|
"nil?"
|
||||||
|
"str"
|
||||||
|
"."
|
||||||
|
"join"
|
||||||
|
"_replace-kw-in-tokens"
|
||||||
|
"split"
|
||||||
|
0))
|
||||||
|
"_is-delta-value?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 6 33 42 0 5 16 0 52 3 0 1 1 4 0 52 2 0 2 6 33 24 0 5 16 0 1 6 0 52 5 0 2 6 34 10 0 5 16 0 1 7 0 52 5 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
">"
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"starts-with?"
|
||||||
|
"+"
|
||||||
|
"-"))
|
||||||
|
"_apply-delta"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 2 52 0 0 2 17 2 16 1 2 52 0 0 2 17 3 16 2 52 1 0 1 6 34 7 0 5 16 3 52 1 0 1 33 5 0 16 1 32 12 0 16 2 16 3 52 3 0 2 52 2 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"parse-int"
|
||||||
|
"nil?"
|
||||||
|
"str"
|
||||||
|
"+"))
|
||||||
|
"_apply-kw-pairs"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 52 0 0 1 33 5 0 16 0 32 100 0 16 1 52 1 0 1 17 2 16 2 52 1 0 1 17 3 16 2 1 3 0 52 2 0 2 17 4 20 4 0 16 4 48 1 33 37 0 20 5 0 16 0 16 3 48 2 17 6 16 6 52 6 0 1 33 5 0 16 4 32 9 0 20 7 0 16 6 16 4 48 2 32 2 0 16 4 17 5 20 8 0 20 9 0 16 0 16 3 16 5 48 3 16 1 52 10 0 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"first"
|
||||||
|
"nth"
|
||||||
|
1
|
||||||
|
"_is-delta-value?"
|
||||||
|
"_find-keyword-value"
|
||||||
|
"nil?"
|
||||||
|
"_apply-delta"
|
||||||
|
"_apply-kw-pairs"
|
||||||
|
"_set-keyword-in-content"
|
||||||
|
"rest"))
|
||||||
|
"_apply-keywords-to-url"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 1 52 0 0 1 33 5 0 16 0 32 51 0 20 1 0 16 0 48 1 17 2 20 2 0 16 2 1 4 0 52 3 0 2 16 1 48 2 17 3 16 2 1 6 0 52 3 0 2 16 3 16 2 1 7 0 52 3 0 2 52 5 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"empty?"
|
||||||
|
"_extract-innermost"
|
||||||
|
"_apply-kw-pairs"
|
||||||
|
"get"
|
||||||
|
"content"
|
||||||
|
"str"
|
||||||
|
"before"
|
||||||
|
"suffix"))
|
||||||
|
"_normalize-relative"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 5 0 16 0 32 12 0 1 1 0 16 0 1 3 0 52 2 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"("
|
||||||
|
"str"
|
||||||
|
")"))
|
||||||
|
"resolve-relative-url"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 1 48 1 17 2 16 2 1 2 0 16 2 52 4 0 1 1 2 0 52 3 0 2 52 1 0 3 17 3 20 5 0 16 3 48 1 17 4 16 3 20 5 0 16 3 48 1 52 1 0 2 17 5 16 4 1 7 0 52 6 0 2 33 5 0 16 0 32 215 0 20 8 0 16 5 48 1 17 6 16 6 1 10 0 52 9 0 2 17 7 16 6 1 11 0 52 9 0 2 17 8 16 4 1 2 0 52 6 0 2 33 58 0 16 7 52 12 0 1 33 5 0 16 0 32 41 0 20 13 0 16 0 48 1 17 10 16 0 20 13 0 16 0 48 1 52 4 0 1 52 1 0 2 17 11 16 10 1 15 0 16 7 16 11 52 14 0 4 32 103 0 20 16 0 16 0 16 4 1 2 0 52 3 0 2 48 2 17 10 16 7 52 12 0 1 33 5 0 16 10 32 71 0 16 10 1 17 0 52 6 0 2 33 15 0 1 18 0 16 7 1 19 0 52 14 0 3 32 44 0 20 13 0 16 10 48 1 17 11 16 10 20 13 0 16 10 48 1 52 4 0 1 52 1 0 2 17 12 16 11 1 20 0 16 7 1 19 0 16 12 52 14 0 5 17 9 20 21 0 16 9 16 8 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"_normalize-relative"
|
||||||
|
"slice"
|
||||||
|
1
|
||||||
|
"-"
|
||||||
|
"len"
|
||||||
|
"_count-leading-dots"
|
||||||
|
"="
|
||||||
|
0
|
||||||
|
"_parse-relative-body"
|
||||||
|
"get"
|
||||||
|
"positional"
|
||||||
|
"keywords"
|
||||||
|
"empty?"
|
||||||
|
"_strip-trailing-close"
|
||||||
|
"str"
|
||||||
|
"."
|
||||||
|
"_pop-sx-url-levels"
|
||||||
|
"/"
|
||||||
|
"/("
|
||||||
|
")"
|
||||||
|
".("
|
||||||
|
"_apply-keywords-to-url"))
|
||||||
|
"relative-sx-url?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 6 33 14 0 5 16 0 1 3 0 52 0 0 2 52 2 0 1 6 34 10 0 5 16 0 1 4 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"("
|
||||||
|
"not"
|
||||||
|
"/("
|
||||||
|
"."))
|
||||||
|
"_url-special-forms"
|
||||||
|
(code
|
||||||
|
:bytecode (1 1 0 1 2 0 1 3 0 1 4 0 1 5 0 1 6 0 52 0 0 6 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"!source"
|
||||||
|
"!inspect"
|
||||||
|
"!diff"
|
||||||
|
"!search"
|
||||||
|
"!raw"
|
||||||
|
"!json"))
|
||||||
|
"url-special-form?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 6 33 12 0 5 20 3 0 48 0 16 0 52 2 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"starts-with?"
|
||||||
|
"!"
|
||||||
|
"contains?"
|
||||||
|
"_url-special-forms"))
|
||||||
|
"parse-sx-url"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 33 17 0 1 2 0 16 0 1 3 0 1 4 0 65 2 0 32 119 1 20 5 0 16 0 48 1 33 17 0 1 2 0 16 0 1 3 0 1 6 0 65 2 0 32 92 1 16 0 1 8 0 52 7 0 2 6 33 10 0 5 16 0 1 10 0 52 9 0 2 33 193 0 16 0 1 12 0 16 0 52 14 0 1 1 15 0 52 13 0 2 52 11 0 3 17 1 20 16 0 16 1 1 17 0 48 2 17 2 20 16 0 16 1 1 18 0 48 2 17 3 16 2 52 19 0 1 6 33 7 0 5 16 3 52 19 0 1 33 9 0 16 1 52 14 0 1 32 36 0 16 2 52 19 0 1 33 5 0 16 3 32 22 0 16 3 52 19 0 1 33 5 0 16 2 32 8 0 16 2 16 3 52 20 0 2 17 4 16 1 1 21 0 16 4 52 11 0 3 17 5 16 1 16 4 52 11 0 2 17 6 16 6 1 17 0 52 7 0 2 33 12 0 16 6 1 15 0 52 11 0 2 32 2 0 16 6 17 7 1 2 0 16 0 1 3 0 1 22 0 1 23 0 16 7 1 24 0 16 5 65 4 0 32 129 0 16 0 1 25 0 52 7 0 2 6 33 10 0 5 16 0 1 10 0 52 9 0 2 33 46 0 16 0 1 12 0 16 0 52 14 0 1 1 15 0 52 13 0 2 52 11 0 3 17 1 1 2 0 16 0 1 3 0 1 26 0 1 27 0 16 1 65 3 0 32 57 0 16 0 1 28 0 52 7 0 2 6 33 10 0 5 16 0 1 10 0 52 9 0 2 33 17 0 1 2 0 16 0 1 3 0 1 29 0 65 2 0 32 14 0 1 2 0 16 0 1 3 0 1 30 0 65 2 0 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"/"
|
||||||
|
"raw"
|
||||||
|
"type"
|
||||||
|
"home"
|
||||||
|
"relative-sx-url?"
|
||||||
|
"relative"
|
||||||
|
"starts-with?"
|
||||||
|
"/(!"
|
||||||
|
"ends-with?"
|
||||||
|
")"
|
||||||
|
"slice"
|
||||||
|
2
|
||||||
|
"-"
|
||||||
|
"len"
|
||||||
|
1
|
||||||
|
"_index-of-safe"
|
||||||
|
"."
|
||||||
|
"("
|
||||||
|
"nil?"
|
||||||
|
"min"
|
||||||
|
0
|
||||||
|
"special-form"
|
||||||
|
"inner"
|
||||||
|
"form"
|
||||||
|
"/(~"
|
||||||
|
"direct-component"
|
||||||
|
"name"
|
||||||
|
"/("
|
||||||
|
"absolute"
|
||||||
|
"path"))
|
||||||
|
"url-special-form-name"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 16 1 1 3 0 52 2 0 2 1 4 0 52 1 0 2 33 12 0 16 1 1 5 0 52 2 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"parse-sx-url"
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"type"
|
||||||
|
"special-form"
|
||||||
|
"form"))
|
||||||
|
"url-special-form-inner"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 16 1 1 3 0 52 2 0 2 1 4 0 52 1 0 2 33 12 0 16 1 1 5 0 52 2 0 2 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"parse-sx-url"
|
||||||
|
"="
|
||||||
|
"get"
|
||||||
|
"type"
|
||||||
|
"special-form"
|
||||||
|
"inner"))
|
||||||
|
"url-to-expr"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 6 34 7 0 5 16 0 52 2 0 1 33 7 0 52 3 0 0 32 73 0 16 0 1 1 0 52 4 0 2 33 12 0 16 0 1 6 0 52 5 0 2 32 2 0 16 0 17 1 16 1 1 8 0 1 9 0 52 7 0 3 17 2 20 10 0 16 2 48 1 17 3 16 3 52 2 0 1 33 7 0 52 3 0 0 32 6 0 16 3 52 11 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"="
|
||||||
|
"/"
|
||||||
|
"empty?"
|
||||||
|
"list"
|
||||||
|
"starts-with?"
|
||||||
|
"slice"
|
||||||
|
1
|
||||||
|
"replace"
|
||||||
|
"."
|
||||||
|
" "
|
||||||
|
"sx-parse"
|
||||||
|
"first"))
|
||||||
|
"auto-quote-unknowns"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 1 0 1 52 0 0 1 33 5 0 16 0 32 39 0 16 0 52 2 0 1 33 5 0 16 0 32 25 0 16 0 52 4 0 1 51 6 0 1 1 16 0 52 7 0 1 52 5 0 2 52 3 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"list?"
|
||||||
|
"empty?"
|
||||||
|
"cons"
|
||||||
|
"first"
|
||||||
|
"map"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (16 0 52 0 0 1 33 12 0 20 1 0 16 0 18 0 49 2 32 91 0 16 0 52 3 0 1 1 4 0 52 2 0 2 33 73 0 20 5 0 16 0 48 1 17 1 20 6 0 18 0 16 1 48 2 6 34 38 0 5 16 1 1 8 0 52 7 0 2 6 34 24 0 5 16 1 1 9 0 52 7 0 2 6 34 10 0 5 16 1 1 10 0 52 7 0 2 33 5 0 16 0 32 2 0 16 1 32 2 0 16 0 50)
|
||||||
|
:constants (
|
||||||
|
"list?"
|
||||||
|
"auto-quote-unknowns"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"symbol"
|
||||||
|
"symbol-name"
|
||||||
|
"env-has?"
|
||||||
|
"starts-with?"
|
||||||
|
":"
|
||||||
|
"~"
|
||||||
|
"!"))
|
||||||
|
"rest"))
|
||||||
|
"prepare-url-expr"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 2 16 2 52 1 0 1 33 5 0 16 2 32 9 0 20 2 0 16 2 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"url-to-expr"
|
||||||
|
"empty?"
|
||||||
|
"auto-quote-unknowns")))))
|
||||||
110
shared/static/wasm/sx/signals.sxbc
Normal file
110
shared/static/wasm/sx/signals.sxbc
Normal file
@@ -0,0 +1,110 @@
|
|||||||
|
(sxbc 1 "1e908c466d2b8c22"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 52 5 0 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 50)
|
||||||
|
:constants (
|
||||||
|
"with-marsh-scope"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (52 0 0 0 17 2 20 1 0 51 2 0 1 2 16 1 48 2 5 20 3 0 16 0 1 4 0 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"list"
|
||||||
|
"with-island-scope"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"append!"))
|
||||||
|
"dom-set-data"
|
||||||
|
"sx-marsh-disposers"))
|
||||||
|
"dispose-marsh-scope"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 1 1 0 48 2 17 1 16 1 33 24 0 51 3 0 16 1 52 2 0 2 5 20 4 0 16 0 1 1 0 2 49 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dom-get-data"
|
||||||
|
"sx-marsh-disposers"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"cek-call"))
|
||||||
|
"dom-set-data"))
|
||||||
|
"*store-registry*"
|
||||||
|
"dict"
|
||||||
|
"def-store"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 17 2 16 2 16 0 52 2 0 2 52 1 0 1 33 22 0 16 2 16 0 20 4 0 16 1 2 48 2 52 3 0 3 21 0 0 32 1 0 2 5 20 0 0 16 0 52 5 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"*store-registry*"
|
||||||
|
"not"
|
||||||
|
"has-key?"
|
||||||
|
"assoc"
|
||||||
|
"cek-call"
|
||||||
|
"get"))
|
||||||
|
"use-store"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 1 0 16 0 52 0 0 2 33 12 0 20 1 0 16 0 52 2 0 2 32 16 0 1 5 0 16 0 1 6 0 52 4 0 3 52 3 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"has-key?"
|
||||||
|
"*store-registry*"
|
||||||
|
"get"
|
||||||
|
"error"
|
||||||
|
"str"
|
||||||
|
"Store not found: "
|
||||||
|
". Call (def-store ...) before (use-store ...)."))
|
||||||
|
"clear-stores"
|
||||||
|
(code
|
||||||
|
:bytecode (52 0 0 0 21 1 0 50)
|
||||||
|
:constants (
|
||||||
|
"dict"
|
||||||
|
"*store-registry*"))
|
||||||
|
"emit-event"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"dom-dispatch"))
|
||||||
|
"on-event"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 16 1 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"dom-on"))
|
||||||
|
"bridge-event"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (20 0 0 51 1 0 1 0 1 1 1 3 1 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"effect"
|
||||||
|
(code :upvalue-count 4
|
||||||
|
:bytecode (20 0 0 18 0 18 1 51 1 0 0 2 0 3 48 3 17 0 16 0 50)
|
||||||
|
:constants (
|
||||||
|
"dom-on"
|
||||||
|
(code :arity 1 :upvalue-count 2
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 18 0 33 16 0 20 1 0 18 0 16 1 52 2 0 1 48 2 32 2 0 16 1 17 2 20 3 0 18 1 16 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"event-detail"
|
||||||
|
"cek-call"
|
||||||
|
"list"
|
||||||
|
"reset!"))))))
|
||||||
|
"resource"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 1 2 0 3 1 3 0 2 1 4 0 2 52 1 0 6 48 1 17 1 20 5 0 20 6 0 16 0 2 48 2 51 7 0 1 1 51 8 0 1 1 48 3 5 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"signal"
|
||||||
|
"dict"
|
||||||
|
"loading"
|
||||||
|
"data"
|
||||||
|
"error"
|
||||||
|
"promise-then"
|
||||||
|
"cek-call"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 1 2 0 4 1 3 0 16 0 1 4 0 2 52 1 0 6 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"reset!"
|
||||||
|
"dict"
|
||||||
|
"loading"
|
||||||
|
"data"
|
||||||
|
"error"))
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 1 2 0 4 1 3 0 2 1 4 0 16 0 52 1 0 6 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"reset!"
|
||||||
|
"dict"
|
||||||
|
"loading"
|
||||||
|
"data"
|
||||||
|
"error")))))))
|
||||||
483
shared/static/wasm/sx/vm.sxbc
Normal file
483
shared/static/wasm/sx/vm.sxbc
Normal file
@@ -0,0 +1,483 @@
|
|||||||
|
(sxbc 1 "3a8a55b66b6597f5"
|
||||||
|
(code
|
||||||
|
:bytecode (51 1 0 128 0 0 5 51 3 0 128 2 0 5 51 5 0 128 4 0 5 51 7 0 128 6 0 5 51 9 0 128 8 0 5 51 11 0 128 10 0 5 51 13 0 128 12 0 5 51 15 0 128 14 0 5 51 17 0 128 16 0 5 51 19 0 128 18 0 5 51 21 0 128 20 0 5 51 23 0 128 22 0 5 51 25 0 128 24 0 5 51 27 0 128 26 0 5 51 29 0 128 28 0 5 51 31 0 128 30 0 5 51 33 0 128 32 0 5 51 35 0 128 34 0 5 51 37 0 128 36 0 5 51 39 0 128 38 0 5 51 41 0 128 40 0 5 51 43 0 128 42 0 5 51 45 0 128 44 0 5 51 47 0 128 46 0 5 51 49 0 128 48 0 5 51 51 0 128 50 0 5 51 53 0 128 52 0 5 51 55 0 128 54 0 5 51 57 0 128 56 0 5 51 59 0 128 58 0 50)
|
||||||
|
:constants (
|
||||||
|
"make-upvalue-cell"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 16 0 65 1 0 50)
|
||||||
|
:constants (
|
||||||
|
"uv-value"))
|
||||||
|
"uv-get"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"uv-value"))
|
||||||
|
"uv-set!"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 16 1 52 0 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"dict-set!"
|
||||||
|
"uv-value"))
|
||||||
|
"make-vm-code"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (1 0 0 16 2 1 1 0 16 1 1 2 0 16 0 1 3 0 16 3 65 4 0 50)
|
||||||
|
:constants (
|
||||||
|
"vc-bytecode"
|
||||||
|
"vc-locals"
|
||||||
|
"vc-arity"
|
||||||
|
"vc-constants"))
|
||||||
|
"make-vm-closure"
|
||||||
|
(code :arity 5
|
||||||
|
:bytecode (1 0 0 16 3 1 1 0 16 1 1 2 0 16 2 1 3 0 16 0 1 4 0 16 4 65 5 0 50)
|
||||||
|
:constants (
|
||||||
|
"vm-globals"
|
||||||
|
"vm-upvalues"
|
||||||
|
"vm-name"
|
||||||
|
"vm-code"
|
||||||
|
"vm-closure-env"))
|
||||||
|
"make-vm-frame"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 1 1 0 1 2 0 16 0 1 3 0 16 1 1 4 0 65 0 0 65 4 0 50)
|
||||||
|
:constants (
|
||||||
|
"ip"
|
||||||
|
0
|
||||||
|
"closure"
|
||||||
|
"base"
|
||||||
|
"local-cells"))
|
||||||
|
"make-vm"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 1 1 0 1 2 0 52 3 0 0 1 4 0 1 6 0 52 5 0 1 1 7 0 16 0 65 4 0 50)
|
||||||
|
:constants (
|
||||||
|
"sp"
|
||||||
|
0
|
||||||
|
"frames"
|
||||||
|
"list"
|
||||||
|
"stack"
|
||||||
|
"make-vm-stack"
|
||||||
|
4096
|
||||||
|
"globals"))
|
||||||
|
"vm-push"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 2 16 0 1 2 0 52 0 0 2 17 3 16 2 16 3 52 4 0 1 52 3 0 2 33 45 0 16 2 1 7 0 52 6 0 2 52 5 0 1 17 4 16 3 16 4 16 2 52 8 0 3 5 16 0 1 2 0 16 4 52 9 0 3 5 16 4 17 3 32 1 0 2 5 16 3 16 2 16 1 52 10 0 3 5 16 0 1 1 0 16 2 1 12 0 52 11 0 2 52 9 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"sp"
|
||||||
|
"stack"
|
||||||
|
">="
|
||||||
|
"vm-stack-length"
|
||||||
|
"make-vm-stack"
|
||||||
|
"*"
|
||||||
|
2
|
||||||
|
"vm-stack-copy!"
|
||||||
|
"dict-set!"
|
||||||
|
"vm-stack-set!"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"vm-pop"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 1 3 0 52 0 0 2 17 1 16 0 1 2 0 16 1 52 4 0 3 5 16 0 1 6 0 52 1 0 2 16 1 52 5 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"-"
|
||||||
|
"get"
|
||||||
|
"sp"
|
||||||
|
1
|
||||||
|
"dict-set!"
|
||||||
|
"vm-stack-get"
|
||||||
|
"stack"))
|
||||||
|
"vm-peek"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 2 0 52 1 0 2 16 0 1 4 0 52 1 0 2 1 5 0 52 3 0 2 52 0 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"vm-stack-get"
|
||||||
|
"get"
|
||||||
|
"stack"
|
||||||
|
"-"
|
||||||
|
"sp"
|
||||||
|
1))
|
||||||
|
"frame-read-u8"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 1 1 0 52 0 0 2 17 1 16 0 1 2 0 52 0 0 2 1 3 0 52 0 0 2 1 4 0 52 0 0 2 17 2 16 2 16 1 52 5 0 2 17 3 16 0 1 1 0 16 1 1 8 0 52 7 0 2 52 6 0 3 5 16 3 50)
|
||||||
|
:constants (
|
||||||
|
"get"
|
||||||
|
"ip"
|
||||||
|
"closure"
|
||||||
|
"vm-code"
|
||||||
|
"vc-bytecode"
|
||||||
|
"nth"
|
||||||
|
"dict-set!"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"frame-read-u16"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 20 0 0 16 0 48 1 17 2 16 1 16 2 1 3 0 52 2 0 2 52 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"frame-read-u8"
|
||||||
|
"+"
|
||||||
|
"*"
|
||||||
|
256))
|
||||||
|
"frame-read-i16"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (20 0 0 16 0 48 1 17 1 16 1 1 2 0 52 1 0 2 33 12 0 16 1 1 4 0 52 3 0 2 32 2 0 16 1 50)
|
||||||
|
:constants (
|
||||||
|
"frame-read-u16"
|
||||||
|
">="
|
||||||
|
32768
|
||||||
|
"-"
|
||||||
|
65536))
|
||||||
|
"vm-push-frame"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 1 16 0 1 2 0 52 1 0 2 48 2 17 3 51 4 0 1 0 16 2 52 3 0 2 5 16 2 52 5 0 1 17 4 16 1 1 6 0 52 1 0 2 1 7 0 52 1 0 2 17 5 16 5 16 4 52 8 0 2 17 6 16 6 1 10 0 52 9 0 2 33 26 0 1 10 0 17 7 51 11 0 1 7 1 6 1 0 1 8 17 8 5 16 8 48 0 32 1 0 2 5 16 0 1 13 0 16 3 16 0 1 13 0 52 1 0 2 52 14 0 2 52 12 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"make-vm-frame"
|
||||||
|
"get"
|
||||||
|
"sp"
|
||||||
|
"for-each"
|
||||||
|
(code :arity 1 :upvalue-count 1
|
||||||
|
:bytecode (20 0 0 18 0 16 0 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"vm-push"))
|
||||||
|
"len"
|
||||||
|
"vm-code"
|
||||||
|
"vc-locals"
|
||||||
|
"-"
|
||||||
|
">"
|
||||||
|
0
|
||||||
|
(code :upvalue-count 4
|
||||||
|
:bytecode (18 0 18 1 52 0 0 2 33 28 0 20 1 0 18 2 2 48 2 5 18 0 1 3 0 52 2 0 2 19 0 5 18 3 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"vm-push"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"dict-set!"
|
||||||
|
"frames"
|
||||||
|
"cons"))
|
||||||
|
"code-from-value"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (1 0 0 5 16 0 52 2 0 1 52 1 0 1 33 22 0 20 3 0 1 4 0 1 5 0 52 6 0 0 52 6 0 0 49 4 32 112 0 16 0 1 8 0 52 7 0 2 17 1 16 1 52 9 0 1 33 7 0 52 6 0 0 32 2 0 16 1 17 2 16 0 1 10 0 52 7 0 2 17 3 16 3 52 9 0 1 33 7 0 52 6 0 0 32 2 0 16 3 17 4 16 0 1 11 0 52 7 0 2 17 5 16 5 52 9 0 1 33 6 0 1 4 0 32 2 0 16 5 17 6 20 3 0 16 6 16 6 1 5 0 52 12 0 2 16 2 16 4 49 4 50)
|
||||||
|
:constants (
|
||||||
|
"Convert a compiler output dict to a vm-code object."
|
||||||
|
"not"
|
||||||
|
"dict?"
|
||||||
|
"make-vm-code"
|
||||||
|
0
|
||||||
|
16
|
||||||
|
"list"
|
||||||
|
"get"
|
||||||
|
"bytecode"
|
||||||
|
"nil?"
|
||||||
|
"constants"
|
||||||
|
"arity"
|
||||||
|
"+"))
|
||||||
|
"vm-closure?"
|
||||||
|
(code :arity 1
|
||||||
|
:bytecode (16 0 52 0 0 1 6 33 10 0 5 16 0 1 2 0 52 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"dict?"
|
||||||
|
"has-key?"
|
||||||
|
"vm-code"))
|
||||||
|
"vm-call"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 1 48 1 33 14 0 20 1 0 16 0 16 1 16 2 49 3 32 116 0 20 2 0 16 1 48 1 33 18 0 20 3 0 16 0 16 1 16 2 52 4 0 2 49 2 32 88 0 16 1 52 6 0 1 1 7 0 52 5 0 2 6 34 32 0 5 16 1 52 6 0 1 1 8 0 52 5 0 2 6 34 14 0 5 16 1 52 6 0 1 1 9 0 52 5 0 2 33 19 0 20 3 0 16 0 20 10 0 16 1 16 2 48 2 49 2 32 17 0 1 13 0 16 1 52 6 0 1 52 12 0 2 52 11 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"vm-closure?"
|
||||||
|
"vm-push-frame"
|
||||||
|
"callable?"
|
||||||
|
"vm-push"
|
||||||
|
"apply"
|
||||||
|
"="
|
||||||
|
"type-of"
|
||||||
|
"lambda"
|
||||||
|
"component"
|
||||||
|
"island"
|
||||||
|
"cek-call"
|
||||||
|
"error"
|
||||||
|
"str"
|
||||||
|
"VM: not callable: "))
|
||||||
|
"frame-local-get"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 5 16 1 1 2 0 52 1 0 2 17 3 16 2 52 3 0 1 17 4 16 3 16 4 52 4 0 2 33 16 0 20 5 0 16 3 16 4 52 1 0 2 49 1 32 28 0 16 0 1 7 0 52 1 0 2 16 1 1 9 0 52 1 0 2 16 2 52 8 0 2 52 6 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"Read a local variable — check shared cells first, then stack."
|
||||||
|
"get"
|
||||||
|
"local-cells"
|
||||||
|
"str"
|
||||||
|
"has-key?"
|
||||||
|
"uv-get"
|
||||||
|
"vm-stack-get"
|
||||||
|
"stack"
|
||||||
|
"+"
|
||||||
|
"base"))
|
||||||
|
"frame-local-set"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (1 0 0 5 16 1 1 2 0 52 1 0 2 17 4 16 2 52 3 0 1 17 5 16 4 16 5 52 4 0 2 33 18 0 20 5 0 16 4 16 5 52 1 0 2 16 3 49 2 32 30 0 16 0 1 7 0 52 1 0 2 16 1 1 9 0 52 1 0 2 16 2 52 8 0 2 16 3 52 6 0 3 50)
|
||||||
|
:constants (
|
||||||
|
"Write a local variable — to shared cell if captured, else to stack."
|
||||||
|
"get"
|
||||||
|
"local-cells"
|
||||||
|
"str"
|
||||||
|
"has-key?"
|
||||||
|
"uv-set!"
|
||||||
|
"vm-stack-set!"
|
||||||
|
"stack"
|
||||||
|
"+"
|
||||||
|
"base"))
|
||||||
|
"frame-upvalue-get"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 1 3 0 52 2 0 2 1 4 0 52 2 0 2 16 1 52 1 0 2 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"uv-get"
|
||||||
|
"nth"
|
||||||
|
"get"
|
||||||
|
"closure"
|
||||||
|
"vm-upvalues"))
|
||||||
|
"frame-upvalue-set"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 0 1 3 0 52 2 0 2 1 4 0 52 2 0 2 16 1 52 1 0 2 16 2 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"uv-set!"
|
||||||
|
"nth"
|
||||||
|
"get"
|
||||||
|
"closure"
|
||||||
|
"vm-upvalues"))
|
||||||
|
"vm-global-get"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 5 16 0 1 2 0 52 1 0 2 17 3 16 3 16 2 52 3 0 2 33 11 0 16 3 16 2 52 1 0 2 32 67 0 16 1 1 4 0 52 1 0 2 1 5 0 52 1 0 2 17 4 16 4 52 6 0 1 33 9 0 16 2 52 7 0 1 32 31 0 20 8 0 16 4 16 2 48 2 17 5 16 5 52 6 0 1 33 9 0 16 2 52 7 0 1 32 2 0 16 5 50)
|
||||||
|
:constants (
|
||||||
|
"Look up a global: globals table → closure env chain → primitives."
|
||||||
|
"get"
|
||||||
|
"globals"
|
||||||
|
"has-key?"
|
||||||
|
"closure"
|
||||||
|
"vm-closure-env"
|
||||||
|
"nil?"
|
||||||
|
"get-primitive"
|
||||||
|
"env-walk"))
|
||||||
|
"vm-global-set"
|
||||||
|
(code :arity 4
|
||||||
|
:bytecode (1 0 0 5 16 1 1 2 0 52 1 0 2 1 3 0 52 1 0 2 17 4 4 17 5 16 4 52 5 0 1 52 4 0 1 33 16 0 20 6 0 16 4 16 2 16 3 48 3 17 5 32 1 0 2 5 16 5 52 4 0 1 33 20 0 16 0 1 8 0 52 1 0 2 16 2 16 3 52 7 0 3 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"Set a global: write to closure env if name exists there, else globals."
|
||||||
|
"get"
|
||||||
|
"closure"
|
||||||
|
"vm-closure-env"
|
||||||
|
"not"
|
||||||
|
"nil?"
|
||||||
|
"env-walk-set!"
|
||||||
|
"dict-set!"
|
||||||
|
"globals"))
|
||||||
|
"env-walk"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (16 0 52 0 0 1 33 4 0 2 32 55 0 20 1 0 16 0 16 1 48 2 33 12 0 20 2 0 16 0 16 1 49 2 32 31 0 20 3 0 16 0 48 1 17 2 16 2 52 0 0 1 33 4 0 2 32 9 0 20 4 0 16 2 16 1 49 2 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"env-has?"
|
||||||
|
"env-get"
|
||||||
|
"env-parent"
|
||||||
|
"env-walk"))
|
||||||
|
"env-walk-set!"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (16 0 52 0 0 1 33 4 0 4 32 61 0 20 1 0 16 0 16 1 48 2 33 16 0 20 2 0 16 0 16 1 16 2 48 3 5 3 32 33 0 20 3 0 16 0 48 1 17 3 16 3 52 0 0 1 33 4 0 4 32 11 0 20 4 0 16 3 16 1 16 2 49 3 50)
|
||||||
|
:constants (
|
||||||
|
"nil?"
|
||||||
|
"env-has?"
|
||||||
|
"env-set!"
|
||||||
|
"env-parent"
|
||||||
|
"env-walk-set!"))
|
||||||
|
"vm-create-closure"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (1 0 0 5 20 1 0 16 2 48 1 17 3 16 2 52 2 0 1 33 31 0 16 2 1 4 0 52 3 0 2 17 5 16 5 52 5 0 1 33 6 0 1 6 0 32 2 0 16 5 32 3 0 1 6 0 17 4 52 7 0 0 17 6 1 6 0 17 7 51 8 0 1 7 1 4 1 1 1 0 1 6 1 8 17 8 5 16 8 48 0 5 16 6 17 5 20 9 0 16 3 16 5 2 16 0 1 10 0 52 3 0 2 2 49 5 50)
|
||||||
|
:constants (
|
||||||
|
"Create a closure from a code constant. Reads upvalue descriptors
|
||||||
|
from the bytecode stream and captures values from the enclosing frame."
|
||||||
|
"code-from-value"
|
||||||
|
"dict?"
|
||||||
|
"get"
|
||||||
|
"upvalue-count"
|
||||||
|
"nil?"
|
||||||
|
0
|
||||||
|
"list"
|
||||||
|
(code :upvalue-count 6
|
||||||
|
:bytecode (18 0 18 1 52 0 0 2 33 175 0 20 1 0 18 2 48 1 17 0 20 1 0 18 2 48 1 17 1 16 0 1 3 0 52 2 0 2 33 92 0 18 2 1 5 0 52 4 0 2 17 3 16 1 52 6 0 1 17 4 16 3 16 4 52 7 0 2 33 11 0 16 3 16 4 52 4 0 2 32 48 0 20 8 0 18 3 1 10 0 52 4 0 2 18 2 1 12 0 52 4 0 2 16 1 52 11 0 2 52 9 0 2 48 1 17 5 16 3 16 4 16 5 52 13 0 3 5 16 5 32 22 0 18 2 1 15 0 52 4 0 2 1 16 0 52 4 0 2 16 1 52 14 0 2 17 2 20 17 0 18 4 16 2 48 2 5 18 0 1 3 0 52 11 0 2 19 0 5 18 5 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"frame-read-u8"
|
||||||
|
"="
|
||||||
|
1
|
||||||
|
"get"
|
||||||
|
"local-cells"
|
||||||
|
"str"
|
||||||
|
"has-key?"
|
||||||
|
"make-upvalue-cell"
|
||||||
|
"vm-stack-get"
|
||||||
|
"stack"
|
||||||
|
"+"
|
||||||
|
"base"
|
||||||
|
"dict-set!"
|
||||||
|
"nth"
|
||||||
|
"closure"
|
||||||
|
"vm-upvalues"
|
||||||
|
"append!"))
|
||||||
|
"make-vm-closure"
|
||||||
|
"globals"))
|
||||||
|
"vm-run"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (1 0 0 5 51 1 0 1 0 1 1 17 1 5 16 1 49 0 50)
|
||||||
|
:constants (
|
||||||
|
"Execute bytecode until all frames are exhausted.
|
||||||
|
VmClosure calls push new frames; the loop picks them up.
|
||||||
|
OP_TAIL_CALL + VmClosure = true TCO: drop frame, push new, loop."
|
||||||
|
(code :upvalue-count 2
|
||||||
|
:bytecode (18 0 1 3 0 52 2 0 2 52 1 0 1 52 0 0 1 33 141 0 18 0 1 3 0 52 2 0 2 52 4 0 1 17 0 18 0 1 3 0 52 2 0 2 52 5 0 1 17 1 16 0 1 6 0 52 2 0 2 1 7 0 52 2 0 2 1 8 0 52 2 0 2 17 2 16 0 1 6 0 52 2 0 2 1 7 0 52 2 0 2 1 9 0 52 2 0 2 17 3 16 0 1 11 0 52 2 0 2 16 2 52 12 0 1 52 10 0 2 33 16 0 18 0 1 3 0 52 14 0 0 52 13 0 3 32 20 0 20 15 0 18 0 16 0 16 1 16 2 16 3 48 5 5 18 1 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"not"
|
||||||
|
"empty?"
|
||||||
|
"get"
|
||||||
|
"frames"
|
||||||
|
"first"
|
||||||
|
"rest"
|
||||||
|
"closure"
|
||||||
|
"vm-code"
|
||||||
|
"vc-bytecode"
|
||||||
|
"vc-constants"
|
||||||
|
">="
|
||||||
|
"ip"
|
||||||
|
"len"
|
||||||
|
"dict-set!"
|
||||||
|
"list"
|
||||||
|
"vm-step"))))
|
||||||
|
"vm-step"
|
||||||
|
(code :arity 5
|
||||||
|
:bytecode (20 0 0 16 1 48 1 17 5 16 5 1 2 0 52 1 0 2 33 27 0 20 3 0 16 1 48 1 17 6 20 4 0 16 0 16 4 16 6 52 5 0 2 49 2 32 109 7 16 5 1 6 0 52 1 0 2 33 11 0 20 4 0 16 0 2 49 2 32 86 7 16 5 1 7 0 52 1 0 2 33 11 0 20 4 0 16 0 3 49 2 32 63 7 16 5 1 8 0 52 1 0 2 33 11 0 20 4 0 16 0 4 49 2 32 40 7 16 5 1 9 0 52 1 0 2 33 10 0 20 10 0 16 0 49 1 32 18 7 16 5 1 11 0 52 1 0 2 33 17 0 20 4 0 16 0 20 12 0 16 0 48 1 49 2 32 245 6 16 5 1 13 0 52 1 0 2 33 30 0 20 0 0 16 1 48 1 17 6 20 4 0 16 0 20 14 0 16 0 16 1 16 6 48 3 49 2 32 203 6 16 5 1 15 0 52 1 0 2 33 30 0 20 0 0 16 1 48 1 17 6 20 16 0 16 0 16 1 16 6 20 12 0 16 0 48 1 49 4 32 161 6 16 5 1 17 0 52 1 0 2 33 28 0 20 0 0 16 1 48 1 17 6 20 4 0 16 0 20 18 0 16 1 16 6 48 2 49 2 32 121 6 16 5 1 19 0 52 1 0 2 33 28 0 20 0 0 16 1 48 1 17 6 20 20 0 16 1 16 6 20 12 0 16 0 48 1 49 3 32 81 6 16 5 1 21 0 52 1 0 2 33 40 0 20 3 0 16 1 48 1 17 6 16 4 16 6 52 5 0 2 17 7 20 4 0 16 0 20 22 0 16 0 16 1 16 7 48 3 49 2 32 29 6 16 5 1 23 0 52 1 0 2 33 40 0 20 3 0 16 1 48 1 17 6 16 4 16 6 52 5 0 2 17 7 20 24 0 16 0 16 1 16 7 20 12 0 16 0 48 1 49 4 32 233 5 16 5 1 25 0 52 1 0 2 33 36 0 20 26 0 16 1 48 1 17 6 16 1 1 28 0 16 1 1 28 0 52 30 0 2 16 6 52 29 0 2 52 27 0 3 32 185 5 16 5 1 31 0 52 1 0 2 33 58 0 20 26 0 16 1 48 1 17 6 20 10 0 16 0 48 1 17 7 16 7 52 32 0 1 33 27 0 16 1 1 28 0 16 1 1 28 0 52 30 0 2 16 6 52 29 0 2 52 27 0 3 32 1 0 2 32 115 5 16 5 1 33 0 52 1 0 2 33 54 0 20 26 0 16 1 48 1 17 6 20 10 0 16 0 48 1 17 7 16 7 33 27 0 16 1 1 28 0 16 1 1 28 0 52 30 0 2 16 6 52 29 0 2 52 27 0 3 32 1 0 2 32 49 5 16 5 1 34 0 52 1 0 2 33 64 0 20 0 0 16 1 48 1 17 6 52 35 0 0 17 7 1 36 0 17 8 51 37 0 1 8 1 6 1 7 1 0 1 9 17 9 5 16 9 48 0 5 20 10 0 16 0 48 1 17 10 20 38 0 16 0 16 10 16 7 49 3 32 229 4 16 5 1 39 0 52 1 0 2 33 95 0 20 0 0 16 1 48 1 17 6 52 35 0 0 17 7 1 36 0 17 8 51 37 0 1 8 1 6 1 7 1 0 1 9 17 9 5 16 9 48 0 5 20 10 0 16 0 48 1 17 10 16 0 1 40 0 16 2 52 27 0 3 5 16 0 1 41 0 16 1 1 42 0 52 30 0 2 52 27 0 3 5 20 38 0 16 0 16 10 16 7 49 3 32 122 4 16 5 1 43 0 52 1 0 2 33 52 0 20 10 0 16 0 48 1 17 6 16 0 1 40 0 16 2 52 27 0 3 5 16 0 1 41 0 16 1 1 42 0 52 30 0 2 52 27 0 3 5 20 4 0 16 0 16 6 49 2 32 58 4 16 5 1 44 0 52 1 0 2 33 44 0 20 3 0 16 1 48 1 17 6 16 4 16 6 52 5 0 2 17 7 20 45 0 16 0 16 1 16 7 48 3 17 8 20 4 0 16 0 16 8 49 2 32 2 4 16 5 1 46 0 52 1 0 2 33 78 0 20 3 0 16 1 48 1 17 6 20 0 0 16 1 48 1 17 7 16 4 16 6 52 5 0 2 17 8 52 35 0 0 17 9 1 36 0 17 10 51 37 0 1 10 1 7 1 9 1 0 1 11 17 11 5 16 11 48 0 5 20 4 0 16 0 16 8 16 9 52 47 0 2 49 2 32 168 3 16 5 1 48 0 52 1 0 2 33 53 0 20 3 0 16 1 48 1 17 6 52 35 0 0 17 7 1 36 0 17 8 51 37 0 1 8 1 6 1 7 1 0 1 9 17 9 5 16 9 48 0 5 20 4 0 16 0 16 7 49 2 32 103 3 16 5 1 49 0 52 1 0 2 33 52 0 20 3 0 16 1 48 1 17 6 65 0 0 17 7 1 36 0 17 8 51 50 0 1 8 1 6 1 0 1 7 1 9 17 9 5 16 9 48 0 5 20 4 0 16 0 16 7 49 2 32 39 3 16 5 1 51 0 52 1 0 2 33 60 0 20 0 0 16 1 48 1 17 6 52 35 0 0 17 7 1 36 0 17 8 51 37 0 1 8 1 6 1 7 1 0 1 9 17 9 5 16 9 48 0 5 20 4 0 16 0 20 53 0 16 7 52 52 0 2 49 2 32 223 2 16 5 1 54 0 52 1 0 2 33 44 0 20 3 0 16 1 48 1 17 6 16 4 16 6 52 5 0 2 17 7 16 0 1 55 0 52 30 0 2 16 7 20 12 0 16 0 48 1 52 27 0 3 32 167 2 16 5 1 56 0 52 1 0 2 33 36 0 20 10 0 16 0 48 1 17 6 20 10 0 16 0 48 1 17 7 20 4 0 16 0 16 7 16 6 52 29 0 2 49 2 32 119 2 16 5 1 57 0 52 1 0 2 33 36 0 20 10 0 16 0 48 1 17 6 20 10 0 16 0 48 1 17 7 20 4 0 16 0 16 7 16 6 52 58 0 2 49 2 32 71 2 16 5 1 59 0 52 1 0 2 33 36 0 20 10 0 16 0 48 1 17 6 20 10 0 16 0 48 1 17 7 20 4 0 16 0 16 7 16 6 52 60 0 2 49 2 32 23 2 16 5 1 61 0 52 1 0 2 33 36 0 20 10 0 16 0 48 1 17 6 20 10 0 16 0 48 1 17 7 20 4 0 16 0 16 7 16 6 52 62 0 2 49 2 32 231 1 16 5 1 63 0 52 1 0 2 33 36 0 20 10 0 16 0 48 1 17 6 20 10 0 16 0 48 1 17 7 20 4 0 16 0 16 7 16 6 52 1 0 2 49 2 32 183 1 16 5 1 64 0 52 1 0 2 33 36 0 20 10 0 16 0 48 1 17 6 20 10 0 16 0 48 1 17 7 20 4 0 16 0 16 7 16 6 52 65 0 2 49 2 32 135 1 16 5 1 66 0 52 1 0 2 33 36 0 20 10 0 16 0 48 1 17 6 20 10 0 16 0 48 1 17 7 20 4 0 16 0 16 7 16 6 52 67 0 2 49 2 32 87 1 16 5 1 68 0 52 1 0 2 33 21 0 20 4 0 16 0 20 10 0 16 0 48 1 52 32 0 1 49 2 32 54 1 16 5 1 69 0 52 1 0 2 33 21 0 20 4 0 16 0 20 10 0 16 0 48 1 52 70 0 1 49 2 32 21 1 16 5 1 71 0 52 1 0 2 33 21 0 20 4 0 16 0 20 10 0 16 0 48 1 52 72 0 1 49 2 32 244 0 16 5 1 73 0 52 1 0 2 33 21 0 20 4 0 16 0 20 10 0 16 0 48 1 52 74 0 1 49 2 32 211 0 16 5 1 75 0 52 1 0 2 33 36 0 20 10 0 16 0 48 1 17 6 20 10 0 16 0 48 1 17 7 20 4 0 16 0 16 7 16 6 52 5 0 2 49 2 32 163 0 16 5 1 76 0 52 1 0 2 33 36 0 20 10 0 16 0 48 1 17 6 20 10 0 16 0 48 1 17 7 20 4 0 16 0 16 7 16 6 52 77 0 2 49 2 32 115 0 16 5 1 78 0 52 1 0 2 33 24 0 20 4 0 16 0 1 36 0 20 10 0 16 0 48 1 52 58 0 2 49 2 32 79 0 16 5 1 79 0 52 1 0 2 33 21 0 20 4 0 16 0 20 10 0 16 0 48 1 52 80 0 1 49 2 32 46 0 16 5 1 81 0 52 1 0 2 33 21 0 20 4 0 16 0 20 10 0 16 0 48 1 52 82 0 1 49 2 32 13 0 1 84 0 16 5 52 53 0 2 52 83 0 1 50)
|
||||||
|
:constants (
|
||||||
|
"frame-read-u8"
|
||||||
|
"="
|
||||||
|
1
|
||||||
|
"frame-read-u16"
|
||||||
|
"vm-push"
|
||||||
|
"nth"
|
||||||
|
2
|
||||||
|
3
|
||||||
|
4
|
||||||
|
5
|
||||||
|
"vm-pop"
|
||||||
|
6
|
||||||
|
"vm-peek"
|
||||||
|
16
|
||||||
|
"frame-local-get"
|
||||||
|
17
|
||||||
|
"frame-local-set"
|
||||||
|
18
|
||||||
|
"frame-upvalue-get"
|
||||||
|
19
|
||||||
|
"frame-upvalue-set"
|
||||||
|
20
|
||||||
|
"vm-global-get"
|
||||||
|
21
|
||||||
|
"vm-global-set"
|
||||||
|
32
|
||||||
|
"frame-read-i16"
|
||||||
|
"dict-set!"
|
||||||
|
"ip"
|
||||||
|
"+"
|
||||||
|
"get"
|
||||||
|
33
|
||||||
|
"not"
|
||||||
|
34
|
||||||
|
48
|
||||||
|
"list"
|
||||||
|
0
|
||||||
|
(code :upvalue-count 5
|
||||||
|
:bytecode (18 0 18 1 52 0 0 2 33 35 0 20 2 0 18 3 48 1 18 2 52 1 0 2 19 2 5 18 0 1 4 0 52 3 0 2 19 0 5 18 4 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"cons"
|
||||||
|
"vm-pop"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"vm-call"
|
||||||
|
49
|
||||||
|
"frames"
|
||||||
|
"sp"
|
||||||
|
"base"
|
||||||
|
50
|
||||||
|
51
|
||||||
|
"vm-create-closure"
|
||||||
|
52
|
||||||
|
"call-primitive"
|
||||||
|
64
|
||||||
|
65
|
||||||
|
(code :upvalue-count 5
|
||||||
|
:bytecode (18 0 18 1 52 0 0 2 33 48 0 20 1 0 18 2 48 1 17 0 20 1 0 18 2 48 1 17 1 18 3 16 1 16 0 52 2 0 3 5 18 0 1 4 0 52 3 0 2 19 0 5 18 4 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"vm-pop"
|
||||||
|
"dict-set!"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
144
|
||||||
|
"apply"
|
||||||
|
"str"
|
||||||
|
128
|
||||||
|
"globals"
|
||||||
|
160
|
||||||
|
161
|
||||||
|
"-"
|
||||||
|
162
|
||||||
|
"*"
|
||||||
|
163
|
||||||
|
"/"
|
||||||
|
164
|
||||||
|
165
|
||||||
|
"<"
|
||||||
|
166
|
||||||
|
">"
|
||||||
|
167
|
||||||
|
168
|
||||||
|
"len"
|
||||||
|
169
|
||||||
|
"first"
|
||||||
|
170
|
||||||
|
"rest"
|
||||||
|
171
|
||||||
|
172
|
||||||
|
"cons"
|
||||||
|
173
|
||||||
|
174
|
||||||
|
"inc"
|
||||||
|
175
|
||||||
|
"dec"
|
||||||
|
"error"
|
||||||
|
"VM: unknown opcode "))
|
||||||
|
"vm-call-closure"
|
||||||
|
(code :arity 3
|
||||||
|
:bytecode (20 0 0 16 2 48 1 17 3 20 1 0 16 3 16 0 16 1 48 3 5 20 2 0 16 3 48 1 5 20 3 0 16 3 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"make-vm"
|
||||||
|
"vm-push-frame"
|
||||||
|
"vm-run"
|
||||||
|
"vm-pop"))
|
||||||
|
"vm-execute-module"
|
||||||
|
(code :arity 2
|
||||||
|
:bytecode (20 0 0 16 0 52 1 0 0 1 2 0 16 1 2 48 5 17 2 20 3 0 16 1 48 1 17 3 20 4 0 16 2 1 5 0 48 2 17 4 1 5 0 17 5 16 0 1 7 0 52 6 0 2 17 6 51 8 0 1 5 1 6 1 3 1 7 17 7 5 16 7 48 0 5 16 3 1 10 0 16 4 52 1 0 1 52 9 0 3 5 20 11 0 16 3 48 1 5 20 12 0 16 3 49 1 50)
|
||||||
|
:constants (
|
||||||
|
"make-vm-closure"
|
||||||
|
"list"
|
||||||
|
"module"
|
||||||
|
"make-vm"
|
||||||
|
"make-vm-frame"
|
||||||
|
0
|
||||||
|
"get"
|
||||||
|
"vc-locals"
|
||||||
|
(code :upvalue-count 4
|
||||||
|
:bytecode (18 0 18 1 52 0 0 2 33 28 0 20 1 0 18 2 2 48 2 5 18 0 1 3 0 52 2 0 2 19 0 5 18 3 49 0 32 1 0 2 50)
|
||||||
|
:constants (
|
||||||
|
"<"
|
||||||
|
"vm-push"
|
||||||
|
"+"
|
||||||
|
1))
|
||||||
|
"dict-set!"
|
||||||
|
"frames"
|
||||||
|
"vm-run"
|
||||||
|
"vm-pop")))))
|
||||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user