64 lines
2 KiB
JavaScript
64 lines
2 KiB
JavaScript
goog.provide('sci.ctx_store');
|
|
/**
|
|
* Dynamic var in which context is stored. Don't use directly, but only
|
|
* via public API.
|
|
*/
|
|
sci.ctx_store._STAR_ctx_STAR_ = null;
|
|
/**
|
|
* Store `ctx`
|
|
*/
|
|
sci.ctx_store.reset_ctx_BANG_ = (function sci$ctx_store$reset_ctx_BANG_(ctx){
|
|
return (sci.ctx_store._STAR_ctx_STAR_ = ctx);
|
|
});
|
|
/**
|
|
* Update `ctx` using `f` and `args`
|
|
*/
|
|
sci.ctx_store.swap_ctx_BANG_ = (function sci$ctx_store$swap_ctx_BANG_(var_args){
|
|
var args__5755__auto__ = [];
|
|
var len__5749__auto___39525 = arguments.length;
|
|
var i__5750__auto___39526 = (0);
|
|
while(true){
|
|
if((i__5750__auto___39526 < len__5749__auto___39525)){
|
|
args__5755__auto__.push((arguments[i__5750__auto___39526]));
|
|
|
|
var G__39527 = (i__5750__auto___39526 + (1));
|
|
i__5750__auto___39526 = G__39527;
|
|
continue;
|
|
} else {
|
|
}
|
|
break;
|
|
}
|
|
|
|
var argseq__5756__auto__ = ((((1) < args__5755__auto__.length))?(new cljs.core.IndexedSeq(args__5755__auto__.slice((1)),(0),null)):null);
|
|
return sci.ctx_store.swap_ctx_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__5756__auto__);
|
|
});
|
|
|
|
(sci.ctx_store.swap_ctx_BANG_.cljs$core$IFn$_invoke$arity$variadic = (function (f,args){
|
|
return (sci.ctx_store._STAR_ctx_STAR_ = cljs.core.apply.cljs$core$IFn$_invoke$arity$3(f,sci.ctx_store._STAR_ctx_STAR_,args));
|
|
}));
|
|
|
|
(sci.ctx_store.swap_ctx_BANG_.cljs$lang$maxFixedArity = (1));
|
|
|
|
/** @this {Function} */
|
|
(sci.ctx_store.swap_ctx_BANG_.cljs$lang$applyTo = (function (seq39508){
|
|
var G__39509 = cljs.core.first(seq39508);
|
|
var seq39508__$1 = cljs.core.next(seq39508);
|
|
var self__5734__auto__ = this;
|
|
return self__5734__auto__.cljs$core$IFn$_invoke$arity$variadic(G__39509,seq39508__$1);
|
|
}));
|
|
|
|
/**
|
|
* Retrieve stored ctx or throw an exception.
|
|
*/
|
|
sci.ctx_store.get_ctx = (function sci$ctx_store$get_ctx(){
|
|
var or__5025__auto__ = sci.ctx_store._STAR_ctx_STAR_;
|
|
if(cljs.core.truth_(or__5025__auto__)){
|
|
return or__5025__auto__;
|
|
} else {
|
|
var msg = "No context found in: sci.ctx-store/*ctx*. Please set it using sci.ctx-store/reset-ctx!";
|
|
throw (new Error(msg));
|
|
}
|
|
});
|
|
|
|
//# sourceMappingURL=sci.ctx_store.js.map
|