goog.provide('shadow.remote.runtime.eval_support'); shadow.remote.runtime.eval_support.obj_support_inst = null; shadow.remote.runtime.eval_support.get_ref = (function shadow$remote$runtime$eval_support$get_ref(oid){ if(cljs.core.truth_(shadow.remote.runtime.eval_support.obj_support_inst)){ } else { throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2("obj-support not bound, can only call this from eval",new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"oid","oid",-768692334),oid], null)); } return shadow.remote.runtime.obj_support.get_ref(shadow.remote.runtime.eval_support.obj_support_inst,oid); }); shadow.remote.runtime.eval_support.cljs_eval = (function shadow$remote$runtime$eval_support$cljs_eval(p__38917,p__38918){ var map__38919 = p__38917; var map__38919__$1 = cljs.core.__destructure_map(map__38919); var svc = map__38919__$1; var runtime = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38919__$1,new cljs.core.Keyword(null,"runtime","runtime",-1331573996)); var obj_support = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38919__$1,new cljs.core.Keyword(null,"obj-support","obj-support",1522559229)); var map__38920 = p__38918; var map__38920__$1 = cljs.core.__destructure_map(map__38920); var msg = map__38920__$1; var input = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38920__$1,new cljs.core.Keyword(null,"input","input",556931961)); (shadow.remote.runtime.eval_support.obj_support_inst = obj_support); return shadow.remote.runtime.api.cljs_eval(runtime,input,(function (p__38921){ var map__38922 = p__38921; var map__38922__$1 = cljs.core.__destructure_map(map__38922); var info = map__38922__$1; var result = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38922__$1,new cljs.core.Keyword(null,"result","result",1415092211)); (shadow.remote.runtime.eval_support.obj_support_inst = null); var G__38923 = result; var G__38923__$1 = (((G__38923 instanceof cljs.core.Keyword))?G__38923.fqn:null); switch (G__38923__$1) { case "compile-error": var map__38925 = info; var map__38925__$1 = cljs.core.__destructure_map(map__38925); var ex_client_id = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38925__$1,new cljs.core.Keyword(null,"ex-client-id","ex-client-id",-446123984)); var ex_oid = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38925__$1,new cljs.core.Keyword(null,"ex-oid","ex-oid",-650256737)); var report = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38925__$1,new cljs.core.Keyword(null,"report","report",1394055010)); return shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 4, [new cljs.core.Keyword(null,"op","op",-1882987955),new cljs.core.Keyword(null,"eval-compile-error","eval-compile-error",-1765075397),new cljs.core.Keyword(null,"ex-client-id","ex-client-id",-446123984),ex_client_id,new cljs.core.Keyword(null,"ex-oid","ex-oid",-650256737),ex_oid,new cljs.core.Keyword(null,"report","report",1394055010),report], null)); break; case "runtime-error": var map__38926 = info; var map__38926__$1 = cljs.core.__destructure_map(map__38926); var ex = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38926__$1,new cljs.core.Keyword(null,"ex","ex",-1413771341)); var ex_oid = shadow.remote.runtime.obj_support.register(obj_support,ex,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"msg","msg",-1386103444),input], null)); return shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"op","op",-1882987955),new cljs.core.Keyword(null,"eval-runtime-error","eval-runtime-error",275935402),new cljs.core.Keyword(null,"ex-oid","ex-oid",-650256737),ex_oid], null)); break; case "warnings": var map__38943 = info; var map__38943__$1 = cljs.core.__destructure_map(map__38943); var warnings = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38943__$1,new cljs.core.Keyword(null,"warnings","warnings",-735437651)); return shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"op","op",-1882987955),new cljs.core.Keyword(null,"eval-compile-warnings","eval-compile-warnings",1994859386),new cljs.core.Keyword(null,"warnings","warnings",-735437651),warnings], null)); break; case "ok": var map__38944 = info; var map__38944__$1 = cljs.core.__destructure_map(map__38944); var results = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38944__$1,new cljs.core.Keyword(null,"results","results",-1134170113)); var warnings = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38944__$1,new cljs.core.Keyword(null,"warnings","warnings",-735437651)); var time_start = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38944__$1,new cljs.core.Keyword(null,"time-start","time-start",-590811745)); var time_finish = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38944__$1,new cljs.core.Keyword(null,"time-finish","time-finish",-1456032653)); var val = ((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2((1),cljs.core.count(results)))?cljs.core.first(results):results); var ref_oid = shadow.remote.runtime.obj_support.register(obj_support,val,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"msg","msg",-1386103444),input], null)); return shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 5, [new cljs.core.Keyword(null,"op","op",-1882987955),new cljs.core.Keyword(null,"eval-result-ref","eval-result-ref",263827420),new cljs.core.Keyword(null,"ref-oid","ref-oid",-526648644),ref_oid,new cljs.core.Keyword(null,"eval-ms","eval-ms",788821074),(time_finish - time_start),new cljs.core.Keyword(null,"eval-ns","eval-ns",-915623795),new cljs.core.Keyword(null,"ns","ns",441598760).cljs$core$IFn$_invoke$arity$1(info),new cljs.core.Keyword(null,"warnings","warnings",-735437651),warnings], null)); break; default: return console.error("Unhandled cljs-eval result",info); } })); }); shadow.remote.runtime.eval_support.js_eval = (function shadow$remote$runtime$eval_support$js_eval(p__38949,p__38950){ var map__38951 = p__38949; var map__38951__$1 = cljs.core.__destructure_map(map__38951); var svc = map__38951__$1; var runtime = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38951__$1,new cljs.core.Keyword(null,"runtime","runtime",-1331573996)); var obj_support = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38951__$1,new cljs.core.Keyword(null,"obj-support","obj-support",1522559229)); var map__38952 = p__38950; var map__38952__$1 = cljs.core.__destructure_map(map__38952); var msg = map__38952__$1; var code = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38952__$1,new cljs.core.Keyword(null,"code","code",1586293142)); return shadow.remote.runtime.api.js_eval(runtime,code,(function shadow$remote$runtime$eval_support$js_eval_$_eval_success(res){ var ref_oid = shadow.remote.runtime.obj_support.register(obj_support,res,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"js-code","js-code",1816578331),code], null)); return shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"op","op",-1882987955),new cljs.core.Keyword(null,"eval-result-ref","eval-result-ref",263827420),new cljs.core.Keyword(null,"ref-oid","ref-oid",-526648644),ref_oid], null)); }),(function shadow$remote$runtime$eval_support$js_eval_$_eval_fail(e){ return shadow.remote.runtime.shared.reply(runtime,msg,new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"op","op",-1882987955),new cljs.core.Keyword(null,"eval-error","eval-error",466139568),new cljs.core.Keyword(null,"e","e",1381269198),e.message], null)); })); }); shadow.remote.runtime.eval_support.start = (function shadow$remote$runtime$eval_support$start(runtime,obj_support){ var svc = new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"runtime","runtime",-1331573996),runtime,new cljs.core.Keyword(null,"obj-support","obj-support",1522559229),obj_support], null); shadow.remote.runtime.shared.add_extension(runtime,new cljs.core.Keyword("shadow.remote.runtime.eval-support","ext","shadow.remote.runtime.eval-support/ext",1781604625),new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"ops","ops",1237330063),new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"js-eval","js-eval",-137738892),(function (p1__38957_SHARP_){ return shadow.remote.runtime.eval_support.js_eval(svc,p1__38957_SHARP_); }),new cljs.core.Keyword(null,"cljs-eval","cljs-eval",1860675817),(function (p1__38958_SHARP_){ return shadow.remote.runtime.eval_support.cljs_eval(svc,p1__38958_SHARP_); })], null)], null)); return svc; }); shadow.remote.runtime.eval_support.stop = (function shadow$remote$runtime$eval_support$stop(p__38959){ var map__38960 = p__38959; var map__38960__$1 = cljs.core.__destructure_map(map__38960); var svc = map__38960__$1; var runtime = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__38960__$1,new cljs.core.Keyword(null,"runtime","runtime",-1331573996)); return shadow.remote.runtime.api.del_extension(runtime,new cljs.core.Keyword("shadow.remote.runtime.eval-support","ext","shadow.remote.runtime.eval-support/ext",1781604625)); }); //# sourceMappingURL=shadow.remote.runtime.eval_support.js.map