toilscript 0.1.20 → 0.1.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "imports": {
3
- "toilscript": "https://cdn.jsdelivr.net/npm/toilscript@0.1.20/dist/toilscript.js",
4
- "toilscript/cli": "https://cdn.jsdelivr.net/npm/toilscript@0.1.20/dist/cli.js",
3
+ "toilscript": "https://cdn.jsdelivr.net/npm/toilscript@0.1.21/dist/toilscript.js",
4
+ "toilscript/cli": "https://cdn.jsdelivr.net/npm/toilscript@0.1.21/dist/cli.js",
5
5
  "binaryen": "https://cdn.jsdelivr.net/npm/binaryen@129.0.0-nightly.20260428/index.js",
6
6
  "long": "https://cdn.jsdelivr.net/npm/long@5.3.2/index.js"
7
7
  }
@@ -305,7 +305,7 @@ declare interface __Record`),n.push(e.id.toString()),n.push(`<TOmittable> {
305
305
  `),r.push("declare class __Internref"),r.push(e.id.toString()),r.push(` extends Number {
306
306
  `);let n=e;do r.push(" private __nominal"),r.push(n.id.toString()),r.push(`: symbol;
307
307
  `),n=n.base;while(n);return r.push(`}
308
- `),r.join("")}};function OS(){return new ks}function qS(t,i){t.target=i}function WS(t,i){t.runtime=i}function KS(t,i){t.noAssert=i}function HS(t,i){t.exportMemory=i}function QS(t,i){t.importMemory=i}function jS(t,i){t.initialMemory=i}function XS(t,i){t.maximumMemory=i}function JS(t,i){t.sharedMemory=i}function ZS(t,i){t.importTable=i}function YS(t,i){t.exportTable=i}function $S(t,i){t.sourceMap=i}function eI(t,i){t.uncheckedBehavior=i}function tI(t,i){t.memoryBase=i}function rI(t,i){t.tableBase=i}function iI(t,i,e){let r=t.globalAliases;r||(t.globalAliases=r=new Map),r.set(i,e)}function nI(t,i){let e=t.globalAliases;e&&e.delete(i)}function sI(t,i){t.exportStart=i}function aI(t,i){t.noUnsafe=i}function lI(t,i){t.lowMemoryLimit=i}function oI(t,i){t.exportRuntime=i}var uI=32768;function pI(t,i){t.stackSize=i}function cI(t,i,e,r){t.bundleMajorVersion=i,t.bundleMinorVersion=e,t.bundlePatchVersion=r}var _I=1,fI=2,hI=4,dI=8,mI=16,yI=32,gI=64,bI=128,xI=256,TI=512,AI=1024,EI=2048,vI=4096,SI=8192,II=16384,RI=32768,FI=65536,kI=131071,wI=eo;function CI(t,i,e){t.setFeature(i,e)}function PI(t,i,e){t.optimizeLevelHint=i,t.shrinkLevelHint=e}function BI(t,i){t.basenameHint=i}function LI(t,i){t.bindingsHint=i}function NI(t,i){t.pedantic=i}function MI(t,i){t.debugInfo=i}function GI(t){return new ts(t)}function zI(t){return t.diagnosticsOffset<t.diagnostics.length?t.diagnostics[t.diagnosticsOffset++]:null}function DI(t,i){return t.getSource(i)}function UI(t){return t.code}function VI(t){return t.category}function OI(t){return t.message}function qI(t){return t.range}function WI(t){return t.relatedRange}function KI(t){return t.start}function HI(t){return t.end}function QI(t){return t.source}function jI(t){return t.normalizedPath}function XI(t){return t.category==1}function JI(t){return t.category==2}function ZI(t){return t.category==3}function YI(t,i,e,r=!1){t.parser.parseFile(i,e,r)}function $I(t){return t.parser.nextFile()}function e0(t,i){return t.parser.getDependee(i)}function t0(t){t.initialize()}function r0(t){return t.parser.finish(),new ws(t).compile()}function i0(t,i){return qi.build(t,i)}function n0(t,i){return Gi.build(t,i)}function s0(t){return t.ref}function a0(t){return t.validate()}function l0(t,i,e,r=!1,n=!1){t.optimize(i,e,r,n)}function o0(t){let i=2166136261;for(let e=0,r=t.length;e<r;++e)i=Math.imul(i^t.charCodeAt(e),16777619)>>>0;return i>>>0}function to(t,i){if(t==null)return!1;for(let e=0,r=t.length;e<r;++e)if(t[e].decoratorKind==i)return!0;return!1}function u0(t,i){if(t==null)return null;for(let e=0,r=t.length;e<r;++e)if(t[e].decoratorKind==i)return t[e];return null}function Uc(t){return t!=null&&t instanceof Jt?t.property.text:null}function ro(t,i){let e=t.names;for(let r=0,n=e.length;r<n;++r)if(e[r].text==i)return t.values[r];return null}function p0(t){let i=t.args;if(i!=null&&i.length>0&&i[0]instanceof Ze){let e=i[0].value.trim();return e.length==0||e=="/"?"":(e.charAt(0)!="/"&&(e="/"+e),e.replace(/\/+$/,""))}return""}function c0(t){let i=t.args;if(i!=null&&i.length>0&&i[0]instanceof _t){let e=Uc(ro(i[0],"stream"));if(e!=null)return e}return"JSON"}function _0(t){let i=t.decorators;if(i==null)return null;for(let e=0,r=i.length;e<r;++e)switch(i[e].decoratorKind){case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:return i[e]}return null}function f0(t){switch(t){case 21:return"POST";case 22:return"PUT";case 23:return"DELETE";case 24:return"PATCH";case 25:return"HEAD";case 26:return"OPTIONS";default:return"GET"}}function h0(t,i){let e=i.trim();if(e.length==0&&(e="/"),e.charAt(0)!="/"&&(e="/"+e),e=="/")return t.length>0?t:"/";e=e.replace(/\/+$/,"");let r=t+e;return r.length==0?"/":r}function d0(t){let i=new Array,e=t.split("/");for(let r=0,n=e.length;r<n;++r){let s=e[r];s.length>1&&s.charAt(0)==":"&&i.push(s.substring(1))}return i}function m0(t,i,e,r){let n,s,a=i;if(r.decoratorKind==19){let f=r.args;if(f==null||f.length==0||!(f[0]instanceof _t))return null;let h=f[0],y=Uc(ro(h,"method")),x=ro(h,"path");if(y==null||x==null||!(x instanceof Ze))return null;n=y,s=x.value;let b=Uc(ro(h,"stream"));b!=null&&(a=b)}else{n=f0(r.decoratorKind);let f=r.args;if(f==null||f.length==0||!(f[0]instanceof Ze))return null;s=f[0].value}let l=h0(t,s),o=null,u=e.signature.parameters;for(let f=0,h=u.length;f<h;++f){let y=Cs(u[f].type);y.type!="RouteContext"&&(o=y.type)}let c=Cs(e.signature.returnType),_=c.type=="Response";return{name:e.name.text,http:n,pattern:l,params:d0(l),stream:a,bodyType:o,returns:c,returnsResponse:_}}function Cs(t){if(t==null||!(t instanceof Be))return{type:"void",array:!1};let i=t,e=i.name.identifier.text,r=i.typeArguments;return e=="Array"&&r!=null&&r.length==1&&r[0]instanceof Be?{type:r[0].name.identifier.text,array:!0}:{type:e,array:!1}}function Ig(t){let i=new Array,e=t.signature.parameters;for(let r=0,n=e.length;r<n;++r){let s=e[r];i.push({name:s.name.text,ref:Cs(s.type),vis:"",ro:!1})}return{name:t.name.text,params:i,returns:Cs(t.signature.returnType)}}function y0(t,i){let e=t.decorators,r=t.members;if(to(e,15)){let s=new Array;for(let a=0,l=r.length;a<l;++a){let o=r[a];if(o.kind!=55)continue;let u=o;u.is(32)||s.push({name:u.name.text,ref:Cs(u.type),vis:b0(u),ro:u.is(64)})}i.data.push({name:t.name.text,typeId:o0(t.name.text),fields:s})}if(to(e,17)){let s=new Array;for(let a=0,l=r.length;a<l;++a){let o=r[a];if(o.kind!=59)continue;let u=o;to(u.decorators,16)&&s.push(Ig(u))}i.services.push({name:t.name.text,methods:s})}let n=u0(e,18);if(n!=null){let s=p0(n),a=c0(n),l=new Array;for(let o=0,u=r.length;o<u;++o){let c=r[o];if(c.kind!=59)continue;let _=c,f=_0(_);if(f==null)continue;let h=m0(s,a,_,f);h!=null&&l.push(h)}l.length&&i.rest.push({name:t.name.text,key:Rg(t.name.text),routes:l})}}function g0(t){let i={data:[],services:[],remotes:[],rest:[]},e=t.sources;for(let r=0,n=e.length;r<n;++r){let s=e[r];if(s.isLibrary)continue;let a=s.statements;for(let l=0,o=a.length;l<o;++l){let u=a[l];if(u.kind==52)y0(u,i);else if(u.kind==56){let c=u;to(c.decorators,16)&&i.remotes.push(Ig(c))}}}return i}function b0(t){return t.is(512)?"private":t.is(1024)?"protected":"public"}function x0(t){let i=t.vis+" ";return t.ro&&(i+="readonly "),i}function Rg(t){return t.length?t.charAt(0).toLowerCase()+t.substring(1):t}function io(t,i){switch(t){case"u8":case"u16":case"u32":case"i8":case"i16":case"i32":case"f32":case"f64":return"number";case"u64":case"i64":case"u128":case"i128":case"u256":case"i256":return"bigint";case"bool":case"boolean":return"boolean";case"string":return"string";case"void":return"void";default:if(i.has(t))return t;throw new Error("@data: unsupported type '"+t+"' (use a scalar, string, bool, native bignum, a nested @data class, or T[])")}}function Wi(t,i){let e=io(t.type,i);return t.array?e+"[]":e}function Tg(t,i){let e=new Array;for(let r=0,n=t.length;r<n;++r)e.push(t[r].name+": "+Wi(t[r].ref,i));return e.join(", ")}function Fg(t){switch(t){case"u8":return"U8";case"u16":return"U16";case"u32":return"U32";case"u64":return"U64";case"i8":return"I8";case"i16":return"I16";case"i32":return"I32";case"i64":return"I64";case"f32":return"F32";case"f64":return"F64";case"bool":case"boolean":return"Bool";case"string":return"String";case"u128":return"U128";case"i128":return"I128";case"u256":return"U256";case"i256":return"I256";default:return""}}function Ag(t,i){let e=Fg(t);return e.length?"w.write"+e+"("+i+");":i+".encodeInto(w);"}function Eg(t){let i=Fg(t);return i.length?"r.read"+i+"()":t+".decodeFrom(r)"}function vg(t,i,e){switch(t){case"u8":case"u16":case"u32":case"i8":case"i16":case"i32":case"f32":case"f64":return"Number("+i+" ?? 0)";case"u64":case"i64":return"BigInt("+i+" ?? 0)";case"u128":return"__toilUnlimb("+i+", 2, false)";case"i128":return"__toilUnlimb("+i+", 2, true)";case"u256":return"__toilUnlimb("+i+", 4, false)";case"i256":return"__toilUnlimb("+i+", 4, true)";case"bool":case"boolean":return"Boolean("+i+")";case"string":return"String("+i+' ?? "")';default:if(e.has(t))return t+".fromJSONValue("+i+")";throw new Error("@data: unsupported type '"+t+"'")}}function Sg(t,i,e){switch(t){case"u128":case"i128":case"u256":case"i256":return i+".toString()";default:return e.has(t)?i+".toJSONValue()":i}}function T0(t,i){switch(t){case"u128":case"i128":case"u256":case"i256":return!0;default:return i.has(t)}}function A0(){let t=`// 64-bit-and-up integers cross the JSON wire as decimal strings (exact through
308
+ `),r.join("")}};function OS(){return new ks}function qS(t,i){t.target=i}function WS(t,i){t.runtime=i}function KS(t,i){t.noAssert=i}function HS(t,i){t.exportMemory=i}function QS(t,i){t.importMemory=i}function jS(t,i){t.initialMemory=i}function XS(t,i){t.maximumMemory=i}function JS(t,i){t.sharedMemory=i}function ZS(t,i){t.importTable=i}function YS(t,i){t.exportTable=i}function $S(t,i){t.sourceMap=i}function eI(t,i){t.uncheckedBehavior=i}function tI(t,i){t.memoryBase=i}function rI(t,i){t.tableBase=i}function iI(t,i,e){let r=t.globalAliases;r||(t.globalAliases=r=new Map),r.set(i,e)}function nI(t,i){let e=t.globalAliases;e&&e.delete(i)}function sI(t,i){t.exportStart=i}function aI(t,i){t.noUnsafe=i}function lI(t,i){t.lowMemoryLimit=i}function oI(t,i){t.exportRuntime=i}var uI=32768;function pI(t,i){t.stackSize=i}function cI(t,i,e,r){t.bundleMajorVersion=i,t.bundleMinorVersion=e,t.bundlePatchVersion=r}var _I=1,fI=2,hI=4,dI=8,mI=16,yI=32,gI=64,bI=128,xI=256,TI=512,AI=1024,EI=2048,vI=4096,SI=8192,II=16384,RI=32768,FI=65536,kI=131071,wI=eo;function CI(t,i,e){t.setFeature(i,e)}function PI(t,i,e){t.optimizeLevelHint=i,t.shrinkLevelHint=e}function BI(t,i){t.basenameHint=i}function LI(t,i){t.bindingsHint=i}function NI(t,i){t.pedantic=i}function MI(t,i){t.debugInfo=i}function GI(t){return new ts(t)}function zI(t){return t.diagnosticsOffset<t.diagnostics.length?t.diagnostics[t.diagnosticsOffset++]:null}function DI(t,i){return t.getSource(i)}function UI(t){return t.code}function VI(t){return t.category}function OI(t){return t.message}function qI(t){return t.range}function WI(t){return t.relatedRange}function KI(t){return t.start}function HI(t){return t.end}function QI(t){return t.source}function jI(t){return t.normalizedPath}function XI(t){return t.category==1}function JI(t){return t.category==2}function ZI(t){return t.category==3}function YI(t,i,e,r=!1){t.parser.parseFile(i,e,r)}function $I(t){return t.parser.nextFile()}function e0(t,i){return t.parser.getDependee(i)}function t0(t){t.initialize()}function r0(t){return t.parser.finish(),new ws(t).compile()}function i0(t,i){return qi.build(t,i)}function n0(t,i){return Gi.build(t,i)}function s0(t){return t.ref}function a0(t){return t.validate()}function l0(t,i,e,r=!1,n=!1){t.optimize(i,e,r,n)}function o0(t){let i=2166136261;for(let e=0,r=t.length;e<r;++e)i=Math.imul(i^t.charCodeAt(e),16777619)>>>0;return i>>>0}function to(t,i){if(t==null)return!1;for(let e=0,r=t.length;e<r;++e)if(t[e].decoratorKind==i)return!0;return!1}function u0(t,i){if(t==null)return null;for(let e=0,r=t.length;e<r;++e)if(t[e].decoratorKind==i)return t[e];return null}function Uc(t){return t!=null&&t instanceof Jt?t.property.text:null}function ro(t,i){let e=t.names;for(let r=0,n=e.length;r<n;++r)if(e[r].text==i)return t.values[r];return null}function p0(t){let i=t.args;if(i!=null&&i.length>0&&i[0]instanceof Ze){let e=i[0].value.trim();return e.length==0||e=="/"?"":(e.charAt(0)!="/"&&(e="/"+e),e.replace(/\/+$/,""))}return""}function c0(t){let i=t.args;if(i!=null&&i.length>0&&i[0]instanceof _t){let e=Uc(ro(i[0],"stream"));if(e!=null)return e}return"JSON"}function _0(t){let i=t.decorators;if(i==null)return null;for(let e=0,r=i.length;e<r;++e)switch(i[e].decoratorKind){case 19:case 20:case 21:case 22:case 23:case 24:case 25:case 26:return i[e]}return null}function f0(t){switch(t){case 21:return"POST";case 22:return"PUT";case 23:return"DELETE";case 24:return"PATCH";case 25:return"HEAD";case 26:return"OPTIONS";default:return"GET"}}function h0(t,i){let e=i.trim();if(e.length==0&&(e="/"),e.charAt(0)!="/"&&(e="/"+e),e=="/")return t.length>0?t:"/";e=e.replace(/\/+$/,"");let r=t+e;return r.length==0?"/":r}function d0(t){let i=new Array,e=t.split("/");for(let r=0,n=e.length;r<n;++r){let s=e[r];s.length>1&&s.charAt(0)==":"&&i.push(s.substring(1))}return i}function m0(t,i,e,r){let n,s,a=i;if(r.decoratorKind==19){let f=r.args;if(f==null||f.length==0||!(f[0]instanceof _t))return null;let h=f[0],y=Uc(ro(h,"method")),x=ro(h,"path");if(y==null||x==null||!(x instanceof Ze))return null;n=y,s=x.value;let b=Uc(ro(h,"stream"));b!=null&&(a=b)}else{n=f0(r.decoratorKind);let f=r.args;if(f==null||f.length==0||!(f[0]instanceof Ze))return null;s=f[0].value}let l=h0(t,s),o=null,u=e.signature.parameters;for(let f=0,h=u.length;f<h;++f){let y=Cs(u[f].type);y.type!="RouteContext"&&(o=y.type)}let c=Cs(e.signature.returnType),_=c.type=="Response";return{name:e.name.text,http:n,pattern:l,params:d0(l),stream:a,bodyType:o,returns:c,returnsResponse:_}}function Cs(t){if(t==null||!(t instanceof Be))return{type:"void",array:!1};let i=t,e=i.name.identifier.text,r=i.typeArguments;return e=="Array"&&r!=null&&r.length==1&&r[0]instanceof Be?{type:r[0].name.identifier.text,array:!0}:{type:e,array:!1}}function Ig(t){let i=new Array,e=t.signature.parameters;for(let r=0,n=e.length;r<n;++r){let s=e[r];i.push({name:s.name.text,ref:Cs(s.type),vis:"",ro:!1})}return{name:t.name.text,params:i,returns:Cs(t.signature.returnType)}}function y0(t,i){let e=t.decorators,r=t.members;if(to(e,15)){let s=new Array;for(let a=0,l=r.length;a<l;++a){let o=r[a];if(o.kind!=55)continue;let u=o;u.is(32)||s.push({name:u.name.text,ref:Cs(u.type),vis:b0(u),ro:u.is(64)})}i.data.push({name:t.name.text,typeId:o0(t.name.text),fields:s})}if(to(e,17)){let s=new Array;for(let a=0,l=r.length;a<l;++a){let o=r[a];if(o.kind!=59)continue;let u=o;to(u.decorators,16)&&s.push(Ig(u))}i.services.push({name:t.name.text,methods:s})}let n=u0(e,18);if(n!=null){let s=p0(n),a=c0(n),l=new Array;for(let o=0,u=r.length;o<u;++o){let c=r[o];if(c.kind!=59)continue;let _=c,f=_0(_);if(f==null)continue;let h=m0(s,a,_,f);h!=null&&l.push(h)}l.length&&i.rest.push({name:t.name.text,key:Rg(t.name.text),routes:l})}}function g0(t){let i={data:[],services:[],remotes:[],rest:[]},e=t.sources;for(let r=0,n=e.length;r<n;++r){let s=e[r];if(s.isLibrary)continue;let a=s.statements;for(let l=0,o=a.length;l<o;++l){let u=a[l];if(u.kind==52)y0(u,i);else if(u.kind==56){let c=u;to(c.decorators,16)&&i.remotes.push(Ig(c))}}}return i}function b0(t){return t.is(512)?"private":t.is(1024)?"protected":"public"}function x0(t){let i=t.vis+" ";return t.ro&&(i+="readonly "),i}function Rg(t){return t.length?t.charAt(0).toLowerCase()+t.substring(1):t}function io(t,i){switch(t){case"u8":case"u16":case"u32":case"i8":case"i16":case"i32":case"f32":case"f64":return"number";case"u64":case"i64":case"u128":case"i128":case"u256":case"i256":return"bigint";case"bool":case"boolean":return"boolean";case"string":return"string";case"void":return"void";default:if(i.has(t))return t;throw new Error("@data: unsupported type '"+t+"' (use a scalar, string, bool, native bignum, a nested @data class, or T[])")}}function Wi(t,i){let e=io(t.type,i);return t.array?e+"[]":e}function Tg(t,i){let e=new Array;for(let r=0,n=t.length;r<n;++r)e.push(t[r].name+": "+Wi(t[r].ref,i));return e.join(", ")}function Fg(t){switch(t){case"u8":return"U8";case"u16":return"U16";case"u32":return"U32";case"u64":return"U64";case"i8":return"I8";case"i16":return"I16";case"i32":return"I32";case"i64":return"I64";case"f32":return"F32";case"f64":return"F64";case"bool":case"boolean":return"Bool";case"string":return"String";case"u128":return"U128";case"i128":return"I128";case"u256":return"U256";case"i256":return"I256";default:return""}}function Ag(t,i){let e=Fg(t);return e.length?"w.write"+e+"("+i+");":i+".encodeInto(w);"}function Eg(t){let i=Fg(t);return i.length?"r.read"+i+"()":t+".decodeFrom(r)"}function vg(t,i,e){switch(t){case"u8":case"u16":case"u32":case"i8":case"i16":case"i32":case"f32":case"f64":return"Number("+i+" ?? 0)";case"u64":case"i64":return"BigInt("+i+" ?? 0)";case"u128":return"__toilUnlimb("+i+", 2, false)";case"i128":return"__toilUnlimb("+i+", 2, true)";case"u256":return"__toilUnlimb("+i+", 4, false)";case"i256":return"__toilUnlimb("+i+", 4, true)";case"bool":case"boolean":return"Boolean("+i+")";case"string":return"String("+i+' ?? "")';default:if(e.has(t))return t+".fromJSONValue("+i+")";throw new Error("@data: unsupported type '"+t+"'")}}function Sg(t,i,e){switch(t){case"u64":case"i64":case"u128":case"i128":case"u256":case"i256":return i+".toString()";default:return e.has(t)?i+".toJSONValue()":i}}function T0(t,i){switch(t){case"u64":case"i64":case"u128":case"i128":case"u256":case"i256":return!0;default:return i.has(t)}}function A0(){let t=`// 64-bit-and-up integers cross the JSON wire as decimal strings (exact through
309
309
  `;return t+=`// JSON.parse at any size). Older servers emitted 128/256-bit values as little-endian
310
310
  `,t+=`// arrays of 64-bit limbs instead; the array branch revives those.
311
311
  `,t+=`function __toilUnlimb(v: any, n: number, signedTop: boolean): bigint {