UNPKG

mini-program-cljs

Version:

1,118 lines (1,028 loc) 268 kB
goog.provide('cljs.spec.alpha'); goog.require('cljs.core'); goog.require('goog.object'); goog.require('clojure.walk'); goog.require('cljs.spec.gen.alpha'); goog.require('clojure.string'); cljs.spec.alpha.MAX_INT = (9007199254740991); /** * A soft limit on how many times a branching spec (or/alt/* /opt-keys/multi-spec) * can be recursed through during generation. After this a * non-recursive branch will be chosen. */ cljs.spec.alpha._STAR_recursion_limit_STAR_ = (4); /** * The number of times an anonymous fn specified by fspec will be (generatively) tested during conform */ cljs.spec.alpha._STAR_fspec_iterations_STAR_ = (21); /** * The number of items validated in a collection spec'ed with 'every' */ cljs.spec.alpha._STAR_coll_check_limit_STAR_ = (101); /** * The number of errors reported by explain in a collection spec'ed with 'every' */ cljs.spec.alpha._STAR_coll_error_limit_STAR_ = (20); /** * @interface */ cljs.spec.alpha.Spec = function(){}; cljs.spec.alpha.conform_STAR_ = (function cljs$spec$alpha$conform_STAR_(spec,x){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$conform_STAR_$arity$2 == null)))))){ return spec.cljs$spec$alpha$Spec$conform_STAR_$arity$2(spec,x); } else { var x__4487__auto__ = (((spec == null))?null:spec); var m__4488__auto__ = (cljs.spec.alpha.conform_STAR_[goog.typeOf(x__4487__auto__)]); if((!((m__4488__auto__ == null)))){ return (m__4488__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4488__auto__.cljs$core$IFn$_invoke$arity$2(spec,x) : m__4488__auto__.call(null,spec,x)); } else { var m__4485__auto__ = (cljs.spec.alpha.conform_STAR_["_"]); if((!((m__4485__auto__ == null)))){ return (m__4485__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4485__auto__.cljs$core$IFn$_invoke$arity$2(spec,x) : m__4485__auto__.call(null,spec,x)); } else { throw cljs.core.missing_protocol("Spec.conform*",spec); } } } }); cljs.spec.alpha.unform_STAR_ = (function cljs$spec$alpha$unform_STAR_(spec,y){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$unform_STAR_$arity$2 == null)))))){ return spec.cljs$spec$alpha$Spec$unform_STAR_$arity$2(spec,y); } else { var x__4487__auto__ = (((spec == null))?null:spec); var m__4488__auto__ = (cljs.spec.alpha.unform_STAR_[goog.typeOf(x__4487__auto__)]); if((!((m__4488__auto__ == null)))){ return (m__4488__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4488__auto__.cljs$core$IFn$_invoke$arity$2(spec,y) : m__4488__auto__.call(null,spec,y)); } else { var m__4485__auto__ = (cljs.spec.alpha.unform_STAR_["_"]); if((!((m__4485__auto__ == null)))){ return (m__4485__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4485__auto__.cljs$core$IFn$_invoke$arity$2(spec,y) : m__4485__auto__.call(null,spec,y)); } else { throw cljs.core.missing_protocol("Spec.unform*",spec); } } } }); cljs.spec.alpha.explain_STAR_ = (function cljs$spec$alpha$explain_STAR_(spec,path,via,in$,x){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$explain_STAR_$arity$5 == null)))))){ return spec.cljs$spec$alpha$Spec$explain_STAR_$arity$5(spec,path,via,in$,x); } else { var x__4487__auto__ = (((spec == null))?null:spec); var m__4488__auto__ = (cljs.spec.alpha.explain_STAR_[goog.typeOf(x__4487__auto__)]); if((!((m__4488__auto__ == null)))){ return (m__4488__auto__.cljs$core$IFn$_invoke$arity$5 ? m__4488__auto__.cljs$core$IFn$_invoke$arity$5(spec,path,via,in$,x) : m__4488__auto__.call(null,spec,path,via,in$,x)); } else { var m__4485__auto__ = (cljs.spec.alpha.explain_STAR_["_"]); if((!((m__4485__auto__ == null)))){ return (m__4485__auto__.cljs$core$IFn$_invoke$arity$5 ? m__4485__auto__.cljs$core$IFn$_invoke$arity$5(spec,path,via,in$,x) : m__4485__auto__.call(null,spec,path,via,in$,x)); } else { throw cljs.core.missing_protocol("Spec.explain*",spec); } } } }); cljs.spec.alpha.gen_STAR_ = (function cljs$spec$alpha$gen_STAR_(spec,overrides,path,rmap){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$gen_STAR_$arity$4 == null)))))){ return spec.cljs$spec$alpha$Spec$gen_STAR_$arity$4(spec,overrides,path,rmap); } else { var x__4487__auto__ = (((spec == null))?null:spec); var m__4488__auto__ = (cljs.spec.alpha.gen_STAR_[goog.typeOf(x__4487__auto__)]); if((!((m__4488__auto__ == null)))){ return (m__4488__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4488__auto__.cljs$core$IFn$_invoke$arity$4(spec,overrides,path,rmap) : m__4488__auto__.call(null,spec,overrides,path,rmap)); } else { var m__4485__auto__ = (cljs.spec.alpha.gen_STAR_["_"]); if((!((m__4485__auto__ == null)))){ return (m__4485__auto__.cljs$core$IFn$_invoke$arity$4 ? m__4485__auto__.cljs$core$IFn$_invoke$arity$4(spec,overrides,path,rmap) : m__4485__auto__.call(null,spec,overrides,path,rmap)); } else { throw cljs.core.missing_protocol("Spec.gen*",spec); } } } }); cljs.spec.alpha.with_gen_STAR_ = (function cljs$spec$alpha$with_gen_STAR_(spec,gfn){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2 == null)))))){ return spec.cljs$spec$alpha$Spec$with_gen_STAR_$arity$2(spec,gfn); } else { var x__4487__auto__ = (((spec == null))?null:spec); var m__4488__auto__ = (cljs.spec.alpha.with_gen_STAR_[goog.typeOf(x__4487__auto__)]); if((!((m__4488__auto__ == null)))){ return (m__4488__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4488__auto__.cljs$core$IFn$_invoke$arity$2(spec,gfn) : m__4488__auto__.call(null,spec,gfn)); } else { var m__4485__auto__ = (cljs.spec.alpha.with_gen_STAR_["_"]); if((!((m__4485__auto__ == null)))){ return (m__4485__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4485__auto__.cljs$core$IFn$_invoke$arity$2(spec,gfn) : m__4485__auto__.call(null,spec,gfn)); } else { throw cljs.core.missing_protocol("Spec.with-gen*",spec); } } } }); cljs.spec.alpha.describe_STAR_ = (function cljs$spec$alpha$describe_STAR_(spec){ if((((!((spec == null)))) && ((!((spec.cljs$spec$alpha$Spec$describe_STAR_$arity$1 == null)))))){ return spec.cljs$spec$alpha$Spec$describe_STAR_$arity$1(spec); } else { var x__4487__auto__ = (((spec == null))?null:spec); var m__4488__auto__ = (cljs.spec.alpha.describe_STAR_[goog.typeOf(x__4487__auto__)]); if((!((m__4488__auto__ == null)))){ return (m__4488__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4488__auto__.cljs$core$IFn$_invoke$arity$1(spec) : m__4488__auto__.call(null,spec)); } else { var m__4485__auto__ = (cljs.spec.alpha.describe_STAR_["_"]); if((!((m__4485__auto__ == null)))){ return (m__4485__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4485__auto__.cljs$core$IFn$_invoke$arity$1(spec) : m__4485__auto__.call(null,spec)); } else { throw cljs.core.missing_protocol("Spec.describe*",spec); } } } }); if((typeof cljs !== 'undefined') && (typeof cljs.spec !== 'undefined') && (typeof cljs.spec.alpha !== 'undefined') && (typeof cljs.spec.alpha.registry_ref !== 'undefined')){ } else { cljs.spec.alpha.registry_ref = cljs.core.atom.cljs$core$IFn$_invoke$arity$1(cljs.core.PersistentArrayMap.EMPTY); } cljs.spec.alpha.deep_resolve = (function cljs$spec$alpha$deep_resolve(reg,k){ var spec = k; while(true){ if(cljs.core.ident_QMARK_(spec)){ var G__31711 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(reg,spec); spec = G__31711; continue; } else { return spec; } break; } }); /** * returns the spec/regex at end of alias chain starting with k, nil if not found, k if k not ident */ cljs.spec.alpha.reg_resolve = (function cljs$spec$alpha$reg_resolve(k){ if(cljs.core.ident_QMARK_(k)){ var reg = cljs.core.deref(cljs.spec.alpha.registry_ref); var spec = cljs.core.get.cljs$core$IFn$_invoke$arity$2(reg,k); if((!(cljs.core.ident_QMARK_(spec)))){ return spec; } else { return cljs.spec.alpha.deep_resolve(reg,spec); } } else { return k; } }); /** * returns the spec/regex at end of alias chain starting with k, throws if not found, k if k not ident */ cljs.spec.alpha.reg_resolve_BANG_ = (function cljs$spec$alpha$reg_resolve_BANG_(k){ if(cljs.core.ident_QMARK_(k)){ var or__4185__auto__ = cljs.spec.alpha.reg_resolve(k); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { throw (new Error(["Unable to resolve spec: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(k)].join(''))); } } else { return k; } }); /** * returns x if x is a spec object, else logical false */ cljs.spec.alpha.spec_QMARK_ = (function cljs$spec$alpha$spec_QMARK_(x){ if((((!((x == null))))?((((false) || ((cljs.core.PROTOCOL_SENTINEL === x.cljs$spec$alpha$Spec$))))?true:false):false)){ return x; } else { return null; } }); /** * returns x if x is a (cljs.spec.alpha) regex op, else logical false */ cljs.spec.alpha.regex_QMARK_ = (function cljs$spec$alpha$regex_QMARK_(x){ var and__4174__auto__ = new cljs.core.Keyword("cljs.spec.alpha","op","cljs.spec.alpha/op",-1269055252).cljs$core$IFn$_invoke$arity$1(x); if(cljs.core.truth_(and__4174__auto__)){ return x; } else { return and__4174__auto__; } }); cljs.spec.alpha.with_name = (function cljs$spec$alpha$with_name(spec,name){ if(cljs.core.ident_QMARK_(spec)){ return spec; } else { if(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(spec))){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(spec,new cljs.core.Keyword("cljs.spec.alpha","name","cljs.spec.alpha/name",205233570),name); } else { if((((!((spec == null))))?(((((spec.cljs$lang$protocol_mask$partition0$ & (131072))) || ((cljs.core.PROTOCOL_SENTINEL === spec.cljs$core$IMeta$))))?true:false):false)){ return cljs.core.with_meta(spec,cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.core.meta(spec),new cljs.core.Keyword("cljs.spec.alpha","name","cljs.spec.alpha/name",205233570),name)); } else { return null; } } } }); cljs.spec.alpha.spec_name = (function cljs$spec$alpha$spec_name(spec){ if(cljs.core.ident_QMARK_(spec)){ return spec; } else { if(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(spec))){ return new cljs.core.Keyword("cljs.spec.alpha","name","cljs.spec.alpha/name",205233570).cljs$core$IFn$_invoke$arity$1(spec); } else { if((((!((spec == null))))?(((((spec.cljs$lang$protocol_mask$partition0$ & (131072))) || ((cljs.core.PROTOCOL_SENTINEL === spec.cljs$core$IMeta$))))?true:false):false)){ return new cljs.core.Keyword("cljs.spec.alpha","name","cljs.spec.alpha/name",205233570).cljs$core$IFn$_invoke$arity$1(cljs.core.meta(spec)); } else { return null; } } } }); /** * spec-or-k must be a spec, regex or resolvable kw/sym, else returns nil. */ cljs.spec.alpha.maybe_spec = (function cljs$spec$alpha$maybe_spec(spec_or_k){ var s = (function (){var or__4185__auto__ = ((cljs.core.ident_QMARK_(spec_or_k))?cljs.spec.alpha.reg_resolve(spec_or_k):false); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { var or__4185__auto____$1 = cljs.spec.alpha.spec_QMARK_(spec_or_k); if(cljs.core.truth_(or__4185__auto____$1)){ return or__4185__auto____$1; } else { var or__4185__auto____$2 = cljs.spec.alpha.regex_QMARK_(spec_or_k); if(cljs.core.truth_(or__4185__auto____$2)){ return or__4185__auto____$2; } else { return null; } } } })(); if(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(s))){ return cljs.spec.alpha.with_name(cljs.spec.alpha.regex_spec_impl(s,null),cljs.spec.alpha.spec_name(s)); } else { return s; } }); /** * spec-or-k must be a spec, regex or kw/sym, else returns nil. Throws if unresolvable kw/sym */ cljs.spec.alpha.the_spec = (function cljs$spec$alpha$the_spec(spec_or_k){ var or__4185__auto__ = cljs.spec.alpha.maybe_spec(spec_or_k); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { if(cljs.core.ident_QMARK_(spec_or_k)){ throw (new Error(["Unable to resolve spec: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(spec_or_k)].join(''))); } else { return null; } } }); cljs.spec.alpha.fn_sym = (function cljs$spec$alpha$fn_sym(f_n){ if(clojure.string.blank_QMARK_(f_n)){ return null; } else { var xs = cljs.core.map.cljs$core$IFn$_invoke$arity$2(cljs.core.demunge,clojure.string.split.cljs$core$IFn$_invoke$arity$2(f_n,"$")); if(((((2) <= cljs.core.count(xs))) && (cljs.core.every_QMARK_((function (p1__30693_SHARP_){ return (!(clojure.string.blank_QMARK_(p1__30693_SHARP_))); }),xs)))){ var vec__30697 = cljs.core.juxt.cljs$core$IFn$_invoke$arity$2(cljs.core.butlast,cljs.core.last)(xs); var xs__$1 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30697,(0),null); var y = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30697,(1),null); return cljs.core.symbol.cljs$core$IFn$_invoke$arity$1([clojure.string.join.cljs$core$IFn$_invoke$arity$2(".",xs__$1),"/",cljs.core.str.cljs$core$IFn$_invoke$arity$1(y)].join('')); } else { return null; } } }); /** * @interface */ cljs.spec.alpha.Specize = function(){}; cljs.spec.alpha.specize_STAR_ = (function cljs$spec$alpha$specize_STAR_(var_args){ var G__30705 = arguments.length; switch (G__30705) { case 1: return cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$1 = (function (_){ if((((!((_ == null)))) && ((!((_.cljs$spec$alpha$Specize$specize_STAR_$arity$1 == null)))))){ return _.cljs$spec$alpha$Specize$specize_STAR_$arity$1(_); } else { var x__4487__auto__ = (((_ == null))?null:_); var m__4488__auto__ = (cljs.spec.alpha.specize_STAR_[goog.typeOf(x__4487__auto__)]); if((!((m__4488__auto__ == null)))){ return (m__4488__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4488__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4488__auto__.call(null,_)); } else { var m__4485__auto__ = (cljs.spec.alpha.specize_STAR_["_"]); if((!((m__4485__auto__ == null)))){ return (m__4485__auto__.cljs$core$IFn$_invoke$arity$1 ? m__4485__auto__.cljs$core$IFn$_invoke$arity$1(_) : m__4485__auto__.call(null,_)); } else { throw cljs.core.missing_protocol("Specize.specize*",_); } } } })); (cljs.spec.alpha.specize_STAR_.cljs$core$IFn$_invoke$arity$2 = (function (_,form){ if((((!((_ == null)))) && ((!((_.cljs$spec$alpha$Specize$specize_STAR_$arity$2 == null)))))){ return _.cljs$spec$alpha$Specize$specize_STAR_$arity$2(_,form); } else { var x__4487__auto__ = (((_ == null))?null:_); var m__4488__auto__ = (cljs.spec.alpha.specize_STAR_[goog.typeOf(x__4487__auto__)]); if((!((m__4488__auto__ == null)))){ return (m__4488__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4488__auto__.cljs$core$IFn$_invoke$arity$2(_,form) : m__4488__auto__.call(null,_,form)); } else { var m__4485__auto__ = (cljs.spec.alpha.specize_STAR_["_"]); if((!((m__4485__auto__ == null)))){ return (m__4485__auto__.cljs$core$IFn$_invoke$arity$2 ? m__4485__auto__.cljs$core$IFn$_invoke$arity$2(_,form) : m__4485__auto__.call(null,_,form)); } else { throw cljs.core.missing_protocol("Specize.specize*",_); } } } })); (cljs.spec.alpha.specize_STAR_.cljs$lang$maxFixedArity = 2); (cljs.core.Keyword.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.core.Keyword.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (k){ var k__$1 = this; return cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(k__$1)); })); (cljs.core.Keyword.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (k,_){ var k__$1 = this; return cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(k__$1)); })); (cljs.core.Symbol.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.core.Symbol.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var s__$1 = this; return cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(s__$1)); })); (cljs.core.Symbol.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,_){ var s__$1 = this; return cljs.spec.alpha.specize_STAR_(cljs.spec.alpha.reg_resolve_BANG_(s__$1)); })); (cljs.core.PersistentHashSet.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.core.PersistentHashSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var s__$1 = this; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(s__$1,s__$1,null,null); })); (cljs.core.PersistentHashSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,form){ var s__$1 = this; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,s__$1,null,null); })); (cljs.core.PersistentTreeSet.prototype.cljs$spec$alpha$Specize$ = cljs.core.PROTOCOL_SENTINEL); (cljs.core.PersistentTreeSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$1 = (function (s){ var s__$1 = this; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(s__$1,s__$1,null,null); })); (cljs.core.PersistentTreeSet.prototype.cljs$spec$alpha$Specize$specize_STAR_$arity$2 = (function (s,form){ var s__$1 = this; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,s__$1,null,null); })); goog.object.set(cljs.spec.alpha.Specize,"_",true); goog.object.set(cljs.spec.alpha.specize_STAR_,"_",(function() { var G__31726 = null; var G__31726__1 = (function (o){ var temp__5733__auto__ = ((cljs.core.fn_QMARK_(o))?cljs.spec.alpha.fn_sym(o.name):false); if(cljs.core.truth_(temp__5733__auto__)){ var f_n = temp__5733__auto__; return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(f_n,o,null,null); } else { return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(new cljs.core.Keyword("cljs.spec.alpha","unknown","cljs.spec.alpha/unknown",651034818),o,null,null); } }); var G__31726__2 = (function (o,form){ return cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,o,null,null); }); G__31726 = function(o,form){ switch(arguments.length){ case 1: return G__31726__1.call(this,o); case 2: return G__31726__2.call(this,o,form); } throw(new Error('Invalid arity: ' + arguments.length)); }; G__31726.cljs$core$IFn$_invoke$arity$1 = G__31726__1; G__31726.cljs$core$IFn$_invoke$arity$2 = G__31726__2; return G__31726; })() ); cljs.spec.alpha.specize = (function cljs$spec$alpha$specize(var_args){ var G__30720 = arguments.length; switch (G__30720) { case 1: return cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1 = (function (s){ var or__4185__auto__ = cljs.spec.alpha.spec_QMARK_(s); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { return cljs.spec.alpha.specize_STAR_(s); } })); (cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$2 = (function (s,form){ var or__4185__auto__ = cljs.spec.alpha.spec_QMARK_(s); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { return cljs.spec.alpha.specize_STAR_(s,form); } })); (cljs.spec.alpha.specize.cljs$lang$maxFixedArity = 2); /** * tests the validity of a conform return value */ cljs.spec.alpha.invalid_QMARK_ = (function cljs$spec$alpha$invalid_QMARK_(ret){ return cljs.core.keyword_identical_QMARK_(new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119),ret); }); /** * Given a spec and a value, returns :cljs.spec.alpha/invalid if value does * not match spec, else the (possibly destructured) value. */ cljs.spec.alpha.conform = (function cljs$spec$alpha$conform(spec,x){ return cljs.spec.alpha.conform_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec),x); }); /** * Given a spec and a value created by or compliant with a call to * 'conform' with the same spec, returns a value with all conform * destructuring undone. */ cljs.spec.alpha.unform = (function cljs$spec$alpha$unform(spec,x){ return cljs.spec.alpha.unform_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec),x); }); /** * returns the spec as data */ cljs.spec.alpha.form = (function cljs$spec$alpha$form(spec){ return cljs.spec.alpha.describe_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec)); }); cljs.spec.alpha.abbrev = (function cljs$spec$alpha$abbrev(form){ if(cljs.core.seq_QMARK_(form)){ return clojure.walk.postwalk((function (form__$1){ if(cljs.core.truth_((((form__$1 instanceof cljs.core.Symbol))?cljs.core.namespace(form__$1):false))){ return cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(form__$1)); } else { if(((cljs.core.seq_QMARK_(form__$1)) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.Symbol(null,"fn","fn",465265323,null),cljs.core.first(form__$1))) && (cljs.core._EQ_.cljs$core$IFn$_invoke$arity$2(new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"%","%",-950237169,null)], null),cljs.core.second(form__$1))))){ return cljs.core.last(form__$1); } else { return form__$1; } } }),form); } else { if(cljs.core.truth_((((form instanceof cljs.core.Symbol))?cljs.core.namespace(form):false))){ return cljs.core.symbol.cljs$core$IFn$_invoke$arity$1(cljs.core.name(form)); } else { return form; } } }); /** * returns an abbreviated description of the spec as data */ cljs.spec.alpha.describe = (function cljs$spec$alpha$describe(spec){ return cljs.spec.alpha.abbrev(cljs.spec.alpha.form(spec)); }); /** * Takes a spec and a no-arg, generator-returning fn and returns a version of that spec that uses that generator */ cljs.spec.alpha.with_gen = (function cljs$spec$alpha$with_gen(spec,gen_fn){ var spec__$1 = cljs.spec.alpha.reg_resolve(spec); if(cljs.core.truth_(cljs.spec.alpha.regex_QMARK_(spec__$1))){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(spec__$1,new cljs.core.Keyword("cljs.spec.alpha","gfn","cljs.spec.alpha/gfn",-593120375),gen_fn); } else { return cljs.spec.alpha.with_gen_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec__$1),gen_fn); } }); cljs.spec.alpha.explain_data_STAR_ = (function cljs$spec$alpha$explain_data_STAR_(spec,path,via,in$,x){ var temp__5735__auto__ = cljs.spec.alpha.explain_STAR_(cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec),path,via,in$,x); if(cljs.core.truth_(temp__5735__auto__)){ var probs = temp__5735__auto__; if(cljs.core.empty_QMARK_(probs)){ return null; } else { return new cljs.core.PersistentArrayMap(null, 3, [new cljs.core.Keyword("cljs.spec.alpha","problems","cljs.spec.alpha/problems",447400814),probs,new cljs.core.Keyword("cljs.spec.alpha","spec","cljs.spec.alpha/spec",1947137578),spec,new cljs.core.Keyword("cljs.spec.alpha","value","cljs.spec.alpha/value",1974786274),x], null); } } else { return null; } }); /** * Given a spec and a value x which ought to conform, returns nil if x * conforms, else a map with at least the key ::problems whose value is * a collection of problem-maps, where problem-map has at least :path :pred and :val * keys describing the predicate and the value that failed at that * path. */ cljs.spec.alpha.explain_data = (function cljs$spec$alpha$explain_data(spec,x){ return cljs.spec.alpha.explain_data_STAR_(spec,cljs.core.PersistentVector.EMPTY,(function (){var temp__5733__auto__ = cljs.spec.alpha.spec_name(spec); if(cljs.core.truth_(temp__5733__auto__)){ var name = temp__5733__auto__; return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [name], null); } else { return cljs.core.PersistentVector.EMPTY; } })(),cljs.core.PersistentVector.EMPTY,x); }); /** * Default printer for explain-data. nil indicates a successful validation. */ cljs.spec.alpha.explain_printer = (function cljs$spec$alpha$explain_printer(ed){ if(cljs.core.truth_(ed)){ var problems = cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2((function (p1__30725_SHARP_){ return (- cljs.core.count(new cljs.core.Keyword(null,"path","path",-188191168).cljs$core$IFn$_invoke$arity$1(p1__30725_SHARP_))); }),cljs.core.sort_by.cljs$core$IFn$_invoke$arity$2((function (p1__30724_SHARP_){ return (- cljs.core.count(new cljs.core.Keyword(null,"in","in",-1531184865).cljs$core$IFn$_invoke$arity$1(p1__30724_SHARP_))); }),new cljs.core.Keyword("cljs.spec.alpha","problems","cljs.spec.alpha/problems",447400814).cljs$core$IFn$_invoke$arity$1(ed))); return cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (){var sb__4720__auto__ = (new goog.string.StringBuffer()); var _STAR_print_newline_STAR__orig_val__30726_31764 = cljs.core._STAR_print_newline_STAR_; var _STAR_print_fn_STAR__orig_val__30727_31765 = cljs.core._STAR_print_fn_STAR_; var _STAR_print_newline_STAR__temp_val__30728_31766 = true; var _STAR_print_fn_STAR__temp_val__30729_31767 = (function (x__4721__auto__){ return sb__4720__auto__.append(x__4721__auto__); }); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__temp_val__30728_31766); (cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__temp_val__30729_31767); try{var seq__30731_31774 = cljs.core.seq(problems); var chunk__30732_31775 = null; var count__30733_31776 = (0); var i__30734_31777 = (0); while(true){ if((i__30734_31777 < count__30733_31776)){ var map__30807_31778 = chunk__30732_31775.cljs$core$IIndexed$_nth$arity$2(null,i__30734_31777); var map__30807_31779__$1 = (((((!((map__30807_31778 == null))))?(((((map__30807_31778.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__30807_31778.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__30807_31778):map__30807_31778); var prob_31780 = map__30807_31779__$1; var path_31782 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30807_31779__$1,new cljs.core.Keyword(null,"path","path",-188191168)); var pred_31783 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30807_31779__$1,new cljs.core.Keyword(null,"pred","pred",1927423397)); var val_31784 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30807_31779__$1,new cljs.core.Keyword(null,"val","val",128701612)); var reason_31787 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30807_31779__$1,new cljs.core.Keyword(null,"reason","reason",-2070751759)); var via_31790 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30807_31779__$1,new cljs.core.Keyword(null,"via","via",-1904457336)); var in_31791 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30807_31779__$1,new cljs.core.Keyword(null,"in","in",-1531184865)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([val_31784], 0)); cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" - failed: "], 0)); if(cljs.core.truth_(reason_31787)){ cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([reason_31787], 0)); } else { cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.abbrev(pred_31783)], 0)); } if(cljs.core.empty_QMARK_(in_31791)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" in: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([in_31791], 0))].join('')], 0)); } if(cljs.core.empty_QMARK_(path_31782)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" at: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_31782], 0))].join('')], 0)); } if(cljs.core.empty_QMARK_(via_31790)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" spec: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.last(via_31790)], 0))].join('')], 0)); } var seq__30812_31806 = cljs.core.seq(prob_31780); var chunk__30813_31807 = null; var count__30814_31808 = (0); var i__30815_31809 = (0); while(true){ if((i__30815_31809 < count__30814_31808)){ var vec__30828_31810 = chunk__30813_31807.cljs$core$IIndexed$_nth$arity$2(null,i__30815_31809); var k_31811 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30828_31810,(0),null); var v_31812 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30828_31810,(1),null); if(cljs.core.truth_((function (){var fexpr__30831 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),null,new cljs.core.Keyword(null,"pred","pred",1927423397),null,new cljs.core.Keyword(null,"via","via",-1904457336),null,new cljs.core.Keyword(null,"val","val",128701612),null,new cljs.core.Keyword(null,"reason","reason",-2070751759),null,new cljs.core.Keyword(null,"in","in",-1531184865),null], null), null); return (fexpr__30831.cljs$core$IFn$_invoke$arity$1 ? fexpr__30831.cljs$core$IFn$_invoke$arity$1(k_31811) : fexpr__30831.call(null,k_31811)); })())){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["\n\t",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_31811], 0))," "], 0)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_31812], 0)); } var G__31828 = seq__30812_31806; var G__31829 = chunk__30813_31807; var G__31830 = count__30814_31808; var G__31831 = (i__30815_31809 + (1)); seq__30812_31806 = G__31828; chunk__30813_31807 = G__31829; count__30814_31808 = G__31830; i__30815_31809 = G__31831; continue; } else { var temp__5735__auto___31833 = cljs.core.seq(seq__30812_31806); if(temp__5735__auto___31833){ var seq__30812_31839__$1 = temp__5735__auto___31833; if(cljs.core.chunked_seq_QMARK_(seq__30812_31839__$1)){ var c__4609__auto___31840 = cljs.core.chunk_first(seq__30812_31839__$1); var G__31841 = cljs.core.chunk_rest(seq__30812_31839__$1); var G__31842 = c__4609__auto___31840; var G__31843 = cljs.core.count(c__4609__auto___31840); var G__31844 = (0); seq__30812_31806 = G__31841; chunk__30813_31807 = G__31842; count__30814_31808 = G__31843; i__30815_31809 = G__31844; continue; } else { var vec__30832_31850 = cljs.core.first(seq__30812_31839__$1); var k_31851 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30832_31850,(0),null); var v_31852 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30832_31850,(1),null); if(cljs.core.truth_((function (){var fexpr__30835 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),null,new cljs.core.Keyword(null,"pred","pred",1927423397),null,new cljs.core.Keyword(null,"via","via",-1904457336),null,new cljs.core.Keyword(null,"val","val",128701612),null,new cljs.core.Keyword(null,"reason","reason",-2070751759),null,new cljs.core.Keyword(null,"in","in",-1531184865),null], null), null); return (fexpr__30835.cljs$core$IFn$_invoke$arity$1 ? fexpr__30835.cljs$core$IFn$_invoke$arity$1(k_31851) : fexpr__30835.call(null,k_31851)); })())){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["\n\t",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_31851], 0))," "], 0)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_31852], 0)); } var G__31854 = cljs.core.next(seq__30812_31839__$1); var G__31855 = null; var G__31856 = (0); var G__31857 = (0); seq__30812_31806 = G__31854; chunk__30813_31807 = G__31855; count__30814_31808 = G__31856; i__30815_31809 = G__31857; continue; } } else { } } break; } cljs.core.newline.cljs$core$IFn$_invoke$arity$0(); var G__31858 = seq__30731_31774; var G__31859 = chunk__30732_31775; var G__31860 = count__30733_31776; var G__31861 = (i__30734_31777 + (1)); seq__30731_31774 = G__31858; chunk__30732_31775 = G__31859; count__30733_31776 = G__31860; i__30734_31777 = G__31861; continue; } else { var temp__5735__auto___31862 = cljs.core.seq(seq__30731_31774); if(temp__5735__auto___31862){ var seq__30731_31863__$1 = temp__5735__auto___31862; if(cljs.core.chunked_seq_QMARK_(seq__30731_31863__$1)){ var c__4609__auto___31864 = cljs.core.chunk_first(seq__30731_31863__$1); var G__31865 = cljs.core.chunk_rest(seq__30731_31863__$1); var G__31866 = c__4609__auto___31864; var G__31867 = cljs.core.count(c__4609__auto___31864); var G__31868 = (0); seq__30731_31774 = G__31865; chunk__30732_31775 = G__31866; count__30733_31776 = G__31867; i__30734_31777 = G__31868; continue; } else { var map__30840_31929 = cljs.core.first(seq__30731_31863__$1); var map__30840_31930__$1 = (((((!((map__30840_31929 == null))))?(((((map__30840_31929.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__30840_31929.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.cljs$core$IFn$_invoke$arity$2(cljs.core.hash_map,map__30840_31929):map__30840_31929); var prob_31931 = map__30840_31930__$1; var path_31932 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30840_31930__$1,new cljs.core.Keyword(null,"path","path",-188191168)); var pred_31933 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30840_31930__$1,new cljs.core.Keyword(null,"pred","pred",1927423397)); var val_31934 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30840_31930__$1,new cljs.core.Keyword(null,"val","val",128701612)); var reason_31935 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30840_31930__$1,new cljs.core.Keyword(null,"reason","reason",-2070751759)); var via_31936 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30840_31930__$1,new cljs.core.Keyword(null,"via","via",-1904457336)); var in_31937 = cljs.core.get.cljs$core$IFn$_invoke$arity$2(map__30840_31930__$1,new cljs.core.Keyword(null,"in","in",-1531184865)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([val_31934], 0)); cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([" - failed: "], 0)); if(cljs.core.truth_(reason_31935)){ cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([reason_31935], 0)); } else { cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.spec.alpha.abbrev(pred_31933)], 0)); } if(cljs.core.empty_QMARK_(in_31937)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" in: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([in_31937], 0))].join('')], 0)); } if(cljs.core.empty_QMARK_(path_31932)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" at: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([path_31932], 0))].join('')], 0)); } if(cljs.core.empty_QMARK_(via_31936)){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([[" spec: ",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([cljs.core.last(via_31936)], 0))].join('')], 0)); } var seq__30842_31939 = cljs.core.seq(prob_31931); var chunk__30843_31940 = null; var count__30844_31941 = (0); var i__30845_31942 = (0); while(true){ if((i__30845_31942 < count__30844_31941)){ var vec__30856_31943 = chunk__30843_31940.cljs$core$IIndexed$_nth$arity$2(null,i__30845_31942); var k_31944 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30856_31943,(0),null); var v_31945 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30856_31943,(1),null); if(cljs.core.truth_((function (){var fexpr__30861 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),null,new cljs.core.Keyword(null,"pred","pred",1927423397),null,new cljs.core.Keyword(null,"via","via",-1904457336),null,new cljs.core.Keyword(null,"val","val",128701612),null,new cljs.core.Keyword(null,"reason","reason",-2070751759),null,new cljs.core.Keyword(null,"in","in",-1531184865),null], null), null); return (fexpr__30861.cljs$core$IFn$_invoke$arity$1 ? fexpr__30861.cljs$core$IFn$_invoke$arity$1(k_31944) : fexpr__30861.call(null,k_31944)); })())){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["\n\t",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_31944], 0))," "], 0)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_31945], 0)); } var G__31946 = seq__30842_31939; var G__31947 = chunk__30843_31940; var G__31948 = count__30844_31941; var G__31949 = (i__30845_31942 + (1)); seq__30842_31939 = G__31946; chunk__30843_31940 = G__31947; count__30844_31941 = G__31948; i__30845_31942 = G__31949; continue; } else { var temp__5735__auto___31950__$1 = cljs.core.seq(seq__30842_31939); if(temp__5735__auto___31950__$1){ var seq__30842_31951__$1 = temp__5735__auto___31950__$1; if(cljs.core.chunked_seq_QMARK_(seq__30842_31951__$1)){ var c__4609__auto___31952 = cljs.core.chunk_first(seq__30842_31951__$1); var G__31953 = cljs.core.chunk_rest(seq__30842_31951__$1); var G__31954 = c__4609__auto___31952; var G__31955 = cljs.core.count(c__4609__auto___31952); var G__31956 = (0); seq__30842_31939 = G__31953; chunk__30843_31940 = G__31954; count__30844_31941 = G__31955; i__30845_31942 = G__31956; continue; } else { var vec__30864_31960 = cljs.core.first(seq__30842_31951__$1); var k_31961 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30864_31960,(0),null); var v_31962 = cljs.core.nth.cljs$core$IFn$_invoke$arity$3(vec__30864_31960,(1),null); if(cljs.core.truth_((function (){var fexpr__30867 = new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 6, [new cljs.core.Keyword(null,"path","path",-188191168),null,new cljs.core.Keyword(null,"pred","pred",1927423397),null,new cljs.core.Keyword(null,"via","via",-1904457336),null,new cljs.core.Keyword(null,"val","val",128701612),null,new cljs.core.Keyword(null,"reason","reason",-2070751759),null,new cljs.core.Keyword(null,"in","in",-1531184865),null], null), null); return (fexpr__30867.cljs$core$IFn$_invoke$arity$1 ? fexpr__30867.cljs$core$IFn$_invoke$arity$1(k_31961) : fexpr__30867.call(null,k_31961)); })())){ } else { cljs.core.print.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["\n\t",cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([k_31961], 0))," "], 0)); cljs.core.pr.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([v_31962], 0)); } var G__31963 = cljs.core.next(seq__30842_31951__$1); var G__31964 = null; var G__31965 = (0); var G__31966 = (0); seq__30842_31939 = G__31963; chunk__30843_31940 = G__31964; count__30844_31941 = G__31965; i__30845_31942 = G__31966; continue; } } else { } } break; } cljs.core.newline.cljs$core$IFn$_invoke$arity$0(); var G__31967 = cljs.core.next(seq__30731_31863__$1); var G__31968 = null; var G__31969 = (0); var G__31970 = (0); seq__30731_31774 = G__31967; chunk__30732_31775 = G__31968; count__30733_31776 = G__31969; i__30734_31777 = G__31970; continue; } } else { } } break; } }finally {(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__orig_val__30727_31765); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__orig_val__30726_31764); } return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4720__auto__); })()], 0)); } else { return cljs.core.println.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2(["Success!"], 0)); } }); cljs.spec.alpha._STAR_explain_out_STAR_ = cljs.spec.alpha.explain_printer; /** * Prints explanation data (per 'explain-data') to *out* using the printer in *explain-out*, * by default explain-printer. */ cljs.spec.alpha.explain_out = (function cljs$spec$alpha$explain_out(ed){ return cljs.spec.alpha._STAR_explain_out_STAR_.call(null,ed); }); /** * Given a spec and a value that fails to conform, prints an explanation to *out*. */ cljs.spec.alpha.explain = (function cljs$spec$alpha$explain(spec,x){ return cljs.spec.alpha.explain_out(cljs.spec.alpha.explain_data(spec,x)); }); /** * Given a spec and a value that fails to conform, returns an explanation as a string. */ cljs.spec.alpha.explain_str = (function cljs$spec$alpha$explain_str(spec,x){ var sb__4720__auto__ = (new goog.string.StringBuffer()); var _STAR_print_newline_STAR__orig_val__30872_31978 = cljs.core._STAR_print_newline_STAR_; var _STAR_print_fn_STAR__orig_val__30873_31979 = cljs.core._STAR_print_fn_STAR_; var _STAR_print_newline_STAR__temp_val__30874_31980 = true; var _STAR_print_fn_STAR__temp_val__30875_31981 = (function (x__4721__auto__){ return sb__4720__auto__.append(x__4721__auto__); }); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__temp_val__30874_31980); (cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__temp_val__30875_31981); try{cljs.spec.alpha.explain(spec,x); }finally {(cljs.core._STAR_print_fn_STAR_ = _STAR_print_fn_STAR__orig_val__30873_31979); (cljs.core._STAR_print_newline_STAR_ = _STAR_print_newline_STAR__orig_val__30872_31978); } return cljs.core.str.cljs$core$IFn$_invoke$arity$1(sb__4720__auto__); }); cljs.spec.alpha.gensub = (function cljs$spec$alpha$gensub(spec,overrides,path,rmap,form){ var spec__$1 = cljs.spec.alpha.specize.cljs$core$IFn$_invoke$arity$1(spec); var temp__5733__auto__ = (function (){var or__4185__auto__ = (function (){var temp__5735__auto__ = (function (){var or__4185__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,(function (){var or__4185__auto__ = cljs.spec.alpha.spec_name(spec__$1); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { return spec__$1; } })()); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { return cljs.core.get.cljs$core$IFn$_invoke$arity$2(overrides,path); } })(); if(cljs.core.truth_(temp__5735__auto__)){ var gfn = temp__5735__auto__; return (gfn.cljs$core$IFn$_invoke$arity$0 ? gfn.cljs$core$IFn$_invoke$arity$0() : gfn.call(null)); } else { return null; } })(); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { return cljs.spec.alpha.gen_STAR_(spec__$1,overrides,path,rmap); } })(); if(cljs.core.truth_(temp__5733__auto__)){ var g = temp__5733__auto__; return cljs.spec.gen.alpha.such_that.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([(function (p1__30879_SHARP_){ return cljs.spec.alpha.valid_QMARK_.cljs$core$IFn$_invoke$arity$2(spec__$1,p1__30879_SHARP_); }),g,(100)], 0)); } else { throw (new Error(["Unable to construct gen at: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(path)," for: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.spec.alpha.abbrev(form))].join(''))); } }); /** * Given a spec, returns the generator for it, or throws if none can * be constructed. Optionally an overrides map can be provided which * should map spec names or paths (vectors of keywords) to no-arg * generator-creating fns. These will be used instead of the generators at those * names/paths. Note that parent generator (in the spec or overrides * map) will supersede those of any subtrees. A generator for a regex * op must always return a sequential collection (i.e. a generator for * s/? should return either an empty sequence/vector or a * sequence/vector with one item in it) */ cljs.spec.alpha.gen = (function cljs$spec$alpha$gen(var_args){ var G__30890 = arguments.length; switch (G__30890) { case 1: return cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); break; case 2: return cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$1 = (function (spec){ return cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2(spec,null); })); (cljs.spec.alpha.gen.cljs$core$IFn$_invoke$arity$2 = (function (spec,overrides){ return cljs.spec.alpha.gensub(spec,overrides,cljs.core.PersistentVector.EMPTY,new cljs.core.PersistentArrayMap(null, 1, [new cljs.core.Keyword("cljs.spec.alpha","recursion-limit","cljs.spec.alpha/recursion-limit",601284994),cljs.spec.alpha._STAR_recursion_limit_STAR_], null),spec); })); (cljs.spec.alpha.gen.cljs$lang$maxFixedArity = 2); /** * Do not call this directly, use 'def' */ cljs.spec.alpha.def_impl = (function cljs$spec$alpha$def_impl(k,form,spec){ if(cljs.core.truth_(((cljs.core.ident_QMARK_(k))?cljs.core.namespace(k):false))){ } else { throw (new Error(["Assert failed: ","k must be namespaced keyword or resolveable symbol","\n","(c/and (ident? k) (namespace k))"].join(''))); } if((spec == null)){ cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.registry_ref,cljs.core.dissoc,k); } else { var spec_31987__$1 = (cljs.core.truth_((function (){var or__4185__auto__ = cljs.spec.alpha.spec_QMARK_(spec); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { var or__4185__auto____$1 = cljs.spec.alpha.regex_QMARK_(spec); if(cljs.core.truth_(or__4185__auto____$1)){ return or__4185__auto____$1; } else { return cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.core.deref(cljs.spec.alpha.registry_ref),spec); } } })())?spec:cljs.spec.alpha.spec_impl.cljs$core$IFn$_invoke$arity$4(form,spec,null,null)); cljs.core.swap_BANG_.cljs$core$IFn$_invoke$arity$4(cljs.spec.alpha.registry_ref,cljs.core.assoc,k,cljs.spec.alpha.with_name(spec_31987__$1,k)); } return k; }); /** * returns the registry map, prefer 'get-spec' to lookup a spec by name */ cljs.spec.alpha.registry = (function cljs$spec$alpha$registry(){ return cljs.core.deref(cljs.spec.alpha.registry_ref); }); /** * Returns a symbol from a symbol or var */ cljs.spec.alpha.__GT_sym = (function cljs$spec$alpha$__GT_sym(x){ if(cljs.core.var_QMARK_(x)){ return x.sym; } else { return x; } }); /** * Returns spec registered for keyword/symbol/var k, or nil. */ cljs.spec.alpha.get_spec = (function cljs$spec$alpha$get_spec(k){ return cljs.core.get.cljs$core$IFn$_invoke$arity$2(cljs.spec.alpha.registry(),(((k instanceof cljs.core.Keyword))?k:cljs.spec.alpha.__GT_sym(k))); }); cljs.spec.alpha.macroexpand_check = (function cljs$spec$alpha$macroexpand_check(v,args){ var specs = cljs.spec.alpha.get_spec(v); var temp__5735__auto__ = new cljs.core.Keyword(null,"args","args",1315556576).cljs$core$IFn$_invoke$arity$1(specs); if(cljs.core.truth_(temp__5735__auto__)){ var arg_spec = temp__5735__auto__; if(cljs.spec.alpha.invalid_QMARK_(cljs.spec.alpha.conform(arg_spec,args))){ var ed = cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(cljs.spec.alpha.explain_data_STAR_(arg_spec,cljs.core.PersistentVector.EMPTY,(function (){var temp__5733__auto__ = cljs.spec.alpha.spec_name(arg_spec); if(cljs.core.truth_(temp__5733__auto__)){ var name = temp__5733__auto__; return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [name], null); } else { return cljs.core.PersistentVector.EMPTY; } })(),cljs.core.PersistentVector.EMPTY,args),new cljs.core.Keyword("cljs.spec.alpha","args","cljs.spec.alpha/args",1870769783),args); throw cljs.core.ex_info.cljs$core$IFn$_invoke$arity$2(["Call to ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.spec.alpha.__GT_sym(v))," did not conform to spec."].join(''),ed); } else { return null; } } else { return null; } }); cljs.spec.alpha.recur_limit_QMARK_ = (function cljs$spec$alpha$recur_limit_QMARK_(rmap,id,path,k){ return (((cljs.core.get.cljs$core$IFn$_invoke$arity$2(rmap,id) > new cljs.core.Keyword("cljs.spec.alpha","recursion-limit","cljs.spec.alpha/recursion-limit",601284994).cljs$core$IFn$_invoke$arity$1(rmap))) && (cljs.core.contains_QMARK_(cljs.core.set(path),k))); }); cljs.spec.alpha.inck = (function cljs$spec$alpha$inck(m,k){ return cljs.core.assoc.cljs$core$IFn$_invoke$arity$3(m,k,((function (){var or__4185__auto__ = cljs.core.get.cljs$core$IFn$_invoke$arity$2(m,k); if(cljs.core.truth_(or__4185__auto__)){ return or__4185__auto__; } else { return (0); } })() + (1))); }); cljs.spec.alpha.dt = (function cljs$spec$alpha$dt(var_args){ var G__30928 = arguments.length; switch (G__30928) { case 3: return cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)])); break; case 4: return cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4((arguments[(0)]),(arguments[(1)]),(arguments[(2)]),(arguments[(3)])); break; default: throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join(''))); } }); (cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$3 = (function (pred,x,form){ return cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4(pred,x,form,null); })); (cljs.spec.alpha.dt.cljs$core$IFn$_invoke$arity$4 = (function (pred,x,form,cpred_QMARK_){ if(cljs.core.truth_(pred)){ var temp__5733__auto__ = cljs.spec.alpha.the_spec(pred); if(cljs.core.truth_(temp__5733__auto__)){ var spec = temp__5733__auto__; return cljs.spec.alpha.conform(spec,x); } else { if(cljs.core.ifn_QMARK_(pred)){ if(cljs.core.truth_(cpred_QMARK_)){ return (pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(x) : pred.call(null,x)); } else { if(cljs.core.truth_((pred.cljs$core$IFn$_invoke$arity$1 ? pred.cljs$core$IFn$_invoke$arity$1(x) : pred.call(null,x)))){ return x; } else { return new cljs.core.Keyword("cljs.spec.alpha","invalid","cljs.spec.alpha/invalid",-1220295119); } } } else { throw (new Error([cljs.core.pr_str.cljs$core$IFn$_invoke$arity$variadic(cljs.core.prim_seq.cljs$core$IFn$_invoke$arity$2([form], 0))," is not a fn, expected predicate fn"].join(''))); } } } else { return x; } }))