@atomist/clj-editors
Version:
editor functions that use rewrite-clj and other important things from the clojurescript ecosystem
251 lines (235 loc) • 12.9 kB
JavaScript
// Compiled by ClojureScript 1.10.238 {:target :nodejs}
goog.provide('spec_tools.impl');
goog.require('cljs.core');
goog.require('cljs.analyzer.api');
goog.require('cljs.spec.alpha');
goog.require('clojure.walk');
spec_tools.impl.in_cljs_QMARK_ = (function spec_tools$impl$in_cljs_QMARK_(env){
return new cljs.core.Keyword(null,"ns","ns",441598760).cljs$core$IFn$_invoke$arity$1(env);
});
var ret__4533__auto___25521 = spec_tools.impl.resolve = (function spec_tools$impl$resolve(_AMPERSAND_form,_AMPERSAND_env,env,sym){
return cljs.core.sequence.call(null,cljs.core.seq.call(null,cljs.core.concat.call(null,(new cljs.core.List(null,new cljs.core.Symbol(null,"if","if",1181717262,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.call(null,cljs.core.seq.call(null,cljs.core.concat.call(null,(new cljs.core.List(null,new cljs.core.Symbol("spec-tools.impl","in-cljs?","spec-tools.impl/in-cljs?",-1488912435,null),null,(1),null)),(new cljs.core.List(null,env,null,(1),null))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.call(null,cljs.core.seq.call(null,cljs.core.concat.call(null,(new cljs.core.List(null,cljs.core.sequence.call(null,cljs.core.seq.call(null,cljs.core.concat.call(null,(new cljs.core.List(null,new cljs.core.Symbol("cljs.core","resolve","cljs.core/resolve",1796776582,null),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.call(null,cljs.core.seq.call(null,cljs.core.concat.call(null,(new cljs.core.List(null,new cljs.core.Symbol(null,"quote","quote",1377916282,null),null,(1),null)),(new cljs.core.List(null,new cljs.core.Symbol("cljs.analyzer.api","resolve","cljs.analyzer.api/resolve",498213843,null),null,(1),null))))),null,(1),null))))),null,(1),null)),(new cljs.core.List(null,env,null,(1),null)),(new cljs.core.List(null,sym,null,(1),null))))),null,(1),null)),(new cljs.core.List(null,cljs.core.sequence.call(null,cljs.core.seq.call(null,cljs.core.concat.call(null,(new cljs.core.List(null,new cljs.core.Symbol("cljs.core","resolve","cljs.core/resolve",1796776582,null),null,(1),null)),(new cljs.core.List(null,env,null,(1),null)),(new cljs.core.List(null,sym,null,(1),null))))),null,(1),null)))));
});
spec_tools.impl.resolve.cljs$lang$macro = true;
spec_tools.impl.cljs_sym = (function spec_tools$impl$cljs_sym(x){
if(cljs.core.map_QMARK_.call(null,x)){
return new cljs.core.Keyword(null,"name","name",1843675177).cljs$core$IFn$_invoke$arity$1(x);
} else {
return x;
}
});
spec_tools.impl.clj_sym = (function spec_tools$impl$clj_sym(x){
if(cljs.core.var_QMARK_.call(null,x)){
var v = x;
return cljs.core.symbol.call(null,[cljs.core.str.cljs$core$IFn$_invoke$arity$1(v.ns().name())].join(''),[cljs.core.str.cljs$core$IFn$_invoke$arity$1(v.sym())].join(''));
} else {
return x;
}
});
spec_tools.impl.__GT_sym = (function spec_tools$impl$__GT_sym(x){
return spec_tools.impl.cljs_sym.call(null,x);
});
spec_tools.impl.unfn = (function spec_tools$impl$unfn(cljs_QMARK_,expr){
if(((cljs.core.seq_QMARK_.call(null,expr)) && ((cljs.core.first.call(null,expr) instanceof cljs.core.Symbol)) && (cljs.core._EQ_.call(null,"fn*",cljs.core.name.call(null,cljs.core.first.call(null,expr)))))){
var vec__25522 = cljs.core.rest.call(null,expr);
var seq__25523 = cljs.core.seq.call(null,vec__25522);
var first__25524 = cljs.core.first.call(null,seq__25523);
var seq__25523__$1 = cljs.core.next.call(null,seq__25523);
var vec__25525 = first__25524;
var s = cljs.core.nth.call(null,vec__25525,(0),null);
var form = seq__25523__$1;
return cljs.core.conj.call(null,clojure.walk.postwalk_replace.call(null,cljs.core.PersistentArrayMap.createAsIfByAssoc([s,new cljs.core.Symbol(null,"%","%",-950237169,null)]),form),new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"%","%",-950237169,null)], null),(cljs.core.truth_(cljs_QMARK_)?new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null):new cljs.core.Symbol("clojure.core","fn","clojure.core/fn",-980152636,null)));
} else {
return expr;
}
});
spec_tools.impl.polish = (function spec_tools$impl$polish(x){
if(cljs.core.seq_QMARK_.call(null,x)){
return cljs.core.flatten.call(null,cljs.core.keep.call(null,spec_tools.impl.polish,x));
} else {
if((x instanceof cljs.core.Symbol)){
return null;
} else {
return x;
}
}
});
spec_tools.impl.polish_un = (function spec_tools$impl$polish_un(x){
var G__25528 = x;
var G__25528__$1 = (((G__25528 == null))?null:spec_tools.impl.polish.call(null,G__25528));
var G__25528__$2 = (((G__25528__$1 == null))?null:cljs.core.name.call(null,G__25528__$1));
if((G__25528__$2 == null)){
return null;
} else {
return cljs.core.keyword.call(null,G__25528__$2);
}
});
spec_tools.impl.parse_keys = (function spec_tools$impl$parse_keys(form){
var m = (function (){var G__25532 = form;
var G__25532__$1 = (((G__25532 == null))?null:cljs.core.rest.call(null,G__25532));
if((G__25532__$1 == null)){
return null;
} else {
return cljs.core.apply.call(null,cljs.core.hash_map,G__25532__$1);
}
})();
var G__25533 = m;
var G__25533__$1 = (cljs.core.truth_(new cljs.core.Keyword(null,"req","req",-326448303).cljs$core$IFn$_invoke$arity$1(m))?cljs.core.update.call(null,G__25533,new cljs.core.Keyword(null,"req","req",-326448303),((function (G__25533,m){
return (function (p1__25529_SHARP_){
return cljs.core.into.call(null,cljs.core.PersistentVector.EMPTY,cljs.core.keep.call(null,spec_tools.impl.polish,cljs.core.flatten.call(null,p1__25529_SHARP_)));
});})(G__25533,m))
):G__25533);
var G__25533__$2 = (cljs.core.truth_(new cljs.core.Keyword(null,"req-un","req-un",1074571008).cljs$core$IFn$_invoke$arity$1(m))?cljs.core.update.call(null,G__25533__$1,new cljs.core.Keyword(null,"req-un","req-un",1074571008),((function (G__25533,G__25533__$1,m){
return (function (p1__25530_SHARP_){
return cljs.core.into.call(null,cljs.core.PersistentVector.EMPTY,cljs.core.keep.call(null,spec_tools.impl.polish_un,cljs.core.flatten.call(null,p1__25530_SHARP_)));
});})(G__25533,G__25533__$1,m))
):G__25533__$1);
if(cljs.core.truth_(new cljs.core.Keyword(null,"opt-un","opt-un",883442496).cljs$core$IFn$_invoke$arity$1(m))){
return cljs.core.update.call(null,G__25533__$2,new cljs.core.Keyword(null,"opt-un","opt-un",883442496),((function (G__25533,G__25533__$1,G__25533__$2,m){
return (function (p1__25531_SHARP_){
return cljs.core.into.call(null,cljs.core.PersistentVector.EMPTY,cljs.core.keep.call(null,spec_tools.impl.polish_un,p1__25531_SHARP_));
});})(G__25533,G__25533__$1,G__25533__$2,m))
);
} else {
return G__25533__$2;
}
});
spec_tools.impl.extract_keys = (function spec_tools$impl$extract_keys(form){
var map__25534 = (function (){var G__25535 = form;
var G__25535__$1 = (((G__25535 == null))?null:cljs.core.rest.call(null,G__25535));
if((G__25535__$1 == null)){
return null;
} else {
return cljs.core.apply.call(null,cljs.core.hash_map,G__25535__$1);
}
})();
var map__25534__$1 = ((((!((map__25534 == null)))?(((((map__25534.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__25534.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__25534):map__25534);
var req = cljs.core.get.call(null,map__25534__$1,new cljs.core.Keyword(null,"req","req",-326448303));
var opt = cljs.core.get.call(null,map__25534__$1,new cljs.core.Keyword(null,"opt","opt",-794706369));
var req_un = cljs.core.get.call(null,map__25534__$1,new cljs.core.Keyword(null,"req-un","req-un",1074571008));
var opt_un = cljs.core.get.call(null,map__25534__$1,new cljs.core.Keyword(null,"opt-un","opt-un",883442496));
return cljs.core.flatten.call(null,cljs.core.map.call(null,spec_tools.impl.polish,cljs.core.concat.call(null,req,opt,req_un,opt_un)));
});
spec_tools.impl.extract_pred_and_info = (function spec_tools$impl$extract_pred_and_info(x){
if(cljs.core.map_QMARK_.call(null,x)){
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"spec","spec",347520401).cljs$core$IFn$_invoke$arity$1(x),cljs.core.dissoc.call(null,x,new cljs.core.Keyword(null,"spec","spec",347520401))], null);
} else {
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [x,cljs.core.PersistentArrayMap.EMPTY], null);
}
});
spec_tools.impl.strip_fn_if_needed = (function spec_tools$impl$strip_fn_if_needed(form){
var head = cljs.core.first.call(null,form);
if(((cljs.core._EQ_.call(null,cljs.core.count.call(null,form),(3))) && (cljs.core._EQ_.call(null,head,new cljs.core.Symbol("cljs.core","fn","cljs.core/fn",-1065745098,null))))){
return cljs.core.nth.call(null,form,(2));
} else {
return form;
}
});
spec_tools.impl.normalize_symbol = (function spec_tools$impl$normalize_symbol(kw){
var G__25537 = (function (){var and__3911__auto__ = (kw instanceof cljs.core.Symbol);
if(and__3911__auto__){
return cljs.core.namespace.call(null,kw);
} else {
return and__3911__auto__;
}
})();
switch (G__25537) {
case "spec-tools.spec":
return cljs.core.symbol.call(null,"clojure.core",cljs.core.name.call(null,kw));
break;
case "cljs.core":
return cljs.core.symbol.call(null,"clojure.core",cljs.core.name.call(null,kw));
break;
case "cljs.spec.alpha":
return cljs.core.symbol.call(null,"clojure.spec.alpha",cljs.core.name.call(null,kw));
break;
default:
return kw;
}
});
spec_tools.impl.extract_form = (function spec_tools$impl$extract_form(spec){
if(cljs.core.seq_QMARK_.call(null,spec)){
return spec;
} else {
return cljs.spec.alpha.form.call(null,spec);
}
});
spec_tools.impl.qualified_name = (function spec_tools$impl$qualified_name(key){
if(cljs.core.truth_(key)){
var temp__5455__auto__ = cljs.core.namespace.call(null,key);
if(cljs.core.truth_(temp__5455__auto__)){
var nn = temp__5455__auto__;
return [cljs.core.str.cljs$core$IFn$_invoke$arity$1(nn),"/",cljs.core.str.cljs$core$IFn$_invoke$arity$1(cljs.core.name.call(null,key))].join('');
} else {
return cljs.core.name.call(null,key);
}
} else {
return null;
}
});
spec_tools.impl.nilable_spec_QMARK_ = (function spec_tools$impl$nilable_spec_QMARK_(spec){
var form = (function (){var and__3911__auto__ = spec;
if(cljs.core.truth_(and__3911__auto__)){
return cljs.spec.alpha.form.call(null,spec);
} else {
return and__3911__auto__;
}
})();
return cljs.core.boolean$.call(null,((!(cljs.core._EQ_.call(null,form,new cljs.core.Keyword("cljs.spec.alpha","unknown","cljs.spec.alpha/unknown",651034818))))?(function (){var G__25539 = form;
var G__25539__$1 = (((G__25539 == null))?null:cljs.core.seq.call(null,G__25539));
var G__25539__$2 = (((G__25539__$1 == null))?null:cljs.core.first.call(null,G__25539__$1));
if((G__25539__$2 == null)){
return null;
} else {
return new cljs.core.PersistentHashSet(null, new cljs.core.PersistentArrayMap(null, 2, [new cljs.core.Symbol("cljs.spec.alpha","nilable","cljs.spec.alpha/nilable",1628308748,null),null,new cljs.core.Symbol("clojure.spec.alpha","nilable","clojure.spec.alpha/nilable",-1718644550,null),null], null), null).call(null,G__25539__$2);
}
})():null));
});
/**
* Unwrap [x] to x. Asserts that coll has exactly one element.
*/
spec_tools.impl.unwrap = (function spec_tools$impl$unwrap(coll){
if(cljs.core._EQ_.call(null,(1),cljs.core.count.call(null,coll))){
} else {
throw (new Error("Assert failed: (= 1 (count coll))"));
}
return cljs.core.first.call(null,coll);
});
spec_tools.impl.deep_merge = (function spec_tools$impl$deep_merge(var_args){
var args__4502__auto__ = [];
var len__4499__auto___25541 = arguments.length;
var i__4500__auto___25542 = (0);
while(true){
if((i__4500__auto___25542 < len__4499__auto___25541)){
args__4502__auto__.push((arguments[i__4500__auto___25542]));
var G__25543 = (i__4500__auto___25542 + (1));
i__4500__auto___25542 = G__25543;
continue;
} else {
}
break;
}
var argseq__4503__auto__ = ((((0) < args__4502__auto__.length))?(new cljs.core.IndexedSeq(args__4502__auto__.slice((0)),(0),null)):null);
return spec_tools.impl.deep_merge.cljs$core$IFn$_invoke$arity$variadic(argseq__4503__auto__);
});
spec_tools.impl.deep_merge.cljs$core$IFn$_invoke$arity$variadic = (function (values){
if(cljs.core.every_QMARK_.call(null,cljs.core.map_QMARK_,values)){
return cljs.core.apply.call(null,cljs.core.merge_with,spec_tools.impl.deep_merge,values);
} else {
if(cljs.core.every_QMARK_.call(null,cljs.core.coll_QMARK_,values)){
return cljs.core.reduce.call(null,cljs.core.into,values);
} else {
return cljs.core.last.call(null,values);
}
}
});
spec_tools.impl.deep_merge.cljs$lang$maxFixedArity = (0);
/** @this {Function} */
spec_tools.impl.deep_merge.cljs$lang$applyTo = (function (seq25540){
var self__4487__auto__ = this;
return self__4487__auto__.cljs$core$IFn$_invoke$arity$variadic(cljs.core.seq.call(null,seq25540));
});
spec_tools.impl.register_spec_BANG_ = (function spec_tools$impl$register_spec_BANG_(k,s){
return cljs.spec.alpha.def_impl.call(null,k,cljs.spec.alpha.form.call(null,s),s);
});
//# sourceMappingURL=impl.js.map