mini-program-cljs
Version:
689 lines (637 loc) • 38.8 kB
JavaScript
goog.provide('cljs.repl');
goog.require('cljs.core');
goog.require('cljs.spec.alpha');
goog.require('goog.string');
goog.require('goog.string.format');
cljs.repl.print_doc = (function cljs$repl$print_doc(p__31632){
var map__31633 = p__31632;
var map__31633__$1 = (((((!((map__31633 == null))))?(((((map__31633.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__31633.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__31633):map__31633);
var m = map__31633__$1;
var n = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31633__$1,new cljs.core.Keyword(null,"ns","ns",441598760));
var nm = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31633__$1,new cljs.core.Keyword(null,"name","name",1843675177));
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["-------------------------"], 0));
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var or__4185__auto__ = new cljs.core.Keyword(null,"spec","spec",347520401).cljs$core$IFn$_invoke$arity$1(m);
if(cljs.core.truth_(or__4185__auto__)){
return or__4185__auto__;
} else {
return [(function (){var temp__5735__auto__ = new cljs.core.Keyword(null,"ns","ns",441598760).cljs$core$IFn$_invoke$arity$1(m);
if(cljs.core.truth_(temp__5735__auto__)){
var ns = temp__5735__auto__;
return [cljs.core.str.cljs$core$IFn$_invoke$arity$1(ns),"/"].join('');
} else {
return null;
}
})(),cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,"name","name",1843675177).cljs$core$IFn$_invoke$arity$1(m))].join('');
}
})()], 0));
if(cljs.core.truth_(new cljs.core.Keyword(null,"protocol","protocol",652470118).cljs$core$IFn$_invoke$arity$1(m))){
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["Protocol"], 0));
} else {
}
if(cljs.core.truth_(new cljs.core.Keyword(null,"forms","forms",2045992350).cljs$core$IFn$_invoke$arity$1(m))){
var seq__31639_31818 = cljs.core.seq(new cljs.core.Keyword(null,"forms","forms",2045992350).cljs$core$IFn$_invoke$arity$1(m));
var chunk__31640_31819 = null;
var count__31641_31820 = (0);
var i__31642_31821 = (0);
while(true){
if((i__31642_31821 < count__31641_31820)){
var f_31822 = chunk__31640_31819.cljs$core$IIndexed$_nth$arity$2(null,i__31642_31821);
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",f_31822], 0));
var G__31823 = seq__31639_31818;
var G__31824 = chunk__31640_31819;
var G__31825 = count__31641_31820;
var G__31826 = (i__31642_31821 + (1));
seq__31639_31818 = G__31823;
chunk__31640_31819 = G__31824;
count__31641_31820 = G__31825;
i__31642_31821 = G__31826;
continue;
} else {
var temp__5735__auto___31827 = cljs.core.seq(seq__31639_31818);
if(temp__5735__auto___31827){
var seq__31639_31832__$1 = temp__5735__auto___31827;
if(cljs.core.chunked_seq_QMARK_(seq__31639_31832__$1)){
var c__4609__auto___31834 = cljs.core.chunk_first(seq__31639_31832__$1);
var G__31835 = cljs.core.chunk_rest(seq__31639_31832__$1);
var G__31836 = c__4609__auto___31834;
var G__31837 = cljs.core.count(c__4609__auto___31834);
var G__31838 = (0);
seq__31639_31818 = G__31835;
chunk__31640_31819 = G__31836;
count__31641_31820 = G__31837;
i__31642_31821 = G__31838;
continue;
} else {
var f_31845 = cljs.core.first(seq__31639_31832__$1);
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",f_31845], 0));
var G__31846 = cljs.core.next(seq__31639_31832__$1);
var G__31847 = null;
var G__31848 = (0);
var G__31849 = (0);
seq__31639_31818 = G__31846;
chunk__31640_31819 = G__31847;
count__31641_31820 = G__31848;
i__31642_31821 = G__31849;
continue;
}
} else {
}
}
break;
}
} else {
if(cljs.core.truth_(new cljs.core.Keyword(null,"arglists","arglists",1661989754).cljs$core$IFn$_invoke$arity$1(m))){
var arglists_31853 = new cljs.core.Keyword(null,"arglists","arglists",1661989754).cljs$core$IFn$_invoke$arity$1(m);
if(cljs.core.truth_((function (){var or__4185__auto__ = new cljs.core.Keyword(null,"macro","macro",-867863404).cljs$core$IFn$_invoke$arity$1(m);
if(cljs.core.truth_(or__4185__auto__)){
return or__4185__auto__;
} else {
return new cljs.core.Keyword(null,"repl-special-function","repl-special-function",1262603725).cljs$core$IFn$_invoke$arity$1(m);
}
})())){
cljs.core.prn.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([arglists_31853], 0));
} else {
cljs.core.prn.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([((cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,"quote","quote",1377916282,null),cljs.core.first(arglists_31853)))?cljs.core.second(arglists_31853):arglists_31853)], 0));
}
} else {
}
}
if(cljs.core.truth_(new cljs.core.Keyword(null,"special-form","special-form",-1326536374).cljs$core$IFn$_invoke$arity$1(m))){
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["Special Form"], 0));
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",new cljs.core.Keyword(null,"doc","doc",1913296891).cljs$core$IFn$_invoke$arity$1(m)], 0));
if(cljs.core.contains_QMARK_(m,new cljs.core.Keyword(null,"url","url",276297046))){
if(cljs.core.truth_(new cljs.core.Keyword(null,"url","url",276297046).cljs$core$IFn$_invoke$arity$1(m))){
return cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([["\n Please see http://clojure.org/",cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,"url","url",276297046).cljs$core$IFn$_invoke$arity$1(m))].join('')], 0));
} else {
return null;
}
} else {
return cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([["\n Please see http://clojure.org/special_forms#",cljs.core.str.cljs$core$IFn$_invoke$arity$1(new cljs.core.Keyword(null,"name","name",1843675177).cljs$core$IFn$_invoke$arity$1(m))].join('')], 0));
}
} else {
if(cljs.core.truth_(new cljs.core.Keyword(null,"macro","macro",-867863404).cljs$core$IFn$_invoke$arity$1(m))){
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["Macro"], 0));
} else {
}
if(cljs.core.truth_(new cljs.core.Keyword(null,"spec","spec",347520401).cljs$core$IFn$_invoke$arity$1(m))){
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["Spec"], 0));
} else {
}
if(cljs.core.truth_(new cljs.core.Keyword(null,"repl-special-function","repl-special-function",1262603725).cljs$core$IFn$_invoke$arity$1(m))){
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["REPL Special Function"], 0));
} else {
}
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",new cljs.core.Keyword(null,"doc","doc",1913296891).cljs$core$IFn$_invoke$arity$1(m)], 0));
if(cljs.core.truth_(new cljs.core.Keyword(null,"protocol","protocol",652470118).cljs$core$IFn$_invoke$arity$1(m))){
var seq__31652_31869 = cljs.core.seq(new cljs.core.Keyword(null,"methods","methods",453930866).cljs$core$IFn$_invoke$arity$1(m));
var chunk__31653_31870 = null;
var count__31654_31871 = (0);
var i__31655_31872 = (0);
while(true){
if((i__31655_31872 < count__31654_31871)){
var vec__31695_31873 = chunk__31653_31870.cljs$core$IIndexed$_nth$arity$2(null,i__31655_31872);
var name_31874 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31695_31873,(0),null);
var map__31698_31875 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31695_31873,(1),null);
var map__31698_31876__$1 = (((((!((map__31698_31875 == null))))?(((((map__31698_31875.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__31698_31875.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__31698_31875):map__31698_31875);
var doc_31877 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31698_31876__$1,new cljs.core.Keyword(null,"doc","doc",1913296891));
var arglists_31878 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31698_31876__$1,new cljs.core.Keyword(null,"arglists","arglists",1661989754));
cljs.core.println();
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",name_31874], 0));
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",arglists_31878], 0));
if(cljs.core.truth_(doc_31877)){
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",doc_31877], 0));
} else {
}
var G__31879 = seq__31652_31869;
var G__31880 = chunk__31653_31870;
var G__31881 = count__31654_31871;
var G__31882 = (i__31655_31872 + (1));
seq__31652_31869 = G__31879;
chunk__31653_31870 = G__31880;
count__31654_31871 = G__31881;
i__31655_31872 = G__31882;
continue;
} else {
var temp__5735__auto___31883 = cljs.core.seq(seq__31652_31869);
if(temp__5735__auto___31883){
var seq__31652_31884__$1 = temp__5735__auto___31883;
if(cljs.core.chunked_seq_QMARK_(seq__31652_31884__$1)){
var c__4609__auto___31885 = cljs.core.chunk_first(seq__31652_31884__$1);
var G__31886 = cljs.core.chunk_rest(seq__31652_31884__$1);
var G__31887 = c__4609__auto___31885;
var G__31888 = cljs.core.count(c__4609__auto___31885);
var G__31889 = (0);
seq__31652_31869 = G__31886;
chunk__31653_31870 = G__31887;
count__31654_31871 = G__31888;
i__31655_31872 = G__31889;
continue;
} else {
var vec__31701_31890 = cljs.core.first(seq__31652_31884__$1);
var name_31891 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31701_31890,(0),null);
var map__31704_31892 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31701_31890,(1),null);
var map__31704_31893__$1 = (((((!((map__31704_31892 == null))))?(((((map__31704_31892.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__31704_31892.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__31704_31892):map__31704_31892);
var doc_31894 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31704_31893__$1,new cljs.core.Keyword(null,"doc","doc",1913296891));
var arglists_31895 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31704_31893__$1,new cljs.core.Keyword(null,"arglists","arglists",1661989754));
cljs.core.println();
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",name_31891], 0));
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",arglists_31895], 0));
if(cljs.core.truth_(doc_31894)){
cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" ",doc_31894], 0));
} else {
}
var G__31901 = cljs.core.next(seq__31652_31884__$1);
var G__31902 = null;
var G__31903 = (0);
var G__31904 = (0);
seq__31652_31869 = G__31901;
chunk__31653_31870 = G__31902;
count__31654_31871 = G__31903;
i__31655_31872 = G__31904;
continue;
}
} else {
}
}
break;
}
} else {
}
if(cljs.core.truth_(n)){
var temp__5735__auto__ = cljs.spec.alpha.get_spec(cljs.core.symbol.cljs$core$IFn$_invoke$arity$2(cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.ns_name(n)),cljs.core.name(nm)));
if(cljs.core.truth_(temp__5735__auto__)){
var fnspec = temp__5735__auto__;
cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["Spec"], 0));
var seq__31707 = cljs.core.seq(new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"args","args",1315556576),new cljs.core.Keyword(null,"ret","ret",-468222814),new cljs.core.Keyword(null,"fn","fn",-1175266204)], null));
var chunk__31708 = null;
var count__31709 = (0);
var i__31710 = (0);
while(true){
if((i__31710 < count__31709)){
var role = chunk__31708.cljs$core$IIndexed$_nth$arity$2(null,i__31710);
var temp__5735__auto___31905__$1 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(fnspec,role);
if(cljs.core.truth_(temp__5735__auto___31905__$1)){
var spec_31906 = temp__5735__auto___31905__$1;
cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([["\n ",cljs.core.name(role),":"].join(''),cljs.spec.alpha.describe(spec_31906)], 0));
} else {
}
var G__31907 = seq__31707;
var G__31908 = chunk__31708;
var G__31909 = count__31709;
var G__31910 = (i__31710 + (1));
seq__31707 = G__31907;
chunk__31708 = G__31908;
count__31709 = G__31909;
i__31710 = G__31910;
continue;
} else {
var temp__5735__auto____$1 = cljs.core.seq(seq__31707);
if(temp__5735__auto____$1){
var seq__31707__$1 = temp__5735__auto____$1;
if(cljs.core.chunked_seq_QMARK_(seq__31707__$1)){
var c__4609__auto__ = cljs.core.chunk_first(seq__31707__$1);
var G__31911 = cljs.core.chunk_rest(seq__31707__$1);
var G__31912 = c__4609__auto__;
var G__31913 = cljs.core.count(c__4609__auto__);
var G__31914 = (0);
seq__31707 = G__31911;
chunk__31708 = G__31912;
count__31709 = G__31913;
i__31710 = G__31914;
continue;
} else {
var role = cljs.core.first(seq__31707__$1);
var temp__5735__auto___31916__$2 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(fnspec,role);
if(cljs.core.truth_(temp__5735__auto___31916__$2)){
var spec_31917 = temp__5735__auto___31916__$2;
cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([["\n ",cljs.core.name(role),":"].join(''),cljs.spec.alpha.describe(spec_31917)], 0));
} else {
}
var G__31918 = cljs.core.next(seq__31707__$1);
var G__31919 = null;
var G__31920 = (0);
var G__31921 = (0);
seq__31707 = G__31918;
chunk__31708 = G__31919;
count__31709 = G__31920;
i__31710 = G__31921;
continue;
}
} else {
return null;
}
}
break;
}
} else {
return null;
}
} else {
return null;
}
}
});
/**
* Constructs a data representation for a Error with keys:
* :cause - root cause message
* :phase - error phase
* :via - cause chain, with cause keys:
* :type - exception class symbol
* :message - exception message
* :data - ex-data
* :at - top stack element
* :trace - root cause stack elements
*/
cljs.repl.Error__GT_map = (function cljs$repl$Error__GT_map(o){
var base = (function (t){
return cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"type","type",1174270348),(((t instanceof cljs.core.ExceptionInfo))?new cljs.core.Symbol(null,"ExceptionInfo","ExceptionInfo",294935087,null):(((t instanceof Error))?cljs.core.symbol.cljs$core$IFn$_invoke$arity$2("js",t.name):null
))], null),(function (){var temp__5735__auto__ = cljs.core.ex_message(t);
if(cljs.core.truth_(temp__5735__auto__)){
var msg = temp__5735__auto__;
return new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"message","message",-406056002),msg], null);
} else {
return null;
}
})(),(function (){var temp__5735__auto__ = cljs.core.ex_data(t);
if(cljs.core.truth_(temp__5735__auto__)){
var ed = temp__5735__auto__;
return new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"data","data",-232669377),ed], null);
} else {
return null;
}
})()], 0));
});
var via = (function (){var via = cljs.core.PersistentVector.EMPTY;
var t = o;
while(true){
if(cljs.core.truth_(t)){
var G__31923 = cljs.core.conj.cljs$core$IFn$_invoke$arity$2(via,t);
var G__31924 = cljs.core.ex_cause(t);
via = G__31923;
t = G__31924;
continue;
} else {
return via;
}
break;
}
})();
var root = cljs.core.peek(via);
return cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Keyword(null,"via","via",-1904457336),cljs.core.vec(cljs.core.map.cljs$core$IFn$_invoke$arity$2(base,via)),new cljs.core.Keyword(null,"trace","trace",-1082747415),null], null),(function (){var temp__5735__auto__ = cljs.core.ex_message(root);
if(cljs.core.truth_(temp__5735__auto__)){
var root_msg = temp__5735__auto__;
return new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"cause","cause",231901252),root_msg], null);
} else {
return null;
}
})(),(function (){var temp__5735__auto__ = cljs.core.ex_data(root);
if(cljs.core.truth_(temp__5735__auto__)){
var data = temp__5735__auto__;
return new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"data","data",-232669377),data], null);
} else {
return null;
}
})(),(function (){var temp__5735__auto__ = new cljs.core.Keyword("clojure.error","phase","clojure.error/phase",275140358).cljs$core$IFn$_invoke$arity$1(cljs.core.ex_data(o));
if(cljs.core.truth_(temp__5735__auto__)){
var phase = temp__5735__auto__;
return new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword(null,"phase","phase",575722892),phase], null);
} else {
return null;
}
})()], 0));
});
/**
* Returns an analysis of the phase, error, cause, and location of an error that occurred
* based on Throwable data, as returned by Throwable->map. All attributes other than phase
* are optional:
* :clojure.error/phase - keyword phase indicator, one of:
* :read-source :compile-syntax-check :compilation :macro-syntax-check :macroexpansion
* :execution :read-eval-result :print-eval-result
* :clojure.error/source - file name (no path)
* :clojure.error/line - integer line number
* :clojure.error/column - integer column number
* :clojure.error/symbol - symbol being expanded/compiled/invoked
* :clojure.error/class - cause exception class symbol
* :clojure.error/cause - cause exception message
* :clojure.error/spec - explain-data for spec error
*/
cljs.repl.ex_triage = (function cljs$repl$ex_triage(datafied_throwable){
var map__31715 = datafied_throwable;
var map__31715__$1 = (((((!((map__31715 == null))))?(((((map__31715.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__31715.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__31715):map__31715);
var via = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31715__$1,new cljs.core.Keyword(null,"via","via",-1904457336));
var trace = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31715__$1,new cljs.core.Keyword(null,"trace","trace",-1082747415));
var phase = cljs.core.get.cljs$core$IFn$_invoke$arity$3(map__31715__$1,new cljs.core.Keyword(null,"phase","phase",575722892),new cljs.core.Keyword(null,"execution","execution",253283524));
var map__31716 = cljs.core.last(via);
var map__31716__$1 = (((((!((map__31716 == null))))?(((((map__31716.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__31716.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__31716):map__31716);
var type = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31716__$1,new cljs.core.Keyword(null,"type","type",1174270348));
var message = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31716__$1,new cljs.core.Keyword(null,"message","message",-406056002));
var data = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31716__$1,new cljs.core.Keyword(null,"data","data",-232669377));
var map__31717 = data;
var map__31717__$1 = (((((!((map__31717 == null))))?(((((map__31717.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__31717.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__31717):map__31717);
var problems = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31717__$1,new cljs.core.Keyword("cljs.spec.alpha","problems","cljs.spec.alpha/problems",447400814));
var fn = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31717__$1,new cljs.core.Keyword("cljs.spec.alpha","fn","cljs.spec.alpha/fn",408600443));
var caller = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31717__$1,new cljs.core.Keyword("cljs.spec.test.alpha","caller","cljs.spec.test.alpha/caller",-398302390));
var map__31718 = new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.first(via));
var map__31718__$1 = (((((!((map__31718 == null))))?(((((map__31718.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__31718.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__31718):map__31718);
var top_data = map__31718__$1;
var source = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31718__$1,new cljs.core.Keyword("clojure.error","source","clojure.error/source",-2011936397));
return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3((function (){var G__31725 = phase;
var G__31725__$1 = (((G__31725 instanceof cljs.core.Keyword))?G__31725.fqn:null);
switch (G__31725__$1) {
case "read-source":
var map__31727 = data;
var map__31727__$1 = (((((!((map__31727 == null))))?(((((map__31727.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__31727.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__31727):map__31727);
var line = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31727__$1,new cljs.core.Keyword("clojure.error","line","clojure.error/line",-1816287471));
var column = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31727__$1,new cljs.core.Keyword("clojure.error","column","clojure.error/column",304721553));
var G__31729 = cljs.core.merge.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([new cljs.core.Keyword(null,"data","data",-232669377).cljs$core$IFn$_invoke$arity$1(cljs.core.second(via)),top_data], 0));
var G__31729__$1 = (cljs.core.truth_(source)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31729,new cljs.core.Keyword("clojure.error","source","clojure.error/source",-2011936397),source):G__31729);
var G__31729__$2 = (cljs.core.truth_((function (){var fexpr__31730 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, ["NO_SOURCE_PATH",null,"NO_SOURCE_FILE",null], null), null);
return (fexpr__31730.cljs$core$IFn$_invoke$arity$1 ? fexpr__31730.cljs$core$IFn$_invoke$arity$1(source) : fexpr__31730.call(null,source));
})())?cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(G__31729__$1,new cljs.core.Keyword("clojure.error","source","clojure.error/source",-2011936397)):G__31729__$1);
if(cljs.core.truth_(message)){
return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31729__$2,new cljs.core.Keyword("clojure.error","cause","clojure.error/cause",-1879175742),message);
} else {
return G__31729__$2;
}
break;
case "compile-syntax-check":
case "compilation":
case "macro-syntax-check":
case "macroexpansion":
var G__31731 = top_data;
var G__31731__$1 = (cljs.core.truth_(source)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31731,new cljs.core.Keyword("clojure.error","source","clojure.error/source",-2011936397),source):G__31731);
var G__31731__$2 = (cljs.core.truth_((function (){var fexpr__31732 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, ["NO_SOURCE_PATH",null,"NO_SOURCE_FILE",null], null), null);
return (fexpr__31732.cljs$core$IFn$_invoke$arity$1 ? fexpr__31732.cljs$core$IFn$_invoke$arity$1(source) : fexpr__31732.call(null,source));
})())?cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(G__31731__$1,new cljs.core.Keyword("clojure.error","source","clojure.error/source",-2011936397)):G__31731__$1);
var G__31731__$3 = (cljs.core.truth_(type)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31731__$2,new cljs.core.Keyword("clojure.error","class","clojure.error/class",278435890),type):G__31731__$2);
var G__31731__$4 = (cljs.core.truth_(message)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31731__$3,new cljs.core.Keyword("clojure.error","cause","clojure.error/cause",-1879175742),message):G__31731__$3);
if(cljs.core.truth_(problems)){
return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31731__$4,new cljs.core.Keyword("clojure.error","spec","clojure.error/spec",2055032595),data);
} else {
return G__31731__$4;
}
break;
case "read-eval-result":
case "print-eval-result":
var vec__31734 = cljs.core.first(trace);
var source__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31734,(0),null);
var method = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31734,(1),null);
var file = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31734,(2),null);
var line = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31734,(3),null);
var G__31737 = top_data;
var G__31737__$1 = (cljs.core.truth_(line)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31737,new cljs.core.Keyword("clojure.error","line","clojure.error/line",-1816287471),line):G__31737);
var G__31737__$2 = (cljs.core.truth_(file)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31737__$1,new cljs.core.Keyword("clojure.error","source","clojure.error/source",-2011936397),file):G__31737__$1);
var G__31737__$3 = (cljs.core.truth_((function (){var and__4174__auto__ = source__$1;
if(cljs.core.truth_(and__4174__auto__)){
return method;
} else {
return and__4174__auto__;
}
})())?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31737__$2,new cljs.core.Keyword("clojure.error","symbol","clojure.error/symbol",1544821994),(new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[source__$1,method],null))):G__31737__$2);
var G__31737__$4 = (cljs.core.truth_(type)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31737__$3,new cljs.core.Keyword("clojure.error","class","clojure.error/class",278435890),type):G__31737__$3);
if(cljs.core.truth_(message)){
return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31737__$4,new cljs.core.Keyword("clojure.error","cause","clojure.error/cause",-1879175742),message);
} else {
return G__31737__$4;
}
break;
case "execution":
var vec__31738 = cljs.core.first(trace);
var source__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31738,(0),null);
var method = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31738,(1),null);
var file = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31738,(2),null);
var line = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__31738,(3),null);
var file__$1 = cljs.core.first(cljs.core.remove.cljs$core$IFn$_invoke$arity$2((function (p1__31714_SHARP_){
var or__4185__auto__ = (p1__31714_SHARP_ == null);
if(or__4185__auto__){
return or__4185__auto__;
} else {
var fexpr__31742 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, ["NO_SOURCE_PATH",null,"NO_SOURCE_FILE",null], null), null);
return (fexpr__31742.cljs$core$IFn$_invoke$arity$1 ? fexpr__31742.cljs$core$IFn$_invoke$arity$1(p1__31714_SHARP_) : fexpr__31742.call(null,p1__31714_SHARP_));
}
}),new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"file","file",-1269645878).cljs$core$IFn$_invoke$arity$1(caller),file], null)));
var err_line = (function (){var or__4185__auto__ = new cljs.core.Keyword(null,"line","line",212345235).cljs$core$IFn$_invoke$arity$1(caller);
if(cljs.core.truth_(or__4185__auto__)){
return or__4185__auto__;
} else {
return line;
}
})();
var G__31743 = new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword("clojure.error","class","clojure.error/class",278435890),type], null);
var G__31743__$1 = (cljs.core.truth_(err_line)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31743,new cljs.core.Keyword("clojure.error","line","clojure.error/line",-1816287471),err_line):G__31743);
var G__31743__$2 = (cljs.core.truth_(message)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31743__$1,new cljs.core.Keyword("clojure.error","cause","clojure.error/cause",-1879175742),message):G__31743__$1);
var G__31743__$3 = (cljs.core.truth_((function (){var or__4185__auto__ = fn;
if(cljs.core.truth_(or__4185__auto__)){
return or__4185__auto__;
} else {
var and__4174__auto__ = source__$1;
if(cljs.core.truth_(and__4174__auto__)){
return method;
} else {
return and__4174__auto__;
}
}
})())?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31743__$2,new cljs.core.Keyword("clojure.error","symbol","clojure.error/symbol",1544821994),(function (){var or__4185__auto__ = fn;
if(cljs.core.truth_(or__4185__auto__)){
return or__4185__auto__;
} else {
return (new cljs.core.PersistentVector(null,2,(5),cljs.core.PersistentVector.EMPTY_NODE,[source__$1,method],null));
}
})()):G__31743__$2);
var G__31743__$4 = (cljs.core.truth_(file__$1)?cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31743__$3,new cljs.core.Keyword("clojure.error","source","clojure.error/source",-2011936397),file__$1):G__31743__$3);
if(cljs.core.truth_(problems)){
return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(G__31743__$4,new cljs.core.Keyword("clojure.error","spec","clojure.error/spec",2055032595),data);
} else {
return G__31743__$4;
}
break;
default:
throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__31725__$1)].join('')));
}
})(),new cljs.core.Keyword("clojure.error","phase","clojure.error/phase",275140358),phase);
});
/**
* Returns a string from exception data, as produced by ex-triage.
* The first line summarizes the exception phase and location.
* The subsequent lines describe the cause.
*/
cljs.repl.ex_str = (function cljs$repl$ex_str(p__31752){
var map__31753 = p__31752;
var map__31753__$1 = (((((!((map__31753 == null))))?(((((map__31753.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__31753.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__31753):map__31753);
var triage_data = map__31753__$1;
var phase = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31753__$1,new cljs.core.Keyword("clojure.error","phase","clojure.error/phase",275140358));
var source = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31753__$1,new cljs.core.Keyword("clojure.error","source","clojure.error/source",-2011936397));
var line = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31753__$1,new cljs.core.Keyword("clojure.error","line","clojure.error/line",-1816287471));
var column = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31753__$1,new cljs.core.Keyword("clojure.error","column","clojure.error/column",304721553));
var symbol = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31753__$1,new cljs.core.Keyword("clojure.error","symbol","clojure.error/symbol",1544821994));
var class$ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31753__$1,new cljs.core.Keyword("clojure.error","class","clojure.error/class",278435890));
var cause = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31753__$1,new cljs.core.Keyword("clojure.error","cause","clojure.error/cause",-1879175742));
var spec = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__31753__$1,new cljs.core.Keyword("clojure.error","spec","clojure.error/spec",2055032595));
var loc = [cljs.core.str.cljs$core$IFn$_invoke$arity$1((function (){var or__4185__auto__ = source;
if(cljs.core.truth_(or__4185__auto__)){
return or__4185__auto__;
} else {
return "<cljs repl>";
}
})()),":",cljs.core.str.cljs$core$IFn$_invoke$arity$1((function (){var or__4185__auto__ = line;
if(cljs.core.truth_(or__4185__auto__)){
return or__4185__auto__;
} else {
return (1);
}
})()),(cljs.core.truth_(column)?[":",cljs.core.str.cljs$core$IFn$_invoke$arity$1(column)].join(''):"")].join('');
var class_name = cljs.core.name((function (){var or__4185__auto__ = class$;
if(cljs.core.truth_(or__4185__auto__)){
return or__4185__auto__;
} else {
return "";
}
})());
var simple_class = class_name;
var cause_type = ((cljs.core.contains_QMARK_(new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, ["RuntimeException",null,"Exception",null], null), null),simple_class))?"":[" (",simple_class,")"].join(''));
var format = goog.string.format;
var G__31755 = phase;
var G__31755__$1 = (((G__31755 instanceof cljs.core.Keyword))?G__31755.fqn:null);
switch (G__31755__$1) {
case "read-source":
return (format.cljs$core$IFn$_invoke$arity$3 ? format.cljs$core$IFn$_invoke$arity$3("Syntax error reading source at (%s).\n%s\n",loc,cause) : format.call(null,"Syntax error reading source at (%s).\n%s\n",loc,cause));
break;
case "macro-syntax-check":
var G__31756 = "Syntax error macroexpanding %sat (%s).\n%s";
var G__31757 = (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol)," "].join(''):"");
var G__31758 = loc;
var G__31759 = (cljs.core.truth_(spec)?(function (){var sb__4720__auto__ = (new goog.string.StringBuffer());
var _STAR_print_newline_STAR__orig_val__31760_31974 = cljs.core._STAR_print_newline_STAR_;
var _STAR_print_fn_STAR__orig_val__31761_31975 = cljs.core._STAR_print_fn_STAR_;
var _STAR_print_newline_STAR__temp_val__31762_31976 = true;
var _STAR_print_fn_STAR__temp_val__31763_31977 = (function (x__4721__auto__){
return sb__4720__auto__.append(x__4721__auto__);
});
(cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__temp_val__31762_31976);
(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__temp_val__31763_31977);
try{cljs.spec.alpha.explain_out(cljs.core.update.cljs$core$IFn$_invoke$arity$3(spec,new cljs.core.Keyword("cljs.spec.alpha","problems","cljs.spec.alpha/problems",447400814),(function (probs){
return cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__31748_SHARP_){
return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(p1__31748_SHARP_,new cljs.core.Keyword(null,"in","in",-1531184865));
}),probs);
}))
);
}finally {(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__orig_val__31761_31975);
(cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__orig_val__31760_31974);
}
return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4720__auto__);
})():(format.cljs$core$IFn$_invoke$arity$2 ? format.cljs$core$IFn$_invoke$arity$2("%s\n",cause) : format.call(null,"%s\n",cause)));
return (format.cljs$core$IFn$_invoke$arity$4 ? format.cljs$core$IFn$_invoke$arity$4(G__31756,G__31757,G__31758,G__31759) : format.call(null,G__31756,G__31757,G__31758,G__31759));
break;
case "macroexpansion":
var G__31769 = "Unexpected error%s macroexpanding %sat (%s).\n%s\n";
var G__31770 = cause_type;
var G__31771 = (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol)," "].join(''):"");
var G__31772 = loc;
var G__31773 = cause;
return (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(G__31769,G__31770,G__31771,G__31772,G__31773) : format.call(null,G__31769,G__31770,G__31771,G__31772,G__31773));
break;
case "compile-syntax-check":
var G__31781 = "Syntax error%s compiling %sat (%s).\n%s\n";
var G__31785 = cause_type;
var G__31786 = (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol)," "].join(''):"");
var G__31788 = loc;
var G__31789 = cause;
return (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(G__31781,G__31785,G__31786,G__31788,G__31789) : format.call(null,G__31781,G__31785,G__31786,G__31788,G__31789));
break;
case "compilation":
var G__31793 = "Unexpected error%s compiling %sat (%s).\n%s\n";
var G__31794 = cause_type;
var G__31795 = (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol)," "].join(''):"");
var G__31796 = loc;
var G__31797 = cause;
return (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(G__31793,G__31794,G__31795,G__31796,G__31797) : format.call(null,G__31793,G__31794,G__31795,G__31796,G__31797));
break;
case "read-eval-result":
return (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5("Error reading eval result%s at %s (%s).\n%s\n",cause_type,symbol,loc,cause) : format.call(null,"Error reading eval result%s at %s (%s).\n%s\n",cause_type,symbol,loc,cause));
break;
case "print-eval-result":
return (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5("Error printing return value%s at %s (%s).\n%s\n",cause_type,symbol,loc,cause) : format.call(null,"Error printing return value%s at %s (%s).\n%s\n",cause_type,symbol,loc,cause));
break;
case "execution":
if(cljs.core.truth_(spec)){
var G__31798 = "Execution error - invalid arguments to %s at (%s).\n%s";
var G__31799 = symbol;
var G__31800 = loc;
var G__31801 = (function (){var sb__4720__auto__ = (new goog.string.StringBuffer());
var _STAR_print_newline_STAR__orig_val__31802_31983 = cljs.core._STAR_print_newline_STAR_;
var _STAR_print_fn_STAR__orig_val__31803_31984 = cljs.core._STAR_print_fn_STAR_;
var _STAR_print_newline_STAR__temp_val__31804_31985 = true;
var _STAR_print_fn_STAR__temp_val__31805_31986 = (function (x__4721__auto__){
return sb__4720__auto__.append(x__4721__auto__);
});
(cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__temp_val__31804_31985);
(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__temp_val__31805_31986);
try{cljs.spec.alpha.explain_out(cljs.core.update.cljs$core$IFn$_invoke$arity$3(spec,new cljs.core.Keyword("cljs.spec.alpha","problems","cljs.spec.alpha/problems",447400814),(function (probs){
return cljs.core.map.cljs$core$IFn$_invoke$arity$2((function (p1__31751_SHARP_){
return cljs.core.dissoc.cljs$core$IFn$_invoke$arity$2(p1__31751_SHARP_,new cljs.core.Keyword(null,"in","in",-1531184865));
}),probs);
}))
);
}finally {(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__orig_val__31803_31984);
(cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__orig_val__31802_31983);
}
return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4720__auto__);
})();
return (format.cljs$core$IFn$_invoke$arity$4 ? format.cljs$core$IFn$_invoke$arity$4(G__31798,G__31799,G__31800,G__31801) : format.call(null,G__31798,G__31799,G__31800,G__31801));
} else {
var G__31813 = "Execution error%s at %s(%s).\n%s\n";
var G__31814 = cause_type;
var G__31815 = (cljs.core.truth_(symbol)?[cljs.core.str.cljs$core$IFn$_invoke$arity$1(symbol)," "].join(''):"");
var G__31816 = loc;
var G__31817 = cause;
return (format.cljs$core$IFn$_invoke$arity$5 ? format.cljs$core$IFn$_invoke$arity$5(G__31813,G__31814,G__31815,G__31816,G__31817) : format.call(null,G__31813,G__31814,G__31815,G__31816,G__31817));
}
break;
default:
throw (new Error(["No matching clause: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(G__31755__$1)].join('')));
}
});
cljs.repl.error__GT_str = (function cljs$repl$error__GT_str(error){
return cljs.repl.ex_str(cljs.repl.ex_triage(cljs.repl.Error__GT_map(error)));
});
//# sourceMappingURL=cljs.repl.js.map