@atomist/clj-editors
Version:
editor functions that use rewrite-clj and other important things from the clojurescript ecosystem
1,455 lines (1,247 loc) • 288 kB
JavaScript
// Compiled by ClojureScript 1.10.238 {:target :nodejs}
goog.provide('cljs.core.async');
goog.require('cljs.core');
goog.require('cljs.core.async.impl.protocols');
goog.require('cljs.core.async.impl.channels');
goog.require('cljs.core.async.impl.buffers');
goog.require('cljs.core.async.impl.timers');
goog.require('cljs.core.async.impl.dispatch');
goog.require('cljs.core.async.impl.ioc_helpers');
cljs.core.async.fn_handler = (function cljs$core$async$fn_handler(var_args){
var G__18289 = arguments.length;
switch (G__18289) {
case 1:
return cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
break;
case 2:
return cljs.core.async.fn_handler.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.core.async.fn_handler.cljs$core$IFn$_invoke$arity$1 = (function (f){
return cljs.core.async.fn_handler.call(null,f,true);
});
cljs.core.async.fn_handler.cljs$core$IFn$_invoke$arity$2 = (function (f,blockable){
if(typeof cljs.core.async.t_cljs$core$async18290 !== 'undefined'){
} else {
/**
* @constructor
* @implements {cljs.core.async.impl.protocols.Handler}
* @implements {cljs.core.IMeta}
* @implements {cljs.core.IWithMeta}
*/
cljs.core.async.t_cljs$core$async18290 = (function (f,blockable,meta18291){
this.f = f;
this.blockable = blockable;
this.meta18291 = meta18291;
this.cljs$lang$protocol_mask$partition0$ = 393216;
this.cljs$lang$protocol_mask$partition1$ = 0;
});
cljs.core.async.t_cljs$core$async18290.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_18292,meta18291__$1){
var self__ = this;
var _18292__$1 = this;
return (new cljs.core.async.t_cljs$core$async18290(self__.f,self__.blockable,meta18291__$1));
});
cljs.core.async.t_cljs$core$async18290.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_18292){
var self__ = this;
var _18292__$1 = this;
return self__.meta18291;
});
cljs.core.async.t_cljs$core$async18290.prototype.cljs$core$async$impl$protocols$Handler$ = cljs.core.PROTOCOL_SENTINEL;
cljs.core.async.t_cljs$core$async18290.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return true;
});
cljs.core.async.t_cljs$core$async18290.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return self__.blockable;
});
cljs.core.async.t_cljs$core$async18290.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return self__.f;
});
cljs.core.async.t_cljs$core$async18290.getBasis = (function (){
return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"f","f",43394975,null),new cljs.core.Symbol(null,"blockable","blockable",-28395259,null),new cljs.core.Symbol(null,"meta18291","meta18291",1434107500,null)], null);
});
cljs.core.async.t_cljs$core$async18290.cljs$lang$type = true;
cljs.core.async.t_cljs$core$async18290.cljs$lang$ctorStr = "cljs.core.async/t_cljs$core$async18290";
cljs.core.async.t_cljs$core$async18290.cljs$lang$ctorPrWriter = (function (this__4161__auto__,writer__4162__auto__,opt__4163__auto__){
return cljs.core._write.call(null,writer__4162__auto__,"cljs.core.async/t_cljs$core$async18290");
});
/**
* Positional factory function for cljs.core.async/t_cljs$core$async18290.
*/
cljs.core.async.__GT_t_cljs$core$async18290 = (function cljs$core$async$__GT_t_cljs$core$async18290(f__$1,blockable__$1,meta18291){
return (new cljs.core.async.t_cljs$core$async18290(f__$1,blockable__$1,meta18291));
});
}
return (new cljs.core.async.t_cljs$core$async18290(f,blockable,cljs.core.PersistentArrayMap.EMPTY));
});
cljs.core.async.fn_handler.cljs$lang$maxFixedArity = 2;
/**
* Returns a fixed buffer of size n. When full, puts will block/park.
*/
cljs.core.async.buffer = (function cljs$core$async$buffer(n){
return cljs.core.async.impl.buffers.fixed_buffer.call(null,n);
});
/**
* Returns a buffer of size n. When full, puts will complete but
* val will be dropped (no transfer).
*/
cljs.core.async.dropping_buffer = (function cljs$core$async$dropping_buffer(n){
return cljs.core.async.impl.buffers.dropping_buffer.call(null,n);
});
/**
* Returns a buffer of size n. When full, puts will complete, and be
* buffered, but oldest elements in buffer will be dropped (not
* transferred).
*/
cljs.core.async.sliding_buffer = (function cljs$core$async$sliding_buffer(n){
return cljs.core.async.impl.buffers.sliding_buffer.call(null,n);
});
/**
* Returns true if a channel created with buff will never block. That is to say,
* puts into this buffer will never cause the buffer to be full.
*/
cljs.core.async.unblocking_buffer_QMARK_ = (function cljs$core$async$unblocking_buffer_QMARK_(buff){
if(!((buff == null))){
if(((false) || ((cljs.core.PROTOCOL_SENTINEL === buff.cljs$core$async$impl$protocols$UnblockingBuffer$)))){
return true;
} else {
if((!buff.cljs$lang$protocol_mask$partition$)){
return cljs.core.native_satisfies_QMARK_.call(null,cljs.core.async.impl.protocols.UnblockingBuffer,buff);
} else {
return false;
}
}
} else {
return cljs.core.native_satisfies_QMARK_.call(null,cljs.core.async.impl.protocols.UnblockingBuffer,buff);
}
});
/**
* Creates a channel with an optional buffer, an optional transducer (like (map f),
* (filter p) etc or a composition thereof), and an optional exception handler.
* If buf-or-n is a number, will create and use a fixed buffer of that size. If a
* transducer is supplied a buffer must be specified. ex-handler must be a
* fn of one argument - if an exception occurs during transformation it will be called
* with the thrown value as an argument, and any non-nil return value will be placed
* in the channel.
*/
cljs.core.async.chan = (function cljs$core$async$chan(var_args){
var G__18296 = arguments.length;
switch (G__18296) {
case 0:
return cljs.core.async.chan.cljs$core$IFn$_invoke$arity$0();
break;
case 1:
return cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
break;
case 2:
return cljs.core.async.chan.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
case 3:
return cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
break;
default:
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
}
});
cljs.core.async.chan.cljs$core$IFn$_invoke$arity$0 = (function (){
return cljs.core.async.chan.call(null,null);
});
cljs.core.async.chan.cljs$core$IFn$_invoke$arity$1 = (function (buf_or_n){
return cljs.core.async.chan.call(null,buf_or_n,null,null);
});
cljs.core.async.chan.cljs$core$IFn$_invoke$arity$2 = (function (buf_or_n,xform){
return cljs.core.async.chan.call(null,buf_or_n,xform,null);
});
cljs.core.async.chan.cljs$core$IFn$_invoke$arity$3 = (function (buf_or_n,xform,ex_handler){
var buf_or_n__$1 = ((cljs.core._EQ_.call(null,buf_or_n,(0)))?null:buf_or_n);
if(cljs.core.truth_(xform)){
if(cljs.core.truth_(buf_or_n__$1)){
} else {
throw (new Error(["Assert failed: ","buffer must be supplied when transducer is","\n","buf-or-n"].join('')));
}
} else {
}
return cljs.core.async.impl.channels.chan.call(null,((typeof buf_or_n__$1 === 'number')?cljs.core.async.buffer.call(null,buf_or_n__$1):buf_or_n__$1),xform,ex_handler);
});
cljs.core.async.chan.cljs$lang$maxFixedArity = 3;
/**
* Creates a promise channel with an optional transducer, and an optional
* exception-handler. A promise channel can take exactly one value that consumers
* will receive. Once full, puts complete but val is dropped (no transfer).
* Consumers will block until either a value is placed in the channel or the
* channel is closed. See chan for the semantics of xform and ex-handler.
*/
cljs.core.async.promise_chan = (function cljs$core$async$promise_chan(var_args){
var G__18299 = arguments.length;
switch (G__18299) {
case 0:
return cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$0();
break;
case 1:
return cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$1((arguments[(0)]));
break;
case 2:
return cljs.core.async.promise_chan.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.core.async.promise_chan.cljs$core$IFn$_invoke$arity$0 = (function (){
return cljs.core.async.promise_chan.call(null,null);
});
cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$1 = (function (xform){
return cljs.core.async.promise_chan.call(null,xform,null);
});
cljs.core.async.promise_chan.cljs$core$IFn$_invoke$arity$2 = (function (xform,ex_handler){
return cljs.core.async.chan.call(null,cljs.core.async.impl.buffers.promise_buffer.call(null),xform,ex_handler);
});
cljs.core.async.promise_chan.cljs$lang$maxFixedArity = 2;
/**
* Returns a channel that will close after msecs
*/
cljs.core.async.timeout = (function cljs$core$async$timeout(msecs){
return cljs.core.async.impl.timers.timeout.call(null,msecs);
});
/**
* takes a val from port. Must be called inside a (go ...) block. Will
* return nil if closed. Will park if nothing is available.
* Returns true unless port is already closed
*/
cljs.core.async._LT__BANG_ = (function cljs$core$async$_LT__BANG_(port){
throw (new Error("<! used not in (go ...) block"));
});
/**
* Asynchronously takes a val from port, passing to fn1. Will pass nil
* if closed. If on-caller? (default true) is true, and value is
* immediately available, will call fn1 on calling thread.
* Returns nil.
*/
cljs.core.async.take_BANG_ = (function cljs$core$async$take_BANG_(var_args){
var G__18302 = arguments.length;
switch (G__18302) {
case 2:
return cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
case 3:
return cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
break;
default:
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
}
});
cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$2 = (function (port,fn1){
return cljs.core.async.take_BANG_.call(null,port,fn1,true);
});
cljs.core.async.take_BANG_.cljs$core$IFn$_invoke$arity$3 = (function (port,fn1,on_caller_QMARK_){
var ret = cljs.core.async.impl.protocols.take_BANG_.call(null,port,cljs.core.async.fn_handler.call(null,fn1));
if(cljs.core.truth_(ret)){
var val_18304 = cljs.core.deref.call(null,ret);
if(cljs.core.truth_(on_caller_QMARK_)){
fn1.call(null,val_18304);
} else {
cljs.core.async.impl.dispatch.run.call(null,((function (val_18304,ret){
return (function (){
return fn1.call(null,val_18304);
});})(val_18304,ret))
);
}
} else {
}
return null;
});
cljs.core.async.take_BANG_.cljs$lang$maxFixedArity = 3;
cljs.core.async.nop = (function cljs$core$async$nop(_){
return null;
});
cljs.core.async.fhnop = cljs.core.async.fn_handler.call(null,cljs.core.async.nop);
/**
* puts a val into port. nil values are not allowed. Must be called
* inside a (go ...) block. Will park if no buffer space is available.
* Returns true unless port is already closed.
*/
cljs.core.async._GT__BANG_ = (function cljs$core$async$_GT__BANG_(port,val){
throw (new Error(">! used not in (go ...) block"));
});
/**
* Asynchronously puts a val into port, calling fn0 (if supplied) when
* complete. nil values are not allowed. Will throw if closed. If
* on-caller? (default true) is true, and the put is immediately
* accepted, will call fn0 on calling thread. Returns nil.
*/
cljs.core.async.put_BANG_ = (function cljs$core$async$put_BANG_(var_args){
var G__18306 = arguments.length;
switch (G__18306) {
case 2:
return cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
case 3:
return cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
break;
case 4:
return cljs.core.async.put_BANG_.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.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$2 = (function (port,val){
var temp__5455__auto__ = cljs.core.async.impl.protocols.put_BANG_.call(null,port,val,cljs.core.async.fhnop);
if(cljs.core.truth_(temp__5455__auto__)){
var ret = temp__5455__auto__;
return cljs.core.deref.call(null,ret);
} else {
return true;
}
});
cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$3 = (function (port,val,fn1){
return cljs.core.async.put_BANG_.call(null,port,val,fn1,true);
});
cljs.core.async.put_BANG_.cljs$core$IFn$_invoke$arity$4 = (function (port,val,fn1,on_caller_QMARK_){
var temp__5455__auto__ = cljs.core.async.impl.protocols.put_BANG_.call(null,port,val,cljs.core.async.fn_handler.call(null,fn1));
if(cljs.core.truth_(temp__5455__auto__)){
var retb = temp__5455__auto__;
var ret = cljs.core.deref.call(null,retb);
if(cljs.core.truth_(on_caller_QMARK_)){
fn1.call(null,ret);
} else {
cljs.core.async.impl.dispatch.run.call(null,((function (ret,retb,temp__5455__auto__){
return (function (){
return fn1.call(null,ret);
});})(ret,retb,temp__5455__auto__))
);
}
return ret;
} else {
return true;
}
});
cljs.core.async.put_BANG_.cljs$lang$maxFixedArity = 4;
cljs.core.async.close_BANG_ = (function cljs$core$async$close_BANG_(port){
return cljs.core.async.impl.protocols.close_BANG_.call(null,port);
});
cljs.core.async.random_array = (function cljs$core$async$random_array(n){
var a = (new Array(n));
var n__4376__auto___18308 = n;
var x_18309 = (0);
while(true){
if((x_18309 < n__4376__auto___18308)){
(a[x_18309] = (0));
var G__18310 = (x_18309 + (1));
x_18309 = G__18310;
continue;
} else {
}
break;
}
var i = (1);
while(true){
if(cljs.core._EQ_.call(null,i,n)){
return a;
} else {
var j = cljs.core.rand_int.call(null,i);
(a[i] = (a[j]));
(a[j] = i);
var G__18311 = (i + (1));
i = G__18311;
continue;
}
break;
}
});
cljs.core.async.alt_flag = (function cljs$core$async$alt_flag(){
var flag = cljs.core.atom.call(null,true);
if(typeof cljs.core.async.t_cljs$core$async18312 !== 'undefined'){
} else {
/**
* @constructor
* @implements {cljs.core.async.impl.protocols.Handler}
* @implements {cljs.core.IMeta}
* @implements {cljs.core.IWithMeta}
*/
cljs.core.async.t_cljs$core$async18312 = (function (flag,meta18313){
this.flag = flag;
this.meta18313 = meta18313;
this.cljs$lang$protocol_mask$partition0$ = 393216;
this.cljs$lang$protocol_mask$partition1$ = 0;
});
cljs.core.async.t_cljs$core$async18312.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = ((function (flag){
return (function (_18314,meta18313__$1){
var self__ = this;
var _18314__$1 = this;
return (new cljs.core.async.t_cljs$core$async18312(self__.flag,meta18313__$1));
});})(flag))
;
cljs.core.async.t_cljs$core$async18312.prototype.cljs$core$IMeta$_meta$arity$1 = ((function (flag){
return (function (_18314){
var self__ = this;
var _18314__$1 = this;
return self__.meta18313;
});})(flag))
;
cljs.core.async.t_cljs$core$async18312.prototype.cljs$core$async$impl$protocols$Handler$ = cljs.core.PROTOCOL_SENTINEL;
cljs.core.async.t_cljs$core$async18312.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 = ((function (flag){
return (function (_){
var self__ = this;
var ___$1 = this;
return cljs.core.deref.call(null,self__.flag);
});})(flag))
;
cljs.core.async.t_cljs$core$async18312.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 = ((function (flag){
return (function (_){
var self__ = this;
var ___$1 = this;
return true;
});})(flag))
;
cljs.core.async.t_cljs$core$async18312.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 = ((function (flag){
return (function (_){
var self__ = this;
var ___$1 = this;
cljs.core.reset_BANG_.call(null,self__.flag,null);
return true;
});})(flag))
;
cljs.core.async.t_cljs$core$async18312.getBasis = ((function (flag){
return (function (){
return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"flag","flag",-1565787888,null),new cljs.core.Symbol(null,"meta18313","meta18313",-461015221,null)], null);
});})(flag))
;
cljs.core.async.t_cljs$core$async18312.cljs$lang$type = true;
cljs.core.async.t_cljs$core$async18312.cljs$lang$ctorStr = "cljs.core.async/t_cljs$core$async18312";
cljs.core.async.t_cljs$core$async18312.cljs$lang$ctorPrWriter = ((function (flag){
return (function (this__4161__auto__,writer__4162__auto__,opt__4163__auto__){
return cljs.core._write.call(null,writer__4162__auto__,"cljs.core.async/t_cljs$core$async18312");
});})(flag))
;
/**
* Positional factory function for cljs.core.async/t_cljs$core$async18312.
*/
cljs.core.async.__GT_t_cljs$core$async18312 = ((function (flag){
return (function cljs$core$async$alt_flag_$___GT_t_cljs$core$async18312(flag__$1,meta18313){
return (new cljs.core.async.t_cljs$core$async18312(flag__$1,meta18313));
});})(flag))
;
}
return (new cljs.core.async.t_cljs$core$async18312(flag,cljs.core.PersistentArrayMap.EMPTY));
});
cljs.core.async.alt_handler = (function cljs$core$async$alt_handler(flag,cb){
if(typeof cljs.core.async.t_cljs$core$async18315 !== 'undefined'){
} else {
/**
* @constructor
* @implements {cljs.core.async.impl.protocols.Handler}
* @implements {cljs.core.IMeta}
* @implements {cljs.core.IWithMeta}
*/
cljs.core.async.t_cljs$core$async18315 = (function (flag,cb,meta18316){
this.flag = flag;
this.cb = cb;
this.meta18316 = meta18316;
this.cljs$lang$protocol_mask$partition0$ = 393216;
this.cljs$lang$protocol_mask$partition1$ = 0;
});
cljs.core.async.t_cljs$core$async18315.prototype.cljs$core$IWithMeta$_with_meta$arity$2 = (function (_18317,meta18316__$1){
var self__ = this;
var _18317__$1 = this;
return (new cljs.core.async.t_cljs$core$async18315(self__.flag,self__.cb,meta18316__$1));
});
cljs.core.async.t_cljs$core$async18315.prototype.cljs$core$IMeta$_meta$arity$1 = (function (_18317){
var self__ = this;
var _18317__$1 = this;
return self__.meta18316;
});
cljs.core.async.t_cljs$core$async18315.prototype.cljs$core$async$impl$protocols$Handler$ = cljs.core.PROTOCOL_SENTINEL;
cljs.core.async.t_cljs$core$async18315.prototype.cljs$core$async$impl$protocols$Handler$active_QMARK_$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return cljs.core.async.impl.protocols.active_QMARK_.call(null,self__.flag);
});
cljs.core.async.t_cljs$core$async18315.prototype.cljs$core$async$impl$protocols$Handler$blockable_QMARK_$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
return true;
});
cljs.core.async.t_cljs$core$async18315.prototype.cljs$core$async$impl$protocols$Handler$commit$arity$1 = (function (_){
var self__ = this;
var ___$1 = this;
cljs.core.async.impl.protocols.commit.call(null,self__.flag);
return self__.cb;
});
cljs.core.async.t_cljs$core$async18315.getBasis = (function (){
return new cljs.core.PersistentVector(null, 3, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Symbol(null,"flag","flag",-1565787888,null),new cljs.core.Symbol(null,"cb","cb",-2064487928,null),new cljs.core.Symbol(null,"meta18316","meta18316",87053522,null)], null);
});
cljs.core.async.t_cljs$core$async18315.cljs$lang$type = true;
cljs.core.async.t_cljs$core$async18315.cljs$lang$ctorStr = "cljs.core.async/t_cljs$core$async18315";
cljs.core.async.t_cljs$core$async18315.cljs$lang$ctorPrWriter = (function (this__4161__auto__,writer__4162__auto__,opt__4163__auto__){
return cljs.core._write.call(null,writer__4162__auto__,"cljs.core.async/t_cljs$core$async18315");
});
/**
* Positional factory function for cljs.core.async/t_cljs$core$async18315.
*/
cljs.core.async.__GT_t_cljs$core$async18315 = (function cljs$core$async$alt_handler_$___GT_t_cljs$core$async18315(flag__$1,cb__$1,meta18316){
return (new cljs.core.async.t_cljs$core$async18315(flag__$1,cb__$1,meta18316));
});
}
return (new cljs.core.async.t_cljs$core$async18315(flag,cb,cljs.core.PersistentArrayMap.EMPTY));
});
/**
* returns derefable [val port] if immediate, nil if enqueued
*/
cljs.core.async.do_alts = (function cljs$core$async$do_alts(fret,ports,opts){
var flag = cljs.core.async.alt_flag.call(null);
var n = cljs.core.count.call(null,ports);
var idxs = cljs.core.async.random_array.call(null,n);
var priority = new cljs.core.Keyword(null,"priority","priority",1431093715).cljs$core$IFn$_invoke$arity$1(opts);
var ret = (function (){var i = (0);
while(true){
if((i < n)){
var idx = (cljs.core.truth_(priority)?i:(idxs[i]));
var port = cljs.core.nth.call(null,ports,idx);
var wport = ((cljs.core.vector_QMARK_.call(null,port))?port.call(null,(0)):null);
var vbox = (cljs.core.truth_(wport)?(function (){var val = port.call(null,(1));
return cljs.core.async.impl.protocols.put_BANG_.call(null,wport,val,cljs.core.async.alt_handler.call(null,flag,((function (i,val,idx,port,wport,flag,n,idxs,priority){
return (function (p1__18318_SHARP_){
return fret.call(null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p1__18318_SHARP_,wport], null));
});})(i,val,idx,port,wport,flag,n,idxs,priority))
));
})():cljs.core.async.impl.protocols.take_BANG_.call(null,port,cljs.core.async.alt_handler.call(null,flag,((function (i,idx,port,wport,flag,n,idxs,priority){
return (function (p1__18319_SHARP_){
return fret.call(null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [p1__18319_SHARP_,port], null));
});})(i,idx,port,wport,flag,n,idxs,priority))
)));
if(cljs.core.truth_(vbox)){
return cljs.core.async.impl.channels.box.call(null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.deref.call(null,vbox),(function (){var or__3922__auto__ = wport;
if(cljs.core.truth_(or__3922__auto__)){
return or__3922__auto__;
} else {
return port;
}
})()], null));
} else {
var G__18320 = (i + (1));
i = G__18320;
continue;
}
} else {
return null;
}
break;
}
})();
var or__3922__auto__ = ret;
if(cljs.core.truth_(or__3922__auto__)){
return or__3922__auto__;
} else {
if(cljs.core.contains_QMARK_.call(null,opts,new cljs.core.Keyword(null,"default","default",-1987822328))){
var temp__5457__auto__ = (function (){var and__3911__auto__ = cljs.core.async.impl.protocols.active_QMARK_.call(null,flag);
if(cljs.core.truth_(and__3911__auto__)){
return cljs.core.async.impl.protocols.commit.call(null,flag);
} else {
return and__3911__auto__;
}
})();
if(cljs.core.truth_(temp__5457__auto__)){
var got = temp__5457__auto__;
return cljs.core.async.impl.channels.box.call(null,new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [new cljs.core.Keyword(null,"default","default",-1987822328).cljs$core$IFn$_invoke$arity$1(opts),new cljs.core.Keyword(null,"default","default",-1987822328)], null));
} else {
return null;
}
} else {
return null;
}
}
});
/**
* Completes at most one of several channel operations. Must be called
* inside a (go ...) block. ports is a vector of channel endpoints,
* which can be either a channel to take from or a vector of
* [channel-to-put-to val-to-put], in any combination. Takes will be
* made as if by <!, and puts will be made as if by >!. Unless
* the :priority option is true, if more than one port operation is
* ready a non-deterministic choice will be made. If no operation is
* ready and a :default value is supplied, [default-val :default] will
* be returned, otherwise alts! will park until the first operation to
* become ready completes. Returns [val port] of the completed
* operation, where val is the value taken for takes, and a
* boolean (true unless already closed, as per put!) for puts.
*
* opts are passed as :key val ... Supported options:
*
* :default val - the value to use if none of the operations are immediately ready
* :priority true - (default nil) when true, the operations will be tried in order.
*
* Note: there is no guarantee that the port exps or val exprs will be
* used, nor in what order should they be, so they should not be
* depended upon for side effects.
*/
cljs.core.async.alts_BANG_ = (function cljs$core$async$alts_BANG_(var_args){
var args__4502__auto__ = [];
var len__4499__auto___18326 = arguments.length;
var i__4500__auto___18327 = (0);
while(true){
if((i__4500__auto___18327 < len__4499__auto___18326)){
args__4502__auto__.push((arguments[i__4500__auto___18327]));
var G__18328 = (i__4500__auto___18327 + (1));
i__4500__auto___18327 = G__18328;
continue;
} else {
}
break;
}
var argseq__4503__auto__ = ((((1) < args__4502__auto__.length))?(new cljs.core.IndexedSeq(args__4502__auto__.slice((1)),(0),null)):null);
return cljs.core.async.alts_BANG_.cljs$core$IFn$_invoke$arity$variadic((arguments[(0)]),argseq__4503__auto__);
});
cljs.core.async.alts_BANG_.cljs$core$IFn$_invoke$arity$variadic = (function (ports,p__18323){
var map__18324 = p__18323;
var map__18324__$1 = ((((!((map__18324 == null)))?(((((map__18324.cljs$lang$protocol_mask$partition0$ & (64))) || ((cljs.core.PROTOCOL_SENTINEL === map__18324.cljs$core$ISeq$))))?true:false):false))?cljs.core.apply.call(null,cljs.core.hash_map,map__18324):map__18324);
var opts = map__18324__$1;
throw (new Error("alts! used not in (go ...) block"));
});
cljs.core.async.alts_BANG_.cljs$lang$maxFixedArity = (1);
/** @this {Function} */
cljs.core.async.alts_BANG_.cljs$lang$applyTo = (function (seq18321){
var G__18322 = cljs.core.first.call(null,seq18321);
var seq18321__$1 = cljs.core.next.call(null,seq18321);
var self__4486__auto__ = this;
return self__4486__auto__.cljs$core$IFn$_invoke$arity$variadic(G__18322,seq18321__$1);
});
/**
* Puts a val into port if it's possible to do so immediately.
* nil values are not allowed. Never blocks. Returns true if offer succeeds.
*/
cljs.core.async.offer_BANG_ = (function cljs$core$async$offer_BANG_(port,val){
var ret = cljs.core.async.impl.protocols.put_BANG_.call(null,port,val,cljs.core.async.fn_handler.call(null,cljs.core.async.nop,false));
if(cljs.core.truth_(ret)){
return cljs.core.deref.call(null,ret);
} else {
return null;
}
});
/**
* Takes a val from port if it's possible to do so immediately.
* Never blocks. Returns value if successful, nil otherwise.
*/
cljs.core.async.poll_BANG_ = (function cljs$core$async$poll_BANG_(port){
var ret = cljs.core.async.impl.protocols.take_BANG_.call(null,port,cljs.core.async.fn_handler.call(null,cljs.core.async.nop,false));
if(cljs.core.truth_(ret)){
return cljs.core.deref.call(null,ret);
} else {
return null;
}
});
/**
* Takes elements from the from channel and supplies them to the to
* channel. By default, the to channel will be closed when the from
* channel closes, but can be determined by the close? parameter. Will
* stop consuming the from channel if the to channel closes
*/
cljs.core.async.pipe = (function cljs$core$async$pipe(var_args){
var G__18330 = arguments.length;
switch (G__18330) {
case 2:
return cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$2((arguments[(0)]),(arguments[(1)]));
break;
case 3:
return cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$3((arguments[(0)]),(arguments[(1)]),(arguments[(2)]));
break;
default:
throw (new Error(["Invalid arity: ",cljs.core.str.cljs$core$IFn$_invoke$arity$1(arguments.length)].join('')));
}
});
cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$2 = (function (from,to){
return cljs.core.async.pipe.call(null,from,to,true);
});
cljs.core.async.pipe.cljs$core$IFn$_invoke$arity$3 = (function (from,to,close_QMARK_){
var c__4714__auto___18376 = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__4714__auto___18376){
return (function (){
var f__4715__auto__ = (function (){var switch__4668__auto__ = ((function (c__4714__auto___18376){
return (function (state_18354){
var state_val_18355 = (state_18354[(1)]);
if((state_val_18355 === (7))){
var inst_18350 = (state_18354[(2)]);
var state_18354__$1 = state_18354;
var statearr_18356_18377 = state_18354__$1;
(statearr_18356_18377[(2)] = inst_18350);
(statearr_18356_18377[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (1))){
var state_18354__$1 = state_18354;
var statearr_18357_18378 = state_18354__$1;
(statearr_18357_18378[(2)] = null);
(statearr_18357_18378[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (4))){
var inst_18333 = (state_18354[(7)]);
var inst_18333__$1 = (state_18354[(2)]);
var inst_18334 = (inst_18333__$1 == null);
var state_18354__$1 = (function (){var statearr_18358 = state_18354;
(statearr_18358[(7)] = inst_18333__$1);
return statearr_18358;
})();
if(cljs.core.truth_(inst_18334)){
var statearr_18359_18379 = state_18354__$1;
(statearr_18359_18379[(1)] = (5));
} else {
var statearr_18360_18380 = state_18354__$1;
(statearr_18360_18380[(1)] = (6));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (13))){
var state_18354__$1 = state_18354;
var statearr_18361_18381 = state_18354__$1;
(statearr_18361_18381[(2)] = null);
(statearr_18361_18381[(1)] = (14));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (6))){
var inst_18333 = (state_18354[(7)]);
var state_18354__$1 = state_18354;
return cljs.core.async.impl.ioc_helpers.put_BANG_.call(null,state_18354__$1,(11),to,inst_18333);
} else {
if((state_val_18355 === (3))){
var inst_18352 = (state_18354[(2)]);
var state_18354__$1 = state_18354;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_18354__$1,inst_18352);
} else {
if((state_val_18355 === (12))){
var state_18354__$1 = state_18354;
var statearr_18362_18382 = state_18354__$1;
(statearr_18362_18382[(2)] = null);
(statearr_18362_18382[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (2))){
var state_18354__$1 = state_18354;
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_18354__$1,(4),from);
} else {
if((state_val_18355 === (11))){
var inst_18343 = (state_18354[(2)]);
var state_18354__$1 = state_18354;
if(cljs.core.truth_(inst_18343)){
var statearr_18363_18383 = state_18354__$1;
(statearr_18363_18383[(1)] = (12));
} else {
var statearr_18364_18384 = state_18354__$1;
(statearr_18364_18384[(1)] = (13));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (9))){
var state_18354__$1 = state_18354;
var statearr_18365_18385 = state_18354__$1;
(statearr_18365_18385[(2)] = null);
(statearr_18365_18385[(1)] = (10));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (5))){
var state_18354__$1 = state_18354;
if(cljs.core.truth_(close_QMARK_)){
var statearr_18366_18386 = state_18354__$1;
(statearr_18366_18386[(1)] = (8));
} else {
var statearr_18367_18387 = state_18354__$1;
(statearr_18367_18387[(1)] = (9));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (14))){
var inst_18348 = (state_18354[(2)]);
var state_18354__$1 = state_18354;
var statearr_18368_18388 = state_18354__$1;
(statearr_18368_18388[(2)] = inst_18348);
(statearr_18368_18388[(1)] = (7));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (10))){
var inst_18340 = (state_18354[(2)]);
var state_18354__$1 = state_18354;
var statearr_18369_18389 = state_18354__$1;
(statearr_18369_18389[(2)] = inst_18340);
(statearr_18369_18389[(1)] = (7));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18355 === (8))){
var inst_18337 = cljs.core.async.close_BANG_.call(null,to);
var state_18354__$1 = state_18354;
var statearr_18370_18390 = state_18354__$1;
(statearr_18370_18390[(2)] = inst_18337);
(statearr_18370_18390[(1)] = (10));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
}
}
}
}
}
}
}
});})(c__4714__auto___18376))
;
return ((function (switch__4668__auto__,c__4714__auto___18376){
return (function() {
var cljs$core$async$state_machine__4669__auto__ = null;
var cljs$core$async$state_machine__4669__auto____0 = (function (){
var statearr_18371 = [null,null,null,null,null,null,null,null];
(statearr_18371[(0)] = cljs$core$async$state_machine__4669__auto__);
(statearr_18371[(1)] = (1));
return statearr_18371;
});
var cljs$core$async$state_machine__4669__auto____1 = (function (state_18354){
while(true){
var ret_value__4670__auto__ = (function (){try{while(true){
var result__4671__auto__ = switch__4668__auto__.call(null,state_18354);
if(cljs.core.keyword_identical_QMARK_.call(null,result__4671__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__4671__auto__;
}
break;
}
}catch (e18372){if((e18372 instanceof Object)){
var ex__4672__auto__ = e18372;
var statearr_18373_18391 = state_18354;
(statearr_18373_18391[(5)] = ex__4672__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_18354);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e18372;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__4670__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__18392 = state_18354;
state_18354 = G__18392;
continue;
} else {
return ret_value__4670__auto__;
}
break;
}
});
cljs$core$async$state_machine__4669__auto__ = function(state_18354){
switch(arguments.length){
case 0:
return cljs$core$async$state_machine__4669__auto____0.call(this);
case 1:
return cljs$core$async$state_machine__4669__auto____1.call(this,state_18354);
}
throw(new Error('Invalid arity: ' + (arguments.length - 1)));
};
cljs$core$async$state_machine__4669__auto__.cljs$core$IFn$_invoke$arity$0 = cljs$core$async$state_machine__4669__auto____0;
cljs$core$async$state_machine__4669__auto__.cljs$core$IFn$_invoke$arity$1 = cljs$core$async$state_machine__4669__auto____1;
return cljs$core$async$state_machine__4669__auto__;
})()
;})(switch__4668__auto__,c__4714__auto___18376))
})();
var state__4716__auto__ = (function (){var statearr_18374 = f__4715__auto__.call(null);
(statearr_18374[(6)] = c__4714__auto___18376);
return statearr_18374;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__4716__auto__);
});})(c__4714__auto___18376))
);
return to;
});
cljs.core.async.pipe.cljs$lang$maxFixedArity = 3;
cljs.core.async.pipeline_STAR_ = (function cljs$core$async$pipeline_STAR_(n,to,xf,from,close_QMARK_,ex_handler,type){
if((n > (0))){
} else {
throw (new Error("Assert failed: (pos? n)"));
}
var jobs = cljs.core.async.chan.call(null,n);
var results = cljs.core.async.chan.call(null,n);
var process = ((function (jobs,results){
return (function (p__18393){
var vec__18394 = p__18393;
var v = cljs.core.nth.call(null,vec__18394,(0),null);
var p = cljs.core.nth.call(null,vec__18394,(1),null);
var job = vec__18394;
if((job == null)){
cljs.core.async.close_BANG_.call(null,results);
return null;
} else {
var res = cljs.core.async.chan.call(null,(1),xf,ex_handler);
var c__4714__auto___18565 = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (c__4714__auto___18565,res,vec__18394,v,p,job,jobs,results){
return (function (){
var f__4715__auto__ = (function (){var switch__4668__auto__ = ((function (c__4714__auto___18565,res,vec__18394,v,p,job,jobs,results){
return (function (state_18401){
var state_val_18402 = (state_18401[(1)]);
if((state_val_18402 === (1))){
var state_18401__$1 = state_18401;
return cljs.core.async.impl.ioc_helpers.put_BANG_.call(null,state_18401__$1,(2),res,v);
} else {
if((state_val_18402 === (2))){
var inst_18398 = (state_18401[(2)]);
var inst_18399 = cljs.core.async.close_BANG_.call(null,res);
var state_18401__$1 = (function (){var statearr_18403 = state_18401;
(statearr_18403[(7)] = inst_18398);
return statearr_18403;
})();
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_18401__$1,inst_18399);
} else {
return null;
}
}
});})(c__4714__auto___18565,res,vec__18394,v,p,job,jobs,results))
;
return ((function (switch__4668__auto__,c__4714__auto___18565,res,vec__18394,v,p,job,jobs,results){
return (function() {
var cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__ = null;
var cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____0 = (function (){
var statearr_18404 = [null,null,null,null,null,null,null,null];
(statearr_18404[(0)] = cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__);
(statearr_18404[(1)] = (1));
return statearr_18404;
});
var cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____1 = (function (state_18401){
while(true){
var ret_value__4670__auto__ = (function (){try{while(true){
var result__4671__auto__ = switch__4668__auto__.call(null,state_18401);
if(cljs.core.keyword_identical_QMARK_.call(null,result__4671__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__4671__auto__;
}
break;
}
}catch (e18405){if((e18405 instanceof Object)){
var ex__4672__auto__ = e18405;
var statearr_18406_18566 = state_18401;
(statearr_18406_18566[(5)] = ex__4672__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_18401);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e18405;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__4670__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__18567 = state_18401;
state_18401 = G__18567;
continue;
} else {
return ret_value__4670__auto__;
}
break;
}
});
cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__ = function(state_18401){
switch(arguments.length){
case 0:
return cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____0.call(this);
case 1:
return cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____1.call(this,state_18401);
}
throw(new Error('Invalid arity: ' + (arguments.length - 1)));
};
cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__.cljs$core$IFn$_invoke$arity$0 = cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____0;
cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__.cljs$core$IFn$_invoke$arity$1 = cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____1;
return cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__;
})()
;})(switch__4668__auto__,c__4714__auto___18565,res,vec__18394,v,p,job,jobs,results))
})();
var state__4716__auto__ = (function (){var statearr_18407 = f__4715__auto__.call(null);
(statearr_18407[(6)] = c__4714__auto___18565);
return statearr_18407;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__4716__auto__);
});})(c__4714__auto___18565,res,vec__18394,v,p,job,jobs,results))
);
cljs.core.async.put_BANG_.call(null,p,res);
return true;
}
});})(jobs,results))
;
var async = ((function (jobs,results,process){
return (function (p__18408){
var vec__18409 = p__18408;
var v = cljs.core.nth.call(null,vec__18409,(0),null);
var p = cljs.core.nth.call(null,vec__18409,(1),null);
var job = vec__18409;
if((job == null)){
cljs.core.async.close_BANG_.call(null,results);
return null;
} else {
var res = cljs.core.async.chan.call(null,(1));
xf.call(null,v,res);
cljs.core.async.put_BANG_.call(null,p,res);
return true;
}
});})(jobs,results,process))
;
var n__4376__auto___18568 = n;
var __18569 = (0);
while(true){
if((__18569 < n__4376__auto___18568)){
var G__18412_18570 = type;
var G__18412_18571__$1 = (((G__18412_18570 instanceof cljs.core.Keyword))?G__18412_18570.fqn:null);
switch (G__18412_18571__$1) {
case "compute":
var c__4714__auto___18573 = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (__18569,c__4714__auto___18573,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async){
return (function (){
var f__4715__auto__ = (function (){var switch__4668__auto__ = ((function (__18569,c__4714__auto___18573,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async){
return (function (state_18425){
var state_val_18426 = (state_18425[(1)]);
if((state_val_18426 === (1))){
var state_18425__$1 = state_18425;
var statearr_18427_18574 = state_18425__$1;
(statearr_18427_18574[(2)] = null);
(statearr_18427_18574[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18426 === (2))){
var state_18425__$1 = state_18425;
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_18425__$1,(4),jobs);
} else {
if((state_val_18426 === (3))){
var inst_18423 = (state_18425[(2)]);
var state_18425__$1 = state_18425;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_18425__$1,inst_18423);
} else {
if((state_val_18426 === (4))){
var inst_18415 = (state_18425[(2)]);
var inst_18416 = process.call(null,inst_18415);
var state_18425__$1 = state_18425;
if(cljs.core.truth_(inst_18416)){
var statearr_18428_18575 = state_18425__$1;
(statearr_18428_18575[(1)] = (5));
} else {
var statearr_18429_18576 = state_18425__$1;
(statearr_18429_18576[(1)] = (6));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18426 === (5))){
var state_18425__$1 = state_18425;
var statearr_18430_18577 = state_18425__$1;
(statearr_18430_18577[(2)] = null);
(statearr_18430_18577[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18426 === (6))){
var state_18425__$1 = state_18425;
var statearr_18431_18578 = state_18425__$1;
(statearr_18431_18578[(2)] = null);
(statearr_18431_18578[(1)] = (7));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18426 === (7))){
var inst_18421 = (state_18425[(2)]);
var state_18425__$1 = state_18425;
var statearr_18432_18579 = state_18425__$1;
(statearr_18432_18579[(2)] = inst_18421);
(statearr_18432_18579[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
});})(__18569,c__4714__auto___18573,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async))
;
return ((function (__18569,switch__4668__auto__,c__4714__auto___18573,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async){
return (function() {
var cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__ = null;
var cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____0 = (function (){
var statearr_18433 = [null,null,null,null,null,null,null];
(statearr_18433[(0)] = cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__);
(statearr_18433[(1)] = (1));
return statearr_18433;
});
var cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____1 = (function (state_18425){
while(true){
var ret_value__4670__auto__ = (function (){try{while(true){
var result__4671__auto__ = switch__4668__auto__.call(null,state_18425);
if(cljs.core.keyword_identical_QMARK_.call(null,result__4671__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__4671__auto__;
}
break;
}
}catch (e18434){if((e18434 instanceof Object)){
var ex__4672__auto__ = e18434;
var statearr_18435_18580 = state_18425;
(statearr_18435_18580[(5)] = ex__4672__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_18425);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e18434;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__4670__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__18581 = state_18425;
state_18425 = G__18581;
continue;
} else {
return ret_value__4670__auto__;
}
break;
}
});
cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__ = function(state_18425){
switch(arguments.length){
case 0:
return cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____0.call(this);
case 1:
return cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____1.call(this,state_18425);
}
throw(new Error('Invalid arity: ' + (arguments.length - 1)));
};
cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__.cljs$core$IFn$_invoke$arity$0 = cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____0;
cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__.cljs$core$IFn$_invoke$arity$1 = cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____1;
return cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__;
})()
;})(__18569,switch__4668__auto__,c__4714__auto___18573,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async))
})();
var state__4716__auto__ = (function (){var statearr_18436 = f__4715__auto__.call(null);
(statearr_18436[(6)] = c__4714__auto___18573);
return statearr_18436;
})();
return cljs.core.async.impl.ioc_helpers.run_state_machine_wrapped.call(null,state__4716__auto__);
});})(__18569,c__4714__auto___18573,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async))
);
break;
case "async":
var c__4714__auto___18582 = cljs.core.async.chan.call(null,(1));
cljs.core.async.impl.dispatch.run.call(null,((function (__18569,c__4714__auto___18582,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async){
return (function (){
var f__4715__auto__ = (function (){var switch__4668__auto__ = ((function (__18569,c__4714__auto___18582,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async){
return (function (state_18449){
var state_val_18450 = (state_18449[(1)]);
if((state_val_18450 === (1))){
var state_18449__$1 = state_18449;
var statearr_18451_18583 = state_18449__$1;
(statearr_18451_18583[(2)] = null);
(statearr_18451_18583[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18450 === (2))){
var state_18449__$1 = state_18449;
return cljs.core.async.impl.ioc_helpers.take_BANG_.call(null,state_18449__$1,(4),jobs);
} else {
if((state_val_18450 === (3))){
var inst_18447 = (state_18449[(2)]);
var state_18449__$1 = state_18449;
return cljs.core.async.impl.ioc_helpers.return_chan.call(null,state_18449__$1,inst_18447);
} else {
if((state_val_18450 === (4))){
var inst_18439 = (state_18449[(2)]);
var inst_18440 = async.call(null,inst_18439);
var state_18449__$1 = state_18449;
if(cljs.core.truth_(inst_18440)){
var statearr_18452_18584 = state_18449__$1;
(statearr_18452_18584[(1)] = (5));
} else {
var statearr_18453_18585 = state_18449__$1;
(statearr_18453_18585[(1)] = (6));
}
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18450 === (5))){
var state_18449__$1 = state_18449;
var statearr_18454_18586 = state_18449__$1;
(statearr_18454_18586[(2)] = null);
(statearr_18454_18586[(1)] = (2));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18450 === (6))){
var state_18449__$1 = state_18449;
var statearr_18455_18587 = state_18449__$1;
(statearr_18455_18587[(2)] = null);
(statearr_18455_18587[(1)] = (7));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
if((state_val_18450 === (7))){
var inst_18445 = (state_18449[(2)]);
var state_18449__$1 = state_18449;
var statearr_18456_18588 = state_18449__$1;
(statearr_18456_18588[(2)] = inst_18445);
(statearr_18456_18588[(1)] = (3));
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
return null;
}
}
}
}
}
}
}
});})(__18569,c__4714__auto___18582,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async))
;
return ((function (__18569,switch__4668__auto__,c__4714__auto___18582,G__18412_18570,G__18412_18571__$1,n__4376__auto___18568,jobs,results,process,async){
return (function() {
var cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__ = null;
var cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____0 = (function (){
var statearr_18457 = [null,null,null,null,null,null,null];
(statearr_18457[(0)] = cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__);
(statearr_18457[(1)] = (1));
return statearr_18457;
});
var cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____1 = (function (state_18449){
while(true){
var ret_value__4670__auto__ = (function (){try{while(true){
var result__4671__auto__ = switch__4668__auto__.call(null,state_18449);
if(cljs.core.keyword_identical_QMARK_.call(null,result__4671__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
continue;
} else {
return result__4671__auto__;
}
break;
}
}catch (e18458){if((e18458 instanceof Object)){
var ex__4672__auto__ = e18458;
var statearr_18459_18589 = state_18449;
(statearr_18459_18589[(5)] = ex__4672__auto__);
cljs.core.async.impl.ioc_helpers.process_exception.call(null,state_18449);
return new cljs.core.Keyword(null,"recur","recur",-437573268);
} else {
throw e18458;
}
}})();
if(cljs.core.keyword_identical_QMARK_.call(null,ret_value__4670__auto__,new cljs.core.Keyword(null,"recur","recur",-437573268))){
var G__18590 = state_18449;
state_18449 = G__18590;
continue;
} else {
return ret_value__4670__auto__;
}
break;
}
});
cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__ = function(state_18449){
switch(arguments.length){
case 0:
return cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____0.call(this);
case 1:
return cljs$core$async$pipeline_STAR__$_state_machine__4669__auto____1.call(this,state_18449);
}
throw(new Error('Invalid arity: ' + (arguments.length - 1)));
};
cljs$core$async$pipeline_STAR__$_state_machine__4669__auto__.cljs$core$IFn$_invoke$arity$0 = cljs$core$async$pip