UNPKG

thisdotrob-calvin-cljs

Version:

a minimalistic build tool for clojurescript in clojurescript

63 lines (55 loc) 2.06 kB
// Compiled by ClojureScript 1.9.293 {:target :nodejs} goog.provide('cljs.core.async.impl.dispatch'); goog.require('cljs.core'); goog.require('cljs.core.async.impl.buffers'); goog.require('goog.async.nextTick'); cljs.core.async.impl.dispatch.tasks = cljs.core.async.impl.buffers.ring_buffer.call(null,(32)); cljs.core.async.impl.dispatch.running_QMARK_ = false; cljs.core.async.impl.dispatch.queued_QMARK_ = false; cljs.core.async.impl.dispatch.TASK_BATCH_SIZE = (1024); cljs.core.async.impl.dispatch.process_messages = (function cljs$core$async$impl$dispatch$process_messages(){ cljs.core.async.impl.dispatch.running_QMARK_ = true; cljs.core.async.impl.dispatch.queued_QMARK_ = false; var count_20731 = (0); while(true){ var m_20732 = cljs.core.async.impl.dispatch.tasks.pop(); if((m_20732 == null)){ } else { m_20732.call(null); if((count_20731 < cljs.core.async.impl.dispatch.TASK_BATCH_SIZE)){ var G__20733 = (count_20731 + (1)); count_20731 = G__20733; continue; } else { } } break; } cljs.core.async.impl.dispatch.running_QMARK_ = false; if((cljs.core.async.impl.dispatch.tasks.length > (0))){ return cljs.core.async.impl.dispatch.queue_dispatcher.call(null); } else { return null; } }); cljs.core.async.impl.dispatch.queue_dispatcher = (function cljs$core$async$impl$dispatch$queue_dispatcher(){ if(cljs.core.truth_((function (){var and__6531__auto__ = cljs.core.async.impl.dispatch.queued_QMARK_; if(cljs.core.truth_(and__6531__auto__)){ return cljs.core.async.impl.dispatch.running_QMARK_; } else { return and__6531__auto__; } })())){ return null; } else { cljs.core.async.impl.dispatch.queued_QMARK_ = true; return goog.async.nextTick(cljs.core.async.impl.dispatch.process_messages); } }); cljs.core.async.impl.dispatch.run = (function cljs$core$async$impl$dispatch$run(f){ cljs.core.async.impl.dispatch.tasks.unbounded_unshift(f); return cljs.core.async.impl.dispatch.queue_dispatcher.call(null); }); cljs.core.async.impl.dispatch.queue_delay = (function cljs$core$async$impl$dispatch$queue_delay(f,delay){ return setTimeout(f,delay); });