{"version":3,"sources":["lazy-pointer.ts"],"sourcesContent":["import { Pointer, MinimalJSRef } from \"./pointers.ts\";\n\nexport class LazyPointer<T> {\n\tconstructor(public id: string) {}\n\n\ttoString() {\n\t\treturn \"Unresolved Pointer ($\" + this.id + \")\"\n\t}\n\n\tonLoad(callback:(val:MinimalJSRef<T>, ref: Pointer<T>)=>void) {\n\t\tPointer.onPointerForIdAdded(this.id, p => callback(Pointer.collapseValue(p) as MinimalJSRef<T>, p))\n\t}\n\n\tstatic withVal<T>(val:MinimalJSRef<T>, callback:(val:MinimalJSRef<T>)=>void) {\n\t\tif (val instanceof LazyPointer) val.onLoad(callback);\n\t\telse callback(val);\n\t}\n}"],"names":["Pointer","LazyPointer","constructor","id","toString","onLoad","callback","onPointerForIdAdded","p","collapseValue","withVal","val"],"mappings":"AAAA,SAASA,OAAO,QAAsB,gBAAgB;AAEtD,OAAO,MAAMC;;IACZC,YAAY,AAAOC,EAAU,CAAE;aAAZA,KAAAA;IAAa;IAEhCC,WAAW;QACV,OAAO,0BAA0B,IAAI,CAACD,EAAE,GAAG;IAC5C;IAEAE,OAAOC,QAAqD,EAAE;QAC7DN,QAAQO,mBAAmB,CAAC,IAAI,CAACJ,EAAE,EAAEK,CAAAA,IAAKF,SAASN,QAAQS,aAAa,CAACD,IAAuBA;IACjG;IAEA,OAAOE,QAAWC,GAAmB,EAAEL,QAAoC,EAAE;QACxEK,eAAeV,cAAaU,IAAIN,MAAM,CAACC,YACtCA,SAASK;IACf;AACD","sourceRoot":"/lib/datex-core-js-legacy-0.3.15/runtime/","file":"lazy-pointer.ts"}