@the-minimal/protocol
Version:
Minimal and modular binary schema-full protocol for TypeScript
2 lines (1 loc) • 2.9 kB
JavaScript
var y=new TextDecoder("ascii"),l=new TextDecoder("utf8"),i=new TextEncoder;var u=(e,n)=>{let o=e===1?"setUint8":"setUint16";return(t,r)=>{t.v[o](t.o,r.length),t.o+=e;for(let c=0;c<r.length;c++)n(t,r[c])}},x=(e,n)=>{let o=e===1?"getUint8":"getUint16";return t=>{let r=t.v[o](t.o),c=new Array(r);t.o+=e;for(let s=0;s<r;++s)c[s]=n(t);return c}},U=e=>u(1,e),I=e=>u(2,e),a=e=>x(1,e),b=e=>x(2,e);var T=e=>{let n=e===1?"setUint8":"setUint16";return(o,t)=>{o.v[n](o.o,t.length),o.o+=e;for(let r=0;r<t.length;++r)o.a[o.o++]=t.charCodeAt(r)}},E=e=>{let n=e===1?"getUint8":"getUint16";return o=>{let t=o.v[n](o.o);o.o+=e;let r=y.decode(o.a.subarray(o.o,o.o+t));return o.o+=t,r}},O=T(1),h=T(2),F=E(1),C=E(2);var v=(e,n)=>e.a[e.o++]=+n,w=e=>!!e.a[e.o++];var _=e=>(n,o)=>n.a[n.o++]=e.indexOf(o),N=e=>n=>e[n.a[n.o++]];var D=e=>{let n=`setFloat${e*8}`;return(o,t)=>{o.v[n](o.o,t),o.o+=e}},$=e=>{let n=`getFloat${e*8}`;return o=>{let t=o.v[n](o.o);return o.o+=e,t}},B=D(4),q=D(8),G=$(4),H=$(8);var d=(e,n=!1)=>{let o=`set${n?"Int":"Uint"}${e*8}`;return(t,r)=>{t.v[o](t.o,r),t.o+=e}},p=(e,n=!1)=>{let o=`get${n?"Int":"Uint"}${e*8}`;return t=>{let r=t.v[o](t.o);return t.o+=e,r}},K=d(1,!1),L=d(2,!1),M=d(4,!1),P=d(1,!0),Q=d(2,!0),V=d(4,!0),W=p(1,!1),X=p(2,!1),Y=p(4,!1),Z=p(1,!0),z=p(2,!0),ee=p(4,!0);var ne=e=>(n,o)=>o===null?n.a[n.o++]=1:(n.a[n.o++]=0,e(n,o)),te=e=>n=>n.a[n.o++]===1?null:e(n);var ce=e=>{let n=e.length;return(o,t)=>{for(let r=0;r<n;++r)e[r].type(o,t[e[r].key])}},de=e=>{let n=e.length;return o=>{let t={};for(let r=0;r<n;++r)t[e[r].key]=e[r].type(o);return t}};var se=(e,n)=>(o,t)=>{n(t),e(o,t)},ye=(e,n)=>o=>{let t=e(o);return n(t),t};var ie=e=>{let n=e.length;return(o,t)=>{for(let r=0;r<n;++r)e[r](o,t[r])}},ue=e=>{let n=e.length;return o=>{let t=new Array(n);for(let r=0;r<n;++r)t[r]=e[r](o);return t}};var g=e=>{let n=e===1?"setUint8":"setUint16";return(o,t)=>{let r=i.encodeInto(t,o.a.subarray(o.o+e)).written;o.v[n](o.o,r),o.o+=e+r}},f=e=>{let n=e===1?"getUint8":"getUint16";return o=>{let t=o.v[n](o.o);o.o+=e;let r=l.decode(o.a.subarray(o.o,o.o+t));return o.o+=t,r}},Ee=g(1),De=g(2),$e=f(1),ge=f(2);export{y as ASCII_DECODER,l as UTF8_DECODER,i as UTF8_ENCODER,b as decodeArray16,a as decodeArray8,C as decodeAscii16,F as decodeAscii8,w as decodeBool,N as decodeEnum,G as decodeFloat32,H as decodeFloat64,z as decodeInt16,ee as decodeInt32,Z as decodeInt8,te as decodeNullable,de as decodeObject,ye as decodeTap,ue as decodeTuple,X as decodeUint16,Y as decodeUint32,W as decodeUint8,ge as decodeUnicode16,$e as decodeUnicode8,I as encodeArray16,U as encodeArray8,h as encodeAscii16,O as encodeAscii8,v as encodeBool,_ as encodeEnum,B as encodeFloat32,q as encodeFloat64,Q as encodeInt16,V as encodeInt32,P as encodeInt8,ne as encodeNullable,ce as encodeObject,se as encodeTap,ie as encodeTuple,L as encodeUint16,M as encodeUint32,K as encodeUint8,De as encodeUnicode16,Ee as encodeUnicode8};