├── .gitignore ├── .npmignore ├── LICENSE.md ├── README.md ├── bin ├── cj └── clack ├── build.sh ├── bundle ├── clack-0.0.1.tar.gz ├── clack-0.1.1.tar.gz ├── clack-0.1.2.tar.gz ├── clack-0.1.3.tar.gz ├── clack-0.1.4.tar.gz ├── clack-0.1.5.tar.gz └── clack-0.1.6.tar.gz ├── clack.js ├── clack.js.bak ├── out ├── 2C3DD6B.js ├── 8079981.js ├── A298C4D.js ├── B7FA45A.js ├── BCE03FE.js ├── clack │ ├── core.cljs │ ├── core.cljs.cache.edn │ ├── core.js │ ├── core.js.map │ ├── parser.cljs │ ├── parser.cljs.cache.edn │ ├── parser.js │ ├── parser.js.map │ ├── parser │ │ ├── edn.cljs │ │ ├── edn.cljs.cache.edn │ │ ├── edn.js │ │ ├── edn.js.map │ │ ├── json.cljs │ │ ├── json.cljs.cache.edn │ │ ├── json.js │ │ ├── json.js.map │ │ ├── protocol.cljs │ │ ├── protocol.cljs.cache.edn │ │ ├── protocol.js │ │ ├── protocol.js.map │ │ ├── string.cljs │ │ ├── string.cljs.cache.edn │ │ ├── string.js │ │ ├── string.js.map │ │ ├── transit.cljs │ │ ├── transit.cljs.cache.edn │ │ ├── transit.js │ │ ├── transit.js.map │ │ ├── yaml.cljs │ │ ├── yaml.cljs.cache.edn │ │ ├── yaml.js │ │ └── yaml.js.map │ ├── serializer.cljs │ ├── serializer.cljs.cache.edn │ ├── serializer.js │ ├── serializer.js.map │ ├── serializer │ │ ├── edn.cljs │ │ ├── edn.cljs.cache.edn │ │ ├── edn.js │ │ ├── edn.js.map │ │ ├── json.cljs │ │ ├── json.cljs.cache.edn │ │ ├── json.js │ │ ├── json.js.map │ │ ├── protocol.cljs │ │ ├── protocol.cljs.cache.edn │ │ ├── protocol.js │ │ ├── protocol.js.map │ │ ├── string.cljs │ │ ├── string.cljs.cache.edn │ │ ├── string.js │ │ ├── string.js.map │ │ ├── transit.cljs │ │ ├── transit.cljs.cache.edn │ │ ├── transit.js │ │ ├── transit.js.map │ │ ├── yaml.cljs │ │ ├── yaml.cljs.cache.edn │ │ ├── yaml.js │ │ └── yaml.js.map │ ├── util.cljs │ ├── util.cljs.cache.edn │ ├── util.js │ └── util.js.map ├── cljs │ ├── analyzer.cljc │ ├── analyzer.cljc.cache.edn │ ├── analyzer.js │ ├── analyzer.js.map │ ├── compiler.cljc │ ├── compiler.cljc.cache.edn │ ├── compiler.js │ ├── compiler.js.map │ ├── core$macros.cljc │ ├── core$macros.cljc.cache.edn │ ├── core$macros.js │ ├── core$macros.js.map │ ├── core.cljc │ ├── core.cljs │ ├── core.js │ ├── core.js.map │ ├── env.cljc │ ├── env.cljc.cache.edn │ ├── env.js │ ├── env.js.map │ ├── js.cljs │ ├── js.cljs.cache.edn │ ├── js.js │ ├── js.js.map │ ├── nodejs.cljs │ ├── nodejs.cljs.cache.edn │ ├── nodejs.js │ ├── nodejs.js.map │ ├── nodejscli.cljs │ ├── pprint.cljs │ ├── pprint.cljs.cache.edn │ ├── pprint.js │ ├── pprint.js.map │ ├── reader.cljs │ ├── reader.cljs.cache.edn │ ├── reader.js │ ├── reader.js.map │ ├── source_map.cljs │ ├── source_map.cljs.cache.edn │ ├── source_map.js │ ├── source_map.js.map │ ├── source_map │ │ ├── base64.cljs │ │ ├── base64.cljs.cache.edn │ │ ├── base64.js │ │ ├── base64.js.map │ │ ├── base64_vlq.cljs │ │ ├── base64_vlq.cljs.cache.edn │ │ ├── base64_vlq.js │ │ └── base64_vlq.js.map │ ├── tagged_literals.cljc │ ├── tagged_literals.cljc.cache.edn │ ├── tagged_literals.js │ ├── tagged_literals.js.map │ └── tools │ │ ├── reader.cljs │ │ ├── reader.cljs.cache.edn │ │ ├── reader.js │ │ ├── reader.js.map │ │ └── reader │ │ ├── impl │ │ ├── commons.cljs │ │ ├── commons.cljs.cache.edn │ │ ├── commons.js │ │ ├── commons.js.map │ │ ├── utils.cljs │ │ ├── utils.cljs.cache.edn │ │ ├── utils.js │ │ └── utils.js.map │ │ ├── reader_types.cljs │ │ ├── reader_types.cljs.cache.edn │ │ ├── reader_types.js │ │ └── reader_types.js.map ├── cljs_deps.js ├── clojure │ ├── set.cljs │ ├── set.cljs.cache.edn │ ├── set.js │ ├── set.js.map │ ├── string.cljs │ ├── string.cljs.cache.edn │ ├── string.js │ ├── string.js.map │ ├── walk.cljs │ ├── walk.cljs.cache.edn │ ├── walk.js │ └── walk.js.map ├── cognitect │ ├── transit.cljs │ ├── transit.cljs.cache.edn │ ├── transit.js │ └── transit.js.map ├── com │ └── cognitect │ │ ├── transit.js │ │ └── transit │ │ ├── caching.js │ │ ├── delimiters.js │ │ ├── eq.js │ │ ├── handlers.js │ │ ├── impl │ │ ├── decoder.js │ │ ├── reader.js │ │ └── writer.js │ │ ├── types.js │ │ └── util.js ├── constants_table.js └── goog │ ├── array │ └── array.js │ ├── asserts │ └── asserts.js │ ├── base.js │ ├── bootstrap │ └── nodejs.js │ ├── crypt │ ├── base64.js │ └── crypt.js │ ├── debug │ └── error.js │ ├── deps.js │ ├── dom │ └── nodetype.js │ ├── labs │ └── useragent │ │ ├── browser.js │ │ ├── engine.js │ │ ├── platform.js │ │ └── util.js │ ├── math │ ├── integer.js │ └── long.js │ ├── object │ └── object.js │ ├── reflect │ └── reflect.js │ ├── string │ ├── string.js │ └── stringbuffer.js │ └── useragent │ ├── product.js │ └── useragent.js ├── package.json ├── project.clj ├── src └── clack │ ├── core.cljs │ ├── parser.cljs │ ├── parser │ ├── edn.cljs │ ├── json.cljs │ ├── protocol.cljs │ ├── string.cljs │ ├── transit.cljs │ └── yaml.cljs │ ├── serializer.cljs │ ├── serializer │ ├── edn.cljs │ ├── json.cljs │ ├── protocol.cljs │ ├── string.cljs │ ├── transit.cljs │ └── yaml.cljs │ ├── serializerstring.cljs │ └── util.cljs └── test ├── dwim.sh ├── fixtures ├── sample.json ├── sample.yaml └── transit-0.8.json ├── general.sh ├── main.sh ├── stringify.sh ├── transit.sh ├── wrapping.sh └── yaml.sh /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | repl 3 | target 4 | main.js 5 | .cljs_node_repl/ 6 | .cljs_rhino_repl/ 7 | .lein-repl-history 8 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | target 2 | bundle 3 | 4 | -------------------------------------------------------------------------------- /bin/cj: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | CLACK_BIN=$(realpath $0) 4 | CLACK_BIN_DIR=$(dirname $CLACK_BIN) 5 | $CLACK_BIN_DIR/clack -i js "$@" 6 | 7 | -------------------------------------------------------------------------------- /bin/clack: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | NODE_BIN=$(which node) 4 | if [ "$NODE_BIN" = "" ]; then 5 | echo "node binary not found. Please add the 'node' executable to your path"; 6 | exit 1; 7 | fi 8 | 9 | CLACK_BIN=$(realpath $0) 10 | CLACK_BIN_DIR=$(dirname $CLACK_BIN) 11 | CLACK_DIR=$CLACK_BIN_DIR/.. 12 | #cd $CLACK_DIR 13 | node "$CLACK_DIR/clack.js" "$@" 14 | 15 | -------------------------------------------------------------------------------- /build.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | version=$1 4 | if [ "$version" = "" ]; then 5 | echo "usage: ./build.sh " >&2; 6 | exit 1; 7 | fi 8 | filename="bundle/clack-$version.tar.gz" 9 | tar -czf $filename bin out test clack.js node_modules; 10 | echo -n 'sha256 is: '; 11 | echo $(shasum -a 256 $filename) 12 | -------------------------------------------------------------------------------- /bundle/clack-0.0.1.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clumsyjedi/clack/07aef442e8f6229441722896ef4521067bafb033/bundle/clack-0.0.1.tar.gz -------------------------------------------------------------------------------- /bundle/clack-0.1.1.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clumsyjedi/clack/07aef442e8f6229441722896ef4521067bafb033/bundle/clack-0.1.1.tar.gz -------------------------------------------------------------------------------- /bundle/clack-0.1.2.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clumsyjedi/clack/07aef442e8f6229441722896ef4521067bafb033/bundle/clack-0.1.2.tar.gz -------------------------------------------------------------------------------- /bundle/clack-0.1.3.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clumsyjedi/clack/07aef442e8f6229441722896ef4521067bafb033/bundle/clack-0.1.3.tar.gz -------------------------------------------------------------------------------- /bundle/clack-0.1.4.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clumsyjedi/clack/07aef442e8f6229441722896ef4521067bafb033/bundle/clack-0.1.4.tar.gz -------------------------------------------------------------------------------- /bundle/clack-0.1.5.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clumsyjedi/clack/07aef442e8f6229441722896ef4521067bafb033/bundle/clack-0.1.5.tar.gz -------------------------------------------------------------------------------- /bundle/clack-0.1.6.tar.gz: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/clumsyjedi/clack/07aef442e8f6229441722896ef4521067bafb033/bundle/clack-0.1.6.tar.gz -------------------------------------------------------------------------------- /clack.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | if(typeof Math.imul == "undefined" || (Math.imul(0xffffffff,5) == 0)) { 3 | Math.imul = function (a, b) { 4 | var ah = (a >>> 16) & 0xffff; 5 | var al = a & 0xffff; 6 | var bh = (b >>> 16) & 0xffff; 7 | var bl = b & 0xffff; 8 | // the shift by 0 fixes the sign on the high part 9 | // the final |0 converts the unsigned value into a signed value 10 | return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); 11 | } 12 | } 13 | require('app-module-path').addPath(__dirname + "/out"); 14 | 15 | var path = require("path"); 16 | try { 17 | require("source-map-support").install(); 18 | } catch(err) { 19 | } 20 | require("goog/bootstrap/nodejs.js"); 21 | require("cljs_deps.js"); 22 | goog.global.CLOSURE_UNCOMPILED_DEFINES = {"cljs.core._STAR_target_STAR_":"nodejs"}; 23 | goog.require("clack.core"); 24 | goog.require("cljs.nodejscli"); 25 | -------------------------------------------------------------------------------- /clack.js.bak: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | if(typeof Math.imul == "undefined" || (Math.imul(0xffffffff,5) == 0)) { 3 | Math.imul = function (a, b) { 4 | var ah = (a >>> 16) & 0xffff; 5 | var al = a & 0xffff; 6 | var bh = (b >>> 16) & 0xffff; 7 | var bl = b & 0xffff; 8 | // the shift by 0 fixes the sign on the high part 9 | // the final |0 converts the unsigned value into a signed value 10 | return ((al * bl) + (((ah * bl + al * bh) << 16) >>> 0)|0); 11 | } 12 | } 13 | require('app-module-path').addPath(__dirname + "/out"); 14 | 15 | var path = require("path"); 16 | try { 17 | require("source-map-support").install(); 18 | } catch(err) { 19 | } 20 | require("goog/bootstrap/nodejs.js"); 21 | require("cljs_deps.js"); 22 | goog.global.CLOSURE_UNCOMPILED_DEFINES = {"cljs.core._STAR_target_STAR_":"nodejs"}; 23 | goog.require("clack.core"); 24 | goog.require("cljs.nodejscli"); 25 | -------------------------------------------------------------------------------- /out/2C3DD6B.js: -------------------------------------------------------------------------------- 1 | goog.provide('cljs.nodejs'); 2 | goog.require('cljs.core'); 3 | cljs.nodejs.require = require; 4 | cljs.nodejs.process = process; 5 | cljs.nodejs.enable_util_print_BANG_ = (function cljs$nodejs$enable_util_print_BANG_(){ 6 | cljs.core._STAR_print_newline_STAR_ = false; 7 | 8 | cljs.core._STAR_print_fn_STAR_ = (function() { 9 | var G__14997__delegate = function (args){ 10 | return console.log.apply(console,cljs.core.into_array.call(null,args)); 11 | }; 12 | var G__14997 = function (var_args){ 13 | var args = null; 14 | if (arguments.length > 0) { 15 | var G__14998__i = 0, G__14998__a = new Array(arguments.length - 0); 16 | while (G__14998__i < G__14998__a.length) {G__14998__a[G__14998__i] = arguments[G__14998__i + 0]; ++G__14998__i;} 17 | args = new cljs.core.IndexedSeq(G__14998__a,0); 18 | } 19 | return G__14997__delegate.call(this,args);}; 20 | G__14997.cljs$lang$maxFixedArity = 0; 21 | G__14997.cljs$lang$applyTo = (function (arglist__14999){ 22 | var args = cljs.core.seq(arglist__14999); 23 | return G__14997__delegate(args); 24 | }); 25 | G__14997.cljs$core$IFn$_invoke$arity$variadic = G__14997__delegate; 26 | return G__14997; 27 | })() 28 | ; 29 | 30 | cljs.core._STAR_print_err_fn_STAR_ = (function() { 31 | var G__15000__delegate = function (args){ 32 | return console.error.apply(console,cljs.core.into_array.call(null,args)); 33 | }; 34 | var G__15000 = function (var_args){ 35 | var args = null; 36 | if (arguments.length > 0) { 37 | var G__15001__i = 0, G__15001__a = new Array(arguments.length - 0); 38 | while (G__15001__i < G__15001__a.length) {G__15001__a[G__15001__i] = arguments[G__15001__i + 0]; ++G__15001__i;} 39 | args = new cljs.core.IndexedSeq(G__15001__a,0); 40 | } 41 | return G__15000__delegate.call(this,args);}; 42 | G__15000.cljs$lang$maxFixedArity = 0; 43 | G__15000.cljs$lang$applyTo = (function (arglist__15002){ 44 | var args = cljs.core.seq(arglist__15002); 45 | return G__15000__delegate(args); 46 | }); 47 | G__15000.cljs$core$IFn$_invoke$arity$variadic = G__15000__delegate; 48 | return G__15000; 49 | })() 50 | ; 51 | 52 | return null; 53 | }); 54 | -------------------------------------------------------------------------------- /out/8079981.js: -------------------------------------------------------------------------------- 1 | goog.provide('cljs.nodejs'); 2 | goog.require('cljs.core'); 3 | cljs.nodejs.require = require; 4 | cljs.nodejs.process = process; 5 | cljs.nodejs.enable_util_print_BANG_ = (function cljs$nodejs$enable_util_print_BANG_(){ 6 | cljs.core._STAR_print_newline_STAR_ = false; 7 | 8 | cljs.core._STAR_print_fn_STAR_ = (function() { 9 | var G__15327__delegate = function (args){ 10 | return console.log.apply(console,cljs.core.into_array.call(null,args)); 11 | }; 12 | var G__15327 = function (var_args){ 13 | var args = null; 14 | if (arguments.length > 0) { 15 | var G__15328__i = 0, G__15328__a = new Array(arguments.length - 0); 16 | while (G__15328__i < G__15328__a.length) {G__15328__a[G__15328__i] = arguments[G__15328__i + 0]; ++G__15328__i;} 17 | args = new cljs.core.IndexedSeq(G__15328__a,0); 18 | } 19 | return G__15327__delegate.call(this,args);}; 20 | G__15327.cljs$lang$maxFixedArity = 0; 21 | G__15327.cljs$lang$applyTo = (function (arglist__15329){ 22 | var args = cljs.core.seq(arglist__15329); 23 | return G__15327__delegate(args); 24 | }); 25 | G__15327.cljs$core$IFn$_invoke$arity$variadic = G__15327__delegate; 26 | return G__15327; 27 | })() 28 | ; 29 | 30 | cljs.core._STAR_print_err_fn_STAR_ = (function() { 31 | var G__15330__delegate = function (args){ 32 | return console.error.apply(console,cljs.core.into_array.call(null,args)); 33 | }; 34 | var G__15330 = function (var_args){ 35 | var args = null; 36 | if (arguments.length > 0) { 37 | var G__15331__i = 0, G__15331__a = new Array(arguments.length - 0); 38 | while (G__15331__i < G__15331__a.length) {G__15331__a[G__15331__i] = arguments[G__15331__i + 0]; ++G__15331__i;} 39 | args = new cljs.core.IndexedSeq(G__15331__a,0); 40 | } 41 | return G__15330__delegate.call(this,args);}; 42 | G__15330.cljs$lang$maxFixedArity = 0; 43 | G__15330.cljs$lang$applyTo = (function (arglist__15332){ 44 | var args = cljs.core.seq(arglist__15332); 45 | return G__15330__delegate(args); 46 | }); 47 | G__15330.cljs$core$IFn$_invoke$arity$variadic = G__15330__delegate; 48 | return G__15330; 49 | })() 50 | ; 51 | 52 | return null; 53 | }); 54 | -------------------------------------------------------------------------------- /out/A298C4D.js: -------------------------------------------------------------------------------- 1 | goog.provide('cljs.nodejs'); 2 | goog.require('cljs.core'); 3 | cljs.nodejs.require = require; 4 | cljs.nodejs.process = process; 5 | cljs.nodejs.enable_util_print_BANG_ = (function cljs$nodejs$enable_util_print_BANG_(){ 6 | cljs.core._STAR_print_newline_STAR_ = false; 7 | 8 | cljs.core._STAR_print_fn_STAR_ = (function() { 9 | var G__15217__delegate = function (args){ 10 | return console.log.apply(console,cljs.core.into_array.call(null,args)); 11 | }; 12 | var G__15217 = function (var_args){ 13 | var args = null; 14 | if (arguments.length > 0) { 15 | var G__15218__i = 0, G__15218__a = new Array(arguments.length - 0); 16 | while (G__15218__i < G__15218__a.length) {G__15218__a[G__15218__i] = arguments[G__15218__i + 0]; ++G__15218__i;} 17 | args = new cljs.core.IndexedSeq(G__15218__a,0); 18 | } 19 | return G__15217__delegate.call(this,args);}; 20 | G__15217.cljs$lang$maxFixedArity = 0; 21 | G__15217.cljs$lang$applyTo = (function (arglist__15219){ 22 | var args = cljs.core.seq(arglist__15219); 23 | return G__15217__delegate(args); 24 | }); 25 | G__15217.cljs$core$IFn$_invoke$arity$variadic = G__15217__delegate; 26 | return G__15217; 27 | })() 28 | ; 29 | 30 | cljs.core._STAR_print_err_fn_STAR_ = (function() { 31 | var G__15220__delegate = function (args){ 32 | return console.error.apply(console,cljs.core.into_array.call(null,args)); 33 | }; 34 | var G__15220 = function (var_args){ 35 | var args = null; 36 | if (arguments.length > 0) { 37 | var G__15221__i = 0, G__15221__a = new Array(arguments.length - 0); 38 | while (G__15221__i < G__15221__a.length) {G__15221__a[G__15221__i] = arguments[G__15221__i + 0]; ++G__15221__i;} 39 | args = new cljs.core.IndexedSeq(G__15221__a,0); 40 | } 41 | return G__15220__delegate.call(this,args);}; 42 | G__15220.cljs$lang$maxFixedArity = 0; 43 | G__15220.cljs$lang$applyTo = (function (arglist__15222){ 44 | var args = cljs.core.seq(arglist__15222); 45 | return G__15220__delegate(args); 46 | }); 47 | G__15220.cljs$core$IFn$_invoke$arity$variadic = G__15220__delegate; 48 | return G__15220; 49 | })() 50 | ; 51 | 52 | return null; 53 | }); 54 | -------------------------------------------------------------------------------- /out/B7FA45A.js: -------------------------------------------------------------------------------- 1 | goog.provide('cljs.nodejs'); 2 | goog.require('cljs.core'); 3 | cljs.nodejs.require = require; 4 | cljs.nodejs.process = process; 5 | cljs.nodejs.enable_util_print_BANG_ = (function cljs$nodejs$enable_util_print_BANG_(){ 6 | cljs.core._STAR_print_newline_STAR_ = false; 7 | 8 | cljs.core._STAR_print_fn_STAR_ = (function() { 9 | var G__15107__delegate = function (args){ 10 | return console.log.apply(console,cljs.core.into_array.call(null,args)); 11 | }; 12 | var G__15107 = function (var_args){ 13 | var args = null; 14 | if (arguments.length > 0) { 15 | var G__15108__i = 0, G__15108__a = new Array(arguments.length - 0); 16 | while (G__15108__i < G__15108__a.length) {G__15108__a[G__15108__i] = arguments[G__15108__i + 0]; ++G__15108__i;} 17 | args = new cljs.core.IndexedSeq(G__15108__a,0); 18 | } 19 | return G__15107__delegate.call(this,args);}; 20 | G__15107.cljs$lang$maxFixedArity = 0; 21 | G__15107.cljs$lang$applyTo = (function (arglist__15109){ 22 | var args = cljs.core.seq(arglist__15109); 23 | return G__15107__delegate(args); 24 | }); 25 | G__15107.cljs$core$IFn$_invoke$arity$variadic = G__15107__delegate; 26 | return G__15107; 27 | })() 28 | ; 29 | 30 | cljs.core._STAR_print_err_fn_STAR_ = (function() { 31 | var G__15110__delegate = function (args){ 32 | return console.error.apply(console,cljs.core.into_array.call(null,args)); 33 | }; 34 | var G__15110 = function (var_args){ 35 | var args = null; 36 | if (arguments.length > 0) { 37 | var G__15111__i = 0, G__15111__a = new Array(arguments.length - 0); 38 | while (G__15111__i < G__15111__a.length) {G__15111__a[G__15111__i] = arguments[G__15111__i + 0]; ++G__15111__i;} 39 | args = new cljs.core.IndexedSeq(G__15111__a,0); 40 | } 41 | return G__15110__delegate.call(this,args);}; 42 | G__15110.cljs$lang$maxFixedArity = 0; 43 | G__15110.cljs$lang$applyTo = (function (arglist__15112){ 44 | var args = cljs.core.seq(arglist__15112); 45 | return G__15110__delegate(args); 46 | }); 47 | G__15110.cljs$core$IFn$_invoke$arity$variadic = G__15110__delegate; 48 | return G__15110; 49 | })() 50 | ; 51 | 52 | return null; 53 | }); 54 | -------------------------------------------------------------------------------- /out/BCE03FE.js: -------------------------------------------------------------------------------- 1 | goog.provide('cljs.nodejscli'); 2 | goog.require('cljs.core'); 3 | goog.require('cljs.nodejs'); 4 | if(COMPILED){ 5 | goog.global = global; 6 | } else { 7 | } 8 | if(((cljs.core._STAR_main_cli_fn_STAR_ == null)) || (!(cljs.core.fn_QMARK_.call(null,cljs.core._STAR_main_cli_fn_STAR_)))){ 9 | throw (new Error("cljs.core/*main-cli-fn* not set")); 10 | } else { 11 | cljs.core.apply.call(null,cljs.core._STAR_main_cli_fn_STAR_,cljs.core.drop.call(null,(2),cljs.nodejs.process.argv)); 12 | } 13 | -------------------------------------------------------------------------------- /out/clack/parser.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser 2 | (:require [clack.parser.edn :as edn] 3 | [clack.parser.json :as json] 4 | [clack.parser.transit :as transit] 5 | [clack.parser.protocol :refer [handle-input]] 6 | [clack.parser.string :as string] 7 | [clack.parser.yaml :as yaml])) 8 | 9 | (defn- parser [input-type] 10 | (condp = input-type 11 | :json (json/parser) 12 | :str (string/parser) 13 | :tjs (transit/parser) 14 | :yaml (yaml/parser) 15 | (edn/parser))) 16 | 17 | (defn parse [input-type stream complete-fn keywordize?] 18 | (handle-input (parser input-type) stream complete-fn keywordize?)) 19 | -------------------------------------------------------------------------------- /out/clack/parser.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.parser, :imports nil, :requires {clack.parser.string clack.parser.string, json clack.parser.json, clack.parser.edn clack.parser.edn, clack.parser.json clack.parser.json, string clack.parser.string, yaml clack.parser.yaml, transit clack.parser.transit, clack.parser.transit clack.parser.transit, edn clack.parser.edn, clack.parser.protocol clack.parser.protocol, clack.parser.yaml clack.parser.yaml}, :uses {handle-input clack.parser.protocol}, :defs {parser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser.cljs", :line 9, :column 8, :end-line 9, :end-column 14, :private true, :arglists (quote ([input-type]))}, :private true, :name clack.parser/parser, :variadic false, :file "src/clack/parser.cljs", :end-column 14, :method-params ([input-type]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 9, :end-line 9, :max-fixed-arity 1, :fn-var true, :arglists (quote ([input-type]))}, parse {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser.cljs", :line 17, :column 7, :end-line 17, :end-column 12, :arglists (quote ([input-type stream complete-fn keywordize?]))}, :name clack.parser/parse, :variadic false, :file "src/clack/parser.cljs", :end-column 12, :method-params ([input-type stream complete-fn keywordize?]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 17, :end-line 17, :max-fixed-arity 4, :fn-var true, :arglists (quote ([input-type stream complete-fn keywordize?]))}}, :require-macros nil, :cljs.analyzer/constants {:seen #{:yaml :str :tjs :json}, :order [:json :str :tjs :yaml]}, :doc nil} -------------------------------------------------------------------------------- /out/clack/parser.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('clack.parser'); 3 | goog.require('cljs.core'); 4 | goog.require('clack.parser.string'); 5 | goog.require('clack.parser.json'); 6 | goog.require('clack.parser.edn'); 7 | goog.require('clack.parser.yaml'); 8 | goog.require('clack.parser.transit'); 9 | goog.require('clack.parser.protocol'); 10 | clack.parser.parser = (function clack$parser$parser(input_type){ 11 | var pred__14893 = cljs.core._EQ_; 12 | var expr__14894 = input_type; 13 | if(cljs.core.truth_(pred__14893.call(null,cljs.core.cst$kw$json,expr__14894))){ 14 | return clack.parser.json.parser.call(null); 15 | } else { 16 | if(cljs.core.truth_(pred__14893.call(null,cljs.core.cst$kw$str,expr__14894))){ 17 | return clack.parser.string.parser.call(null); 18 | } else { 19 | if(cljs.core.truth_(pred__14893.call(null,cljs.core.cst$kw$tjs,expr__14894))){ 20 | return clack.parser.transit.parser.call(null); 21 | } else { 22 | if(cljs.core.truth_(pred__14893.call(null,cljs.core.cst$kw$yaml,expr__14894))){ 23 | return clack.parser.yaml.parser.call(null); 24 | } else { 25 | return clack.parser.edn.parser.call(null); 26 | } 27 | } 28 | } 29 | } 30 | }); 31 | clack.parser.parse = (function clack$parser$parse(input_type,stream,complete_fn,keywordize_QMARK_){ 32 | return clack.parser.protocol.handle_input.call(null,clack.parser.parser.call(null,input_type),stream,complete_fn,keywordize_QMARK_); 33 | }); 34 | 35 | //# sourceMappingURL=parser.js.map -------------------------------------------------------------------------------- /out/clack/parser.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/parser.js","sources":["parser.cljs"],"lineCount":35,"mappings":";AAAA;;;;;;;;AAQA,sBAAA,tBAAOA,oDAAQC;AAAf,AACE,IAAAC,cAAOE;IAAPD,cAASF;AAAT,AAAA,oBAAA,AAAAC,sBAAA,sBAAAC;AACQ,OAACE;;AADT,oBAAA,AAAAH,sBAAA,qBAAAC;AAEO,OAACG;;AAFR,oBAAA,AAAAJ,sBAAA,qBAAAC;AAGO,OAACI;;AAHR,oBAAA,AAAAL,sBAAA,sBAAAC;AAIQ,OAACK;;AACP,OAACC;;;;;;AAEL,qBAAA,rBAAMC,kDAAOT,WAAWU,OAAOC,YAAYC;AAA3C,AACE,OAACC,6CAAa,AAACd,8BAAOC,YAAYU,OAAOC,YAAYC","names":["clack.parser\/parser","input-type","pred__14893","expr__14894","cljs.core\/=","clack.parser.json\/parser","clack.parser.string\/parser","clack.parser.transit\/parser","clack.parser.yaml\/parser","clack.parser.edn\/parser","clack.parser\/parse","stream","complete-fn","keywordize?","clack.parser.protocol\/handle-input"]} -------------------------------------------------------------------------------- /out/clack/parser/edn.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.edn 2 | (:require [clack.parser.protocol :refer [IParser]] 3 | [cljs.tools.reader :refer [read-string]])) 4 | 5 | (defrecord EdnParser [] 6 | IParser 7 | (handle-input [this stream complete-fn _] 8 | (let [input (atom "")] 9 | (.on stream "readable" (fn [] 10 | (when-let [chunk (.read stream)] 11 | (swap! input #(str % chunk))))) 12 | (.on stream "end" (fn [] 13 | (complete-fn (read-string (str "[" @input "]")))))))) 14 | 15 | (defn parser [] 16 | (->EdnParser)) 17 | -------------------------------------------------------------------------------- /out/clack/parser/edn.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.parser.edn, :imports nil, :requires {clack.parser.protocol clack.parser.protocol, cljs.tools.reader cljs.tools.reader}, :uses {IParser clack.parser.protocol, read-string cljs.tools.reader}, :defs {EdnParser {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable clack.parser.protocol/IParser cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.parser.edn/EdnParser, :file "src/clack/parser/edn.cljs", :end-column 21, :type true, :column 12, :internal-ctor true, :line 5, :record true, :end-line 5, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->EdnParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/edn.cljs", :line 5, :column 12, :end-line 5, :end-column 21, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.parser.edn/->EdnParser, :variadic false, :file "src/clack/parser/edn.cljs", :end-column 21, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 5, :end-line 5, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->EdnParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/edn.cljs", :line 5, :column 12, :end-line 5, :end-column 21, :internal-ctor true, :factory :map, :arglists (quote ([G__14789]))}, :name clack.parser.edn/map->EdnParser, :variadic false, :file "src/clack/parser/edn.cljs", :end-column 21, :method-params ([G__14789]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 5, :end-line 5, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__14789]))}, parser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/edn.cljs", :line 15, :column 7, :end-line 15, :end-column 13, :arglists (quote ([]))}, :name clack.parser.edn/parser, :variadic false, :file "src/clack/parser/edn.cljs", :end-column 13, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 15, :end-line 15, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros nil, :doc nil} -------------------------------------------------------------------------------- /out/clack/parser/edn.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/parser\/edn.js","sources":["edn.cljs"],"lineCount":216,"mappings":"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","names":["this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k14788","else__7034__auto__","G__14790","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__14787","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__14791","cljs.core\/keyword-identical?","expr__14792","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.parser.edn\/EdnParser","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__14789","clack.parser.edn\/->EdnParser","clack.parser.edn\/map->EdnParser","this","stream","complete-fn","_","input","cljs.core\/atom","temp__4657__auto__","chunk","p1__14786#","cljs.core\/swap!","cljs.tools.reader\/read-string","cljs.core\/deref","clack.parser.edn\/parser","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/parser/json.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.json 2 | (:require [clack.parser.protocol :refer [IParser]])) 3 | 4 | (def jsonparse (js/require "jsonparse")) 5 | 6 | (defrecord JsonParser [] 7 | IParser 8 | (handle-input [this stream complete-fn keywordize?] 9 | (let [entities (atom []) 10 | parser (jsonparse.)] 11 | (aset parser "onValue" (fn [entity] 12 | (this-as self 13 | (when (zero? (.-length (.-stack self))) 14 | (swap! entities conj 15 | (js->clj entity 16 | :keywordize-keys keywordize?)))))) 17 | (.on stream "readable" (fn [] 18 | (when-let [chunk (.read stream)] 19 | (.write parser chunk)))) 20 | (.on stream "end" (fn [] 21 | (complete-fn @entities)))))) 22 | 23 | (defn parser [] 24 | (->JsonParser)) 25 | -------------------------------------------------------------------------------- /out/clack/parser/json.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.parser.json, :imports nil, :requires {clack.parser.protocol clack.parser.protocol}, :uses {IParser clack.parser.protocol}, :defs {jsonparse {:name clack.parser.json/jsonparse, :file "/Users/clumsyjedi/workspace/clack/src/clack/parser/json.cljs", :line 4, :column 1, :end-line 4, :end-column 15, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/json.cljs", :line 4, :column 6, :end-line 4, :end-column 15}}, JsonParser {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable clack.parser.protocol/IParser cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.parser.json/JsonParser, :file "/Users/clumsyjedi/workspace/clack/src/clack/parser/json.cljs", :end-column 22, :type true, :column 12, :internal-ctor true, :line 6, :record true, :end-line 6, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->JsonParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/json.cljs", :line 6, :column 12, :end-line 6, :end-column 22, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.parser.json/->JsonParser, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/parser/json.cljs", :end-column 22, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 6, :end-line 6, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->JsonParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/json.cljs", :line 6, :column 12, :end-line 6, :end-column 22, :internal-ctor true, :factory :map, :arglists (quote ([G__14859]))}, :name clack.parser.json/map->JsonParser, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/parser/json.cljs", :end-column 22, :method-params ([G__14859]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 6, :end-line 6, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__14859]))}, parser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/json.cljs", :line 23, :column 7, :end-line 23, :end-column 13, :arglists (quote ([]))}, :name clack.parser.json/parser, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/parser/json.cljs", :end-column 13, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 23, :end-line 23, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros nil, :cljs.analyzer/constants {:seen #{:keywordize-keys}, :order [:keywordize-keys]}, :doc nil} -------------------------------------------------------------------------------- /out/clack/parser/json.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/parser\/json.js","sources":["json.cljs"],"lineCount":224,"mappings":"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","names":["clack.parser.json\/jsonparse","js\/require","this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k14858","else__7034__auto__","G__14860","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__14857","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__14861","cljs.core\/keyword-identical?","expr__14862","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.parser.json\/JsonParser","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__14859","clack.parser.json\/->JsonParser","clack.parser.json\/map->JsonParser","this","stream","complete-fn","keywordize?","entities","cljs.core\/atom","parser","entity","self","cljs.core\/swap!","cljs.core\/conj","cljs.core\/js->clj","temp__4657__auto__","chunk","cljs.core\/deref","clack.parser.json\/parser","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/parser/protocol.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.protocol) 2 | 3 | (defprotocol IParser 4 | (handle-input [this stream complete-fn keywordize?])) 5 | -------------------------------------------------------------------------------- /out/clack/parser/protocol.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.parser.protocol, :imports nil, :requires nil, :uses nil, :defs {IParser {:meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/protocol.cljs", :line 3, :column 14, :end-line 3, :end-column 21, :doc nil, :protocol-symbol true, :jsdoc ("@interface"), :protocol-info {:methods {handle-input [[this stream complete-fn keywordize?]]}}}, :protocol-symbol true, :name clack.parser.protocol/IParser, :file "src/clack/parser/protocol.cljs", :end-column 21, :column 1, :line 3, :protocol-info {:methods {handle-input [[this stream complete-fn keywordize?]]}}, :info nil, :end-line 3, :impls #{}, :doc nil, :jsdoc ("@interface")}, handle-input {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/protocol.cljs", :line 4, :column 4, :end-line 4, :end-column 16, :protocol clack.parser.protocol/IParser, :doc nil, :arglists (quote ([this stream complete-fn keywordize?]))}, :protocol clack.parser.protocol/IParser, :name clack.parser.protocol/handle-input, :variadic false, :file "src/clack/parser/protocol.cljs", :end-column 16, :method-params ([this stream complete-fn keywordize?]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 3, :end-line 4, :max-fixed-arity 4, :fn-var true, :arglists (quote ([this stream complete-fn keywordize?])), :doc nil}}, :require-macros nil, :doc nil} -------------------------------------------------------------------------------- /out/clack/parser/protocol.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('clack.parser.protocol'); 3 | goog.require('cljs.core'); 4 | 5 | /** 6 | * @interface 7 | */ 8 | clack.parser.protocol.IParser = function(){}; 9 | 10 | clack.parser.protocol.handle_input = (function clack$parser$protocol$handle_input(this$,stream,complete_fn,keywordize_QMARK_){ 11 | if((!((this$ == null))) && (!((this$.clack$parser$protocol$IParser$handle_input$arity$4 == null)))){ 12 | return this$.clack$parser$protocol$IParser$handle_input$arity$4(this$,stream,complete_fn,keywordize_QMARK_); 13 | } else { 14 | var x__7072__auto__ = (((this$ == null))?null:this$); 15 | var m__7073__auto__ = (clack.parser.protocol.handle_input[goog.typeOf(x__7072__auto__)]); 16 | if(!((m__7073__auto__ == null))){ 17 | return m__7073__auto__.call(null,this$,stream,complete_fn,keywordize_QMARK_); 18 | } else { 19 | var m__7073__auto____$1 = (clack.parser.protocol.handle_input["_"]); 20 | if(!((m__7073__auto____$1 == null))){ 21 | return m__7073__auto____$1.call(null,this$,stream,complete_fn,keywordize_QMARK_); 22 | } else { 23 | throw cljs.core.missing_protocol.call(null,"IParser.handle-input",this$); 24 | } 25 | } 26 | } 27 | }); 28 | 29 | 30 | //# sourceMappingURL=protocol.js.map -------------------------------------------------------------------------------- /out/clack/parser/protocol.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/parser\/protocol.js","sources":["protocol.cljs"],"lineCount":30,"mappings":";AAAA;;AAEA,AAAA;AAAA;;;gCAAA,hCAAaK;;AAAb,qCAAA,rCACGC,kFAAcC,MAAKC,OAAOC,YAAYC;AADzC,AAAA,GAAA,CAAA,EAAA,UAAA,YAAA,EAAA,CAAA,4DAAA,pFACiBH,wBAAAA;AADjB,OACiBA,yDAAAA,MAAKC,OAAOC,YAAYC;;AADzC,IAAAV,kBAAA,EAAA,UAAA,OAAA,hBACiBO,qBAAAA;IADjBN,kBAAA,CAAAC,mCAAA,AAAAC,YAAAH;AAAA,AAAA,GAAA,EAAA,CAAAC,mBAAA;AAAA,OAAAA,0BACiBM,MAAKC,OAAOC,YAAYC;;AADzC,IAAAT,sBAAA,CAAAC,mCAAA;AAAA,AAAA,GAAA,EAAA,CAAAD,uBAAA;AAAA,OAAAA,8BACiBM,MAAKC,OAAOC,YAAYC;;AADzC,MAAA,AAAAN,qCAAA,uBACiBG;;;;;;AADjB","names":["x__7072__auto__","m__7073__auto__","clack\/parser.protocol.handle-input","goog\/typeOf","cljs.core\/missing-protocol","clack.parser.protocol\/IParser","clack.parser.protocol\/handle-input","this","stream","complete-fn","keywordize?"]} -------------------------------------------------------------------------------- /out/clack/parser/string.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.string 2 | (:require [clack.parser.protocol :refer [IParser]])) 3 | 4 | (defrecord StringParser [] 5 | IParser 6 | (handle-input [this stream complete-fn _] 7 | (let [lines (atom [])] 8 | (.on stream "readable" (fn [] 9 | 10 | (let [rl (.createInterface (js/require "readline") 11 | (clj->js {:input stream 12 | :terminal false}))] 13 | (.on rl "line" (fn [line] 14 | (swap! lines conj line)))))) 15 | (.on stream "end" (fn [] 16 | (complete-fn @lines)))))) 17 | 18 | (defn parser [] 19 | (->StringParser)) 20 | -------------------------------------------------------------------------------- /out/clack/parser/string.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.parser.string, :imports nil, :requires {clack.parser.protocol clack.parser.protocol}, :uses {IParser clack.parser.protocol}, :defs {StringParser {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable clack.parser.protocol/IParser cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.parser.string/StringParser, :file "/Users/clumsyjedi/workspace/clack/src/clack/parser/string.cljs", :end-column 24, :type true, :column 12, :internal-ctor true, :line 4, :record true, :end-line 4, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->StringParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/string.cljs", :line 4, :column 12, :end-line 4, :end-column 24, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.parser.string/->StringParser, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/parser/string.cljs", :end-column 24, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 4, :end-line 4, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->StringParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/string.cljs", :line 4, :column 12, :end-line 4, :end-column 24, :internal-ctor true, :factory :map, :arglists (quote ([G__13263]))}, :name clack.parser.string/map->StringParser, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/parser/string.cljs", :end-column 24, :method-params ([G__13263]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 4, :end-line 4, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__13263]))}, parser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/string.cljs", :line 18, :column 7, :end-line 18, :end-column 13, :arglists (quote ([]))}, :name clack.parser.string/parser, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/parser/string.cljs", :end-column 13, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 18, :end-line 18, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros nil, :cljs.analyzer/constants {:seen #{:terminal :input}, :order [:input :terminal]}, :doc nil} -------------------------------------------------------------------------------- /out/clack/parser/string.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/parser\/string.js","sources":["string.cljs"],"lineCount":210,"mappings":"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","names":["this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k13262","else__7034__auto__","G__13264","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__13261","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__13265","cljs.core\/keyword-identical?","expr__13266","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.parser.string\/StringParser","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__13263","clack.parser.string\/->StringParser","clack.parser.string\/map->StringParser","this","stream","complete-fn","_","lines","cljs.core\/atom","rl","js\/require","cljs.core\/clj->js","line","cljs.core\/swap!","cljs.core\/conj","cljs.core\/deref","clack.parser.string\/parser","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/parser/transit.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.transit 2 | (:require [clack.parser.protocol :refer [IParser]] 3 | [cognitect.transit :as transit] 4 | )) 5 | 6 | (defrecord TransitParser [] 7 | IParser 8 | (handle-input [this stream complete-fn _] 9 | (let [input (atom "")] 10 | (.on stream "readable" (fn [] 11 | (when-let [chunk (.read stream)] 12 | (swap! input #(str % chunk))))) 13 | (.on stream "end" (fn [] 14 | (complete-fn (transit/read (transit/reader :json) 15 | (str "[" @input "]")))))))) 16 | 17 | (defn parser [] 18 | (->TransitParser)) 19 | -------------------------------------------------------------------------------- /out/clack/parser/transit.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.parser.transit, :imports nil, :requires {clack.parser.protocol clack.parser.protocol, transit cognitect.transit, cognitect.transit cognitect.transit}, :uses {IParser clack.parser.protocol}, :defs {TransitParser {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable clack.parser.protocol/IParser cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.parser.transit/TransitParser, :file "src/clack/parser/transit.cljs", :end-column 25, :type true, :column 12, :internal-ctor true, :line 6, :record true, :end-line 6, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->TransitParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/transit.cljs", :line 6, :column 12, :end-line 6, :end-column 25, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.parser.transit/->TransitParser, :variadic false, :file "src/clack/parser/transit.cljs", :end-column 25, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 6, :end-line 6, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->TransitParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/transit.cljs", :line 6, :column 12, :end-line 6, :end-column 25, :internal-ctor true, :factory :map, :arglists (quote ([G__14870]))}, :name clack.parser.transit/map->TransitParser, :variadic false, :file "src/clack/parser/transit.cljs", :end-column 25, :method-params ([G__14870]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 6, :end-line 6, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__14870]))}, parser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/transit.cljs", :line 17, :column 7, :end-line 17, :end-column 13, :arglists (quote ([]))}, :name clack.parser.transit/parser, :variadic false, :file "src/clack/parser/transit.cljs", :end-column 13, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 17, :end-line 17, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros nil, :cljs.analyzer/constants {:seen #{:json}, :order [:json]}, :doc nil} -------------------------------------------------------------------------------- /out/clack/parser/transit.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/parser\/transit.js","sources":["transit.cljs"],"lineCount":216,"mappings":";AAAA;;;;AAKA,AAAA,AAAA,AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,AAAA,AAAA,AAAA,8EAAA,9EAAWwD;;AAAX,AAAA,AAAA,kGAAA,lGAAWA,6GAEMO,MAAKC,OAAOC,YAAYC;;AAFzC,AAAA,gBAAA,ZAEiBH;AAFjB,AAGI,IAAMI,QAAM,yBAAA,zBAACC;AAAb,AACE,UAAA,VAAKJ,qBAAkB;;AAAA,AACE,IAAAK,qBAAiB,AAAOL;AAAxB,AAAA,oBAAAK;AAAA,AAAA,YAAAA,RAAWC;AAAX,AACE,4CAAA,rCAACE,+BAAML;kBAAPI;AAAA,AAAc,sBAAAA,gCAAOD;;;;AADvB;;;;;AAEzB,iBAAA,VAAKN,gBAAa;;AAAA,AACE,OAACC,sBAAY,AAACQ,iCAAa,mCAAA,nCAACC,0DACD,eAAA,mBAAA,AAAAC,gDAAA,tBAAUR;;;;;AAT\/D,AAAA,AAAA,iFAAA,WAAAnE,mBAAAC,\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","names":["this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k14869","else__7034__auto__","G__14871","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__14868","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__14872","cljs.core\/keyword-identical?","expr__14873","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.parser.transit\/TransitParser","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__14870","clack.parser.transit\/->TransitParser","clack.parser.transit\/map->TransitParser","this","stream","complete-fn","_","input","cljs.core\/atom","temp__4657__auto__","chunk","p1__14867#","cljs.core\/swap!","cognitect.transit\/read","cognitect.transit\/reader","cljs.core\/deref","clack.parser.transit\/parser","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/parser/yaml.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.yaml 2 | (:require [clack.parser.protocol :refer [IParser]])) 3 | 4 | (def js-yaml (js/require "js-yaml")) 5 | 6 | (defrecord YamlParser [] 7 | IParser 8 | (handle-input [this stream complete-fn keywordize?] 9 | (let [input (atom "") 10 | entities (atom [])] 11 | (.on stream "readable" (fn [] 12 | (when-let [chunk (.read stream)] 13 | (swap! input #(str % chunk))))) 14 | (.on stream "end" (fn [] 15 | (complete-fn (map #(js->clj % :keywordize-keys keywordize?) 16 | (.loadAll js-yaml @input)))))))) 17 | 18 | (defn parser [] 19 | (->YamlParser)) 20 | -------------------------------------------------------------------------------- /out/clack/parser/yaml.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.parser.yaml, :imports nil, :requires {clack.parser.protocol clack.parser.protocol}, :uses {IParser clack.parser.protocol}, :defs {js-yaml {:name clack.parser.yaml/js-yaml, :file "src/clack/parser/yaml.cljs", :line 4, :column 1, :end-line 4, :end-column 13, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/yaml.cljs", :line 4, :column 6, :end-line 4, :end-column 13}}, YamlParser {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable clack.parser.protocol/IParser cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.parser.yaml/YamlParser, :file "src/clack/parser/yaml.cljs", :end-column 22, :type true, :column 12, :internal-ctor true, :line 6, :record true, :end-line 6, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->YamlParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/yaml.cljs", :line 6, :column 12, :end-line 6, :end-column 22, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.parser.yaml/->YamlParser, :variadic false, :file "src/clack/parser/yaml.cljs", :end-column 22, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 6, :end-line 6, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->YamlParser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/yaml.cljs", :line 6, :column 12, :end-line 6, :end-column 22, :internal-ctor true, :factory :map, :arglists (quote ([G__14882]))}, :name clack.parser.yaml/map->YamlParser, :variadic false, :file "src/clack/parser/yaml.cljs", :end-column 22, :method-params ([G__14882]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 6, :end-line 6, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__14882]))}, parser {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/parser/yaml.cljs", :line 18, :column 7, :end-line 18, :end-column 13, :arglists (quote ([]))}, :name clack.parser.yaml/parser, :variadic false, :file "src/clack/parser/yaml.cljs", :end-column 13, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 18, :end-line 18, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros nil, :cljs.analyzer/constants {:seen #{:keywordize-keys}, :order [:keywordize-keys]}, :doc nil} -------------------------------------------------------------------------------- /out/clack/parser/yaml.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/parser\/yaml.js","sources":["yaml.cljs"],"lineCount":221,"mappings":";AAAA;;;AAGA,AAAKA,4BAAQ,QAAA,RAACC;AAEd,AAAA,AAAA,AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,AAAA,AAAA,AAAA,wEAAA,xEAAWyD;;AAAX,AAAA,AAAA,4FAAA,5FAAWA,uGAEMO,MAAKC,OAAOC,YAAYC;;AAFzC,AAAA,gBAAA,ZAEiBH;AAFjB,AAGI,IAAMI,QAAM,yBAAA,zBAACC;IACPC,WAAS,yBAAA,zBAACD;AADhB,AAEE,UAAA,VAAKJ,qBAAkB;;AAAA,AACE,IAAAM,qBAAiB,AAAON;AAAxB,AAAA,oBAAAM;AAAA,AAAA,YAAAA,RAAWC;AAAX,AACE,4CAAA,rCAACE,+BAAMN;kBAAPK;AAAA,AAAc,sBAAAA,gCAAOD;;;;AADvB;;;;;AAEzB,iBAAA,VAAKP,gBAAa;;AAAA,AACE,OAACC,sBAAY,wBAAA,xBAACU;kBAADD;AAAA,AAAM,sCAAAA,iBAAA,hDAACE,sFAA2BV;;CAC7B,kCAAA,AAAAW,lCAAU\/E,4DAASqE;;;;;AAV\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","names":["clack.parser.yaml\/js-yaml","js\/require","this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k14881","else__7034__auto__","G__14883","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__14880","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__14884","cljs.core\/keyword-identical?","expr__14885","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.parser.yaml\/YamlParser","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__14882","clack.parser.yaml\/->YamlParser","clack.parser.yaml\/map->YamlParser","this","stream","complete-fn","keywordize?","input","cljs.core\/atom","entities","temp__4657__auto__","chunk","p1__14878#","cljs.core\/swap!","p1__14879#","cljs.core\/map","cljs.core\/js->clj","cljs.core\/deref","clack.parser.yaml\/parser","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/serializer.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer 2 | (:require [clack.serializer.edn :as edn] 3 | [clack.serializer.json :as json] 4 | [clack.serializer.transit :as transit] 5 | [clack.serializer.string :as string] 6 | [clack.serializer.yaml :as yaml] 7 | [clack.serializer.protocol :refer [freeze]])) 8 | 9 | (defn- serializer [input-type] 10 | (condp = input-type 11 | :json (json/serializer) 12 | :str (string/serializer) 13 | :tjs (transit/serializer) 14 | :yaml (yaml/serializer) 15 | (edn/serializer))) 16 | 17 | (defn serialize [input-type data] 18 | (freeze (serializer input-type) data)) 19 | -------------------------------------------------------------------------------- /out/clack/serializer.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.serializer, :imports nil, :requires {json clack.serializer.json, clack.serializer.string clack.serializer.string, clack.serializer.transit clack.serializer.transit, clack.serializer.edn clack.serializer.edn, string clack.serializer.string, yaml clack.serializer.yaml, clack.serializer.json clack.serializer.json, clack.serializer.yaml clack.serializer.yaml, transit clack.serializer.transit, clack.serializer.protocol clack.serializer.protocol, edn clack.serializer.edn}, :uses {freeze clack.serializer.protocol}, :defs {serializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer.cljs", :line 9, :column 8, :end-line 9, :end-column 18, :private true, :arglists (quote ([input-type]))}, :private true, :name clack.serializer/serializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer.cljs", :end-column 18, :method-params ([input-type]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 9, :end-line 9, :max-fixed-arity 1, :fn-var true, :arglists (quote ([input-type]))}, serialize {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer.cljs", :line 17, :column 7, :end-line 17, :end-column 16, :arglists (quote ([input-type data]))}, :name clack.serializer/serialize, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer.cljs", :end-column 16, :method-params ([input-type data]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 17, :end-line 17, :max-fixed-arity 2, :fn-var true, :arglists (quote ([input-type data]))}}, :require-macros nil, :cljs.analyzer/constants {:seen #{:yaml :str :tjs :json}, :order [:json :str :tjs :yaml]}, :doc nil} -------------------------------------------------------------------------------- /out/clack/serializer.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('clack.serializer'); 3 | goog.require('cljs.core'); 4 | goog.require('clack.serializer.json'); 5 | goog.require('clack.serializer.string'); 6 | goog.require('clack.serializer.transit'); 7 | goog.require('clack.serializer.edn'); 8 | goog.require('clack.serializer.yaml'); 9 | goog.require('clack.serializer.protocol'); 10 | clack.serializer.serializer = (function clack$serializer$serializer(input_type){ 11 | var pred__14852 = cljs.core._EQ_; 12 | var expr__14853 = input_type; 13 | if(cljs.core.truth_(pred__14852.call(null,cljs.core.cst$kw$json,expr__14853))){ 14 | return clack.serializer.json.serializer.call(null); 15 | } else { 16 | if(cljs.core.truth_(pred__14852.call(null,cljs.core.cst$kw$str,expr__14853))){ 17 | return clack.serializer.string.serializer.call(null); 18 | } else { 19 | if(cljs.core.truth_(pred__14852.call(null,cljs.core.cst$kw$tjs,expr__14853))){ 20 | return clack.serializer.transit.serializer.call(null); 21 | } else { 22 | if(cljs.core.truth_(pred__14852.call(null,cljs.core.cst$kw$yaml,expr__14853))){ 23 | return clack.serializer.yaml.serializer.call(null); 24 | } else { 25 | return clack.serializer.edn.serializer.call(null); 26 | } 27 | } 28 | } 29 | } 30 | }); 31 | clack.serializer.serialize = (function clack$serializer$serialize(input_type,data){ 32 | return clack.serializer.protocol.freeze.call(null,clack.serializer.serializer.call(null,input_type),data); 33 | }); 34 | 35 | //# sourceMappingURL=serializer.js.map -------------------------------------------------------------------------------- /out/clack/serializer.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/serializer.js","sources":["serializer.cljs"],"lineCount":35,"mappings":";AAAA;;;;;;;;AAQA,8BAAA,9BAAOA,oEAAYC;AAAnB,AACE,IAAAC,cAAOE;IAAPD,cAASF;AAAT,AAAA,oBAAA,AAAAC,sBAAA,sBAAAC;AACQ,OAACE;;AADT,oBAAA,AAAAH,sBAAA,qBAAAC;AAEO,OAACG;;AAFR,oBAAA,AAAAJ,sBAAA,qBAAAC;AAGO,OAACI;;AAHR,oBAAA,AAAAL,sBAAA,sBAAAC;AAIQ,OAACK;;AACP,OAACC;;;;;;AAEL,6BAAA,7BAAMC,kEAAWT,WAAWU;AAA5B,AACE,OAACC,2CAAO,AAACZ,sCAAWC,YAAYU","names":["clack.serializer\/serializer","input-type","pred__14852","expr__14853","cljs.core\/=","clack.serializer.json\/serializer","clack.serializer.string\/serializer","clack.serializer.transit\/serializer","clack.serializer.yaml\/serializer","clack.serializer.edn\/serializer","clack.serializer\/serialize","data","clack.serializer.protocol\/freeze"]} -------------------------------------------------------------------------------- /out/clack/serializer/edn.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.edn 2 | (:require [clack.serializer.protocol :refer [ISerializer]] 3 | [cljs.tools.reader :refer [read-string]] 4 | [cljs.pprint :refer [pprint]] 5 | [clojure.string :as s])) 6 | 7 | (defrecord EdnSerializer [] 8 | ISerializer 9 | (freeze [this data] 10 | (s/replace (with-out-str (pprint data)) #"\n+$" ""))) 11 | 12 | (defn serializer [] 13 | (->EdnSerializer)) 14 | -------------------------------------------------------------------------------- /out/clack/serializer/edn.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.serializer.edn, :imports nil, :requires {clack.serializer.protocol clack.serializer.protocol, cljs.tools.reader cljs.tools.reader, cljs.pprint cljs.pprint, s clojure.string, clojure.string clojure.string}, :uses {pprint cljs.pprint, ISerializer clack.serializer.protocol, read-string cljs.tools.reader}, :defs {EdnSerializer {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection clack.serializer.protocol/ISerializer cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.serializer.edn/EdnSerializer, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/edn.cljs", :end-column 25, :type true, :column 12, :internal-ctor true, :line 7, :record true, :end-line 7, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->EdnSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/edn.cljs", :line 7, :column 12, :end-line 7, :end-column 25, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.serializer.edn/->EdnSerializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/edn.cljs", :end-column 25, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 7, :end-line 7, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->EdnSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/edn.cljs", :line 7, :column 12, :end-line 7, :end-column 25, :internal-ctor true, :factory :map, :arglists (quote ([G__14817]))}, :name clack.serializer.edn/map->EdnSerializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/edn.cljs", :end-column 25, :method-params ([G__14817]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 7, :end-line 7, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__14817]))}, serializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/edn.cljs", :line 12, :column 7, :end-line 12, :end-column 17, :arglists (quote ([]))}, :name clack.serializer.edn/serializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/edn.cljs", :end-column 17, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 12, :end-line 12, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros {cljs.pprint cljs.pprint}, :doc nil} -------------------------------------------------------------------------------- /out/clack/serializer/edn.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/serializer\/edn.js","sources":["edn.cljs"],"lineCount":214,"mappings":"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","names":["this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k14816","else__7034__auto__","G__14818","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__14815","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__14821","cljs.core\/keyword-identical?","expr__14822","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.serializer.edn\/EdnSerializer","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__14817","clack.serializer.edn\/->EdnSerializer","clack.serializer.edn\/map->EdnSerializer","this","data","clojure.string\/replace","sb__7395__auto__","js\/goog.string.StringBuffer","*print-newline*14819","cljs.core\/*print-newline*","*print-fn*14820","cljs.core\/*print-fn*","x__7396__auto__","cljs.pprint\/pprint","clack.serializer.edn\/serializer","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/serializer/json.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.json 2 | (:require [clack.serializer.protocol :refer [ISerializer]])) 3 | 4 | (def jsonparse (js/require "jsonparse")) 5 | 6 | (defrecord JsonSerializer [] 7 | ISerializer 8 | (freeze [this data] 9 | (js/JSON.stringify (clj->js data)))) 10 | 11 | (defn serializer [] 12 | (->JsonSerializer)) 13 | -------------------------------------------------------------------------------- /out/clack/serializer/json.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.serializer.json, :imports nil, :requires {clack.serializer.protocol clack.serializer.protocol}, :uses {ISerializer clack.serializer.protocol}, :defs {jsonparse {:name clack.serializer.json/jsonparse, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/json.cljs", :line 4, :column 1, :end-line 4, :end-column 15, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/json.cljs", :line 4, :column 6, :end-line 4, :end-column 15}}, JsonSerializer {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection clack.serializer.protocol/ISerializer cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.serializer.json/JsonSerializer, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/json.cljs", :end-column 26, :type true, :column 12, :internal-ctor true, :line 6, :record true, :end-line 6, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->JsonSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/json.cljs", :line 6, :column 12, :end-line 6, :end-column 26, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.serializer.json/->JsonSerializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/json.cljs", :end-column 26, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 6, :end-line 6, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->JsonSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/json.cljs", :line 6, :column 12, :end-line 6, :end-column 26, :internal-ctor true, :factory :map, :arglists (quote ([G__14831]))}, :name clack.serializer.json/map->JsonSerializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/json.cljs", :end-column 26, :method-params ([G__14831]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 6, :end-line 6, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__14831]))}, serializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/json.cljs", :line 11, :column 7, :end-line 11, :end-column 17, :arglists (quote ([]))}, :name clack.serializer.json/serializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/json.cljs", :end-column 17, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 11, :end-line 11, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros nil, :doc nil} -------------------------------------------------------------------------------- /out/clack/serializer/json.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/serializer\/json.js","sources":["json.cljs"],"lineCount":195,"mappings":"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","names":["clack.serializer.json\/jsonparse","js\/require","this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k14830","else__7034__auto__","G__14832","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__14829","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__14833","cljs.core\/keyword-identical?","expr__14834","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.serializer.json\/JsonSerializer","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__14831","clack.serializer.json\/->JsonSerializer","clack.serializer.json\/map->JsonSerializer","this","data","js\/JSON.stringify","cljs.core\/clj->js","clack.serializer.json\/serializer","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/serializer/protocol.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.protocol) 2 | 3 | (defprotocol ISerializer 4 | (freeze [this data])) 5 | -------------------------------------------------------------------------------- /out/clack/serializer/protocol.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.serializer.protocol, :imports nil, :requires nil, :uses nil, :defs {ISerializer {:meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/protocol.cljs", :line 3, :column 14, :end-line 3, :end-column 25, :doc nil, :protocol-symbol true, :jsdoc ("@interface"), :protocol-info {:methods {freeze [[this data]]}}}, :protocol-symbol true, :name clack.serializer.protocol/ISerializer, :file "src/clack/serializer/protocol.cljs", :end-column 25, :column 1, :line 3, :protocol-info {:methods {freeze [[this data]]}}, :info nil, :end-line 3, :impls #{}, :doc nil, :jsdoc ("@interface")}, freeze {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/protocol.cljs", :line 4, :column 4, :end-line 4, :end-column 10, :protocol clack.serializer.protocol/ISerializer, :doc nil, :arglists (quote ([this data]))}, :protocol clack.serializer.protocol/ISerializer, :name clack.serializer.protocol/freeze, :variadic false, :file "src/clack/serializer/protocol.cljs", :end-column 10, :method-params ([this data]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 3, :end-line 4, :max-fixed-arity 2, :fn-var true, :arglists (quote ([this data])), :doc nil}}, :require-macros nil, :doc nil} -------------------------------------------------------------------------------- /out/clack/serializer/protocol.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('clack.serializer.protocol'); 3 | goog.require('cljs.core'); 4 | 5 | /** 6 | * @interface 7 | */ 8 | clack.serializer.protocol.ISerializer = function(){}; 9 | 10 | clack.serializer.protocol.freeze = (function clack$serializer$protocol$freeze(this$,data){ 11 | if((!((this$ == null))) && (!((this$.clack$serializer$protocol$ISerializer$freeze$arity$2 == null)))){ 12 | return this$.clack$serializer$protocol$ISerializer$freeze$arity$2(this$,data); 13 | } else { 14 | var x__7072__auto__ = (((this$ == null))?null:this$); 15 | var m__7073__auto__ = (clack.serializer.protocol.freeze[goog.typeOf(x__7072__auto__)]); 16 | if(!((m__7073__auto__ == null))){ 17 | return m__7073__auto__.call(null,this$,data); 18 | } else { 19 | var m__7073__auto____$1 = (clack.serializer.protocol.freeze["_"]); 20 | if(!((m__7073__auto____$1 == null))){ 21 | return m__7073__auto____$1.call(null,this$,data); 22 | } else { 23 | throw cljs.core.missing_protocol.call(null,"ISerializer.freeze",this$); 24 | } 25 | } 26 | } 27 | }); 28 | 29 | 30 | //# sourceMappingURL=protocol.js.map -------------------------------------------------------------------------------- /out/clack/serializer/protocol.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/serializer\/protocol.js","sources":["protocol.cljs"],"lineCount":30,"mappings":";AAAA;;AAEA,AAAA;AAAA;;;wCAAA,xCAAaK;;AAAb,mCAAA,nCACGC,8EAAQC,MAAKC;AADhB,AAAA,GAAA,CAAA,EAAA,UAAA,YAAA,EAAA,CAAA,8DAAA,tFACWD,wBAAAA;AADX,OACWA,2DAAAA,MAAKC;;AADhB,IAAAR,kBAAA,EAAA,UAAA,OAAA,hBACWO,qBAAAA;IADXN,kBAAA,CAAAC,iCAAA,AAAAC,YAAAH;AAAA,AAAA,GAAA,EAAA,CAAAC,mBAAA;AAAA,OAAAA,0BACWM,MAAKC;;AADhB,IAAAP,sBAAA,CAAAC,iCAAA;AAAA,AAAA,GAAA,EAAA,CAAAD,uBAAA;AAAA,OAAAA,8BACWM,MAAKC;;AADhB,MAAA,AAAAJ,qCAAA,qBACWG;;;;;;AADX","names":["x__7072__auto__","m__7073__auto__","clack\/serializer.protocol.freeze","goog\/typeOf","cljs.core\/missing-protocol","clack.serializer.protocol\/ISerializer","clack.serializer.protocol\/freeze","this","data"]} -------------------------------------------------------------------------------- /out/clack/serializer/string.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.string 2 | (:require [clack.serializer.protocol :refer [ISerializer]] 3 | [cljs.tools.reader :refer [read-string]] 4 | [cljs.pprint :refer [pprint]] 5 | [clojure.string :as s])) 6 | 7 | (defrecord StringSerializer [] 8 | ISerializer 9 | (freeze [this data] 10 | (str data))) 11 | 12 | (defn serializer [] 13 | (->StringSerializer)) 14 | -------------------------------------------------------------------------------- /out/clack/serializer/string.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.serializer.string, :imports nil, :requires {clack.serializer.protocol clack.serializer.protocol, cljs.tools.reader cljs.tools.reader, cljs.pprint cljs.pprint, s clojure.string, clojure.string clojure.string}, :uses {pprint cljs.pprint, ISerializer clack.serializer.protocol, read-string cljs.tools.reader}, :defs {StringSerializer {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection clack.serializer.protocol/ISerializer cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.serializer.string/StringSerializer, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/string.cljs", :end-column 28, :type true, :column 12, :internal-ctor true, :line 7, :record true, :end-line 7, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->StringSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/string.cljs", :line 7, :column 12, :end-line 7, :end-column 28, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.serializer.string/->StringSerializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/string.cljs", :end-column 28, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 7, :end-line 7, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->StringSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/string.cljs", :line 7, :column 12, :end-line 7, :end-column 28, :internal-ctor true, :factory :map, :arglists (quote ([G__14778]))}, :name clack.serializer.string/map->StringSerializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/string.cljs", :end-column 28, :method-params ([G__14778]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 7, :end-line 7, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__14778]))}, serializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/string.cljs", :line 12, :column 7, :end-line 12, :end-column 17, :arglists (quote ([]))}, :name clack.serializer.string/serializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/string.cljs", :end-column 17, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 12, :end-line 12, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros {cljs.pprint cljs.pprint}, :doc nil} -------------------------------------------------------------------------------- /out/clack/serializer/string.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/serializer\/string.js","sources":["string.cljs"],"lineCount":197,"mappings":"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","names":["this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k14777","else__7034__auto__","G__14779","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__14776","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__14780","cljs.core\/keyword-identical?","expr__14781","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.serializer.string\/StringSerializer","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__14778","clack.serializer.string\/->StringSerializer","clack.serializer.string\/map->StringSerializer","this","data","clack.serializer.string\/serializer","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/serializer/transit.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.transit 2 | (:require [clack.serializer.protocol :refer [ISerializer]] 3 | [cognitect.transit :as transit] 4 | )) 5 | 6 | (defrecord TransitSerializer [] 7 | ISerializer 8 | (freeze [this data] 9 | (transit/write (transit/writer :json) data))) 10 | 11 | (defn serializer [] 12 | (->TransitSerializer)) 13 | -------------------------------------------------------------------------------- /out/clack/serializer/transit.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.serializer.transit, :imports nil, :requires {clack.serializer.protocol clack.serializer.protocol, transit cognitect.transit, cognitect.transit cognitect.transit}, :uses {ISerializer clack.serializer.protocol}, :defs {TransitSerializer {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection clack.serializer.protocol/ISerializer cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.serializer.transit/TransitSerializer, :file "src/clack/serializer/transit.cljs", :end-column 29, :type true, :column 12, :internal-ctor true, :line 6, :record true, :end-line 6, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->TransitSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/transit.cljs", :line 6, :column 12, :end-line 6, :end-column 29, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.serializer.transit/->TransitSerializer, :variadic false, :file "src/clack/serializer/transit.cljs", :end-column 29, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 6, :end-line 6, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->TransitSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/transit.cljs", :line 6, :column 12, :end-line 6, :end-column 29, :internal-ctor true, :factory :map, :arglists (quote ([G__14807]))}, :name clack.serializer.transit/map->TransitSerializer, :variadic false, :file "src/clack/serializer/transit.cljs", :end-column 29, :method-params ([G__14807]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 6, :end-line 6, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__14807]))}, serializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/transit.cljs", :line 11, :column 7, :end-line 11, :end-column 17, :arglists (quote ([]))}, :name clack.serializer.transit/serializer, :variadic false, :file "src/clack/serializer/transit.cljs", :end-column 17, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 11, :end-line 11, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros nil, :cljs.analyzer/constants {:seen #{:json}, :order [:json]}, :doc nil} -------------------------------------------------------------------------------- /out/clack/serializer/transit.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/serializer\/transit.js","sources":["transit.cljs"],"lineCount":195,"mappings":"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","names":["this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k14806","else__7034__auto__","G__14808","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__14805","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__14809","cljs.core\/keyword-identical?","expr__14810","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.serializer.transit\/TransitSerializer","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__14807","clack.serializer.transit\/->TransitSerializer","clack.serializer.transit\/map->TransitSerializer","this","data","cognitect.transit\/write","cognitect.transit\/writer","clack.serializer.transit\/serializer","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/serializer/yaml.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.yaml 2 | (:require [clack.serializer.protocol :refer [ISerializer]])) 3 | 4 | (def js-yaml (js/require "js-yaml")) 5 | 6 | (defrecord YamlSerializer [] 7 | ISerializer 8 | (freeze [this data] 9 | (str "---\n" (.dump js-yaml (clj->js data))))) 10 | 11 | (defn serializer [] 12 | (->YamlSerializer)) 13 | -------------------------------------------------------------------------------- /out/clack/serializer/yaml.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.serializer.yaml, :imports nil, :requires {clack.serializer.protocol clack.serializer.protocol}, :uses {ISerializer clack.serializer.protocol}, :defs {js-yaml {:name clack.serializer.yaml/js-yaml, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/yaml.cljs", :line 4, :column 1, :end-line 4, :end-column 13, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/yaml.cljs", :line 4, :column 6, :end-line 4, :end-column 13}}, YamlSerializer {:num-fields 0, :protocols #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection clack.serializer.protocol/ISerializer cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IIterable cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}, :name clack.serializer.yaml/YamlSerializer, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/yaml.cljs", :end-column 26, :type true, :column 12, :internal-ctor true, :line 6, :record true, :end-line 6, :skip-protocol-flag #{cljs.core/IRecord cljs.core/IEquiv cljs.core/IHash cljs.core/ICollection cljs.core/ICounted cljs.core/ISeqable cljs.core/IMeta cljs.core/ICloneable cljs.core/IPrintWithWriter cljs.core/IWithMeta cljs.core/IAssociative cljs.core/IMap cljs.core/ILookup}}, ->YamlSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/yaml.cljs", :line 6, :column 12, :end-line 6, :end-column 26, :internal-ctor true, :factory :positional, :arglists (quote ([]))}, :name clack.serializer.yaml/->YamlSerializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/yaml.cljs", :end-column 26, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :positional, :line 6, :end-line 6, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}, map->YamlSerializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/yaml.cljs", :line 6, :column 12, :end-line 6, :end-column 26, :internal-ctor true, :factory :map, :arglists (quote ([G__14841]))}, :name clack.serializer.yaml/map->YamlSerializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/yaml.cljs", :end-column 26, :method-params ([G__14841]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :internal-ctor true, :factory :map, :line 6, :end-line 6, :max-fixed-arity 1, :fn-var true, :arglists (quote ([G__14841]))}, serializer {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/yaml.cljs", :line 11, :column 7, :end-line 11, :end-column 17, :arglists (quote ([]))}, :name clack.serializer.yaml/serializer, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/serializer/yaml.cljs", :end-column 17, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 11, :end-line 11, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros nil, :doc nil} -------------------------------------------------------------------------------- /out/clack/serializer/yaml.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/serializer\/yaml.js","sources":["yaml.cljs"],"lineCount":195,"mappings":"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","names":["clack.serializer.yaml\/js-yaml","js\/require","this__7031__auto__","k__7032__auto__","cljs.core\/-lookup","this__7033__auto__","k14840","else__7034__auto__","G__14842","cljs.core\/get","__extmap","this__7045__auto__","writer__7046__auto__","opts__7047__auto__","pr-pair__7048__auto__","keyval__7049__auto__","cljs.core\/pr-sequential-writer","cljs.core\/pr-writer","cljs.core\/concat","G__14839","cljs.core\/RecordIter","cljs.core\/-iterator","this__7029__auto__","__meta","this__7025__auto__","__hash","this__7035__auto__","cljs.core\/count","this__7026__auto__","h__6844__auto__","cljs.core\/hash-imap","this__7027__auto__","other__7028__auto__","and__6397__auto__","cljs.core\/equiv-map","this__7040__auto__","k__7041__auto__","cljs.core\/contains?","cljs.core\/dissoc","cljs.core\/with-meta","cljs.core\/into","cljs.core\/not-empty","this__7038__auto__","k__7039__auto__","pred__14843","cljs.core\/keyword-identical?","expr__14844","cljs.core\/assoc","this__7043__auto__","cljs.core\/seq","this__7030__auto__","this__7036__auto__","entry__7037__auto__","cljs.core\/vector?","cljs.core\/-assoc","cljs.core\/-nth","cljs.core\/reduce","cljs.core\/-conj","clack.serializer.yaml\/YamlSerializer","this__7065__auto__","writer__7066__auto__","cljs.core\/-write","G__14841","clack.serializer.yaml\/->YamlSerializer","clack.serializer.yaml\/map->YamlSerializer","this","data","cljs.core\/clj->js","clack.serializer.yaml\/serializer","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/clack/util.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.util 2 | (:require [cljs.js :refer [eval js-eval empty-state]] 3 | [cljs.tools.reader :refer [read-string]] 4 | [cljs.pprint :refer [pprint]] 5 | [cognitect.transit :as transit] 6 | [clojure.string :as s])) 7 | 8 | (defonce formats {:js :json :json :json 9 | :transit :tjs :transit-js :tjs :tjs :tjs 10 | :string :str :str :str :s :str 11 | :yaml :yaml :yml :yaml 12 | :edn :edn}) 13 | 14 | (defn error 15 | "log error and exit with error code" 16 | [msg] 17 | (js/console.error msg) 18 | (js/process.exit 1)) 19 | 20 | (defn slurp [filename] 21 | (js/require "fs") 22 | (js/fs.readFileSync filename)) 23 | 24 | (defn eval* 25 | "evaluate string" 26 | [s] 27 | (eval (empty-state) 28 | (read-string s) 29 | {:eval js-eval 30 | :source-map true 31 | :context :expr} 32 | identity)) 33 | 34 | 35 | (defn input-format [meta] 36 | (get formats (get meta :input-format) :edn)) 37 | 38 | (defn output-format [meta] 39 | (get formats (get meta :output-format) :edn)) 40 | 41 | -------------------------------------------------------------------------------- /out/clack/util.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name clack.util, :imports nil, :requires {cljs.js cljs.js, cljs.tools.reader cljs.tools.reader, cljs.pprint cljs.pprint, transit cognitect.transit, cognitect.transit cognitect.transit, s clojure.string, clojure.string clojure.string}, :uses {pprint cljs.pprint, eval cljs.js, empty-state cljs.js, read-string cljs.tools.reader, js-eval cljs.js}, :defs {formats {:name clack.util/formats, :file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :line 8, :column 1, :end-line 8, :end-column 17, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :line 8, :column 10, :end-line 8, :end-column 17}}, error {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :line 14, :column 7, :end-line 14, :end-column 12, :arglists (quote ([msg])), :doc "log error and exit with error code"}, :name clack.util/error, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :end-column 12, :method-params ([msg]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 14, :end-line 14, :max-fixed-arity 1, :fn-var true, :arglists (quote ([msg])), :doc "log error and exit with error code"}, slurp {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :line 20, :column 7, :end-line 20, :end-column 12, :arglists (quote ([filename]))}, :name clack.util/slurp, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :end-column 12, :method-params ([filename]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 20, :end-line 20, :max-fixed-arity 1, :fn-var true, :arglists (quote ([filename]))}, eval* {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :line 24, :column 7, :end-line 24, :end-column 12, :arglists (quote ([s])), :doc "evaluate string"}, :name clack.util/eval*, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :end-column 12, :method-params ([s]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 24, :end-line 24, :max-fixed-arity 1, :fn-var true, :arglists (quote ([s])), :doc "evaluate string"}, input-format {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :line 35, :column 7, :end-line 35, :end-column 19, :arglists (quote ([meta]))}, :name clack.util/input-format, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :end-column 19, :method-params ([meta]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 35, :end-line 35, :max-fixed-arity 1, :fn-var true, :arglists (quote ([meta]))}, output-format {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :line 38, :column 7, :end-line 38, :end-column 20, :arglists (quote ([meta]))}, :name clack.util/output-format, :variadic false, :file "/Users/clumsyjedi/workspace/clack/src/clack/util.cljs", :end-column 20, :method-params ([meta]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 38, :end-line 38, :max-fixed-arity 1, :fn-var true, :arglists (quote ([meta]))}}, :require-macros {cljs.js cljs.js, cljs.pprint cljs.pprint}, :cljs.analyzer/constants {:seen #{:js :input-format :yml :output-format :string :s :yaml :str :expr :tjs :transit :edn :source-map :context :json :transit-js :eval}, :order [:js :yml :string :s :yaml :str :tjs :transit :edn :json :transit-js :eval :source-map :context :expr :input-format :output-format]}, :doc nil} -------------------------------------------------------------------------------- /out/clack/util.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('clack.util'); 3 | goog.require('cljs.core'); 4 | goog.require('cljs.js'); 5 | goog.require('cljs.tools.reader'); 6 | goog.require('cljs.pprint'); 7 | goog.require('cognitect.transit'); 8 | goog.require('clojure.string'); 9 | if(typeof clack.util.formats !== 'undefined'){ 10 | } else { 11 | clack.util.formats = cljs.core.PersistentHashMap.fromArrays([cljs.core.cst$kw$js,cljs.core.cst$kw$yml,cljs.core.cst$kw$string,cljs.core.cst$kw$s,cljs.core.cst$kw$yaml,cljs.core.cst$kw$str,cljs.core.cst$kw$tjs,cljs.core.cst$kw$transit,cljs.core.cst$kw$edn,cljs.core.cst$kw$json,cljs.core.cst$kw$transit_DASH_js],[cljs.core.cst$kw$json,cljs.core.cst$kw$yaml,cljs.core.cst$kw$str,cljs.core.cst$kw$str,cljs.core.cst$kw$yaml,cljs.core.cst$kw$str,cljs.core.cst$kw$tjs,cljs.core.cst$kw$tjs,cljs.core.cst$kw$edn,cljs.core.cst$kw$json,cljs.core.cst$kw$tjs]); 12 | } 13 | /** 14 | * log error and exit with error code 15 | */ 16 | clack.util.error = (function clack$util$error(msg){ 17 | console.error(msg); 18 | 19 | return process.exit((1)); 20 | }); 21 | clack.util.slurp = (function clack$util$slurp(filename){ 22 | require("fs"); 23 | 24 | return fs.readFileSync(filename); 25 | }); 26 | /** 27 | * evaluate string 28 | */ 29 | clack.util.eval_STAR_ = (function clack$util$eval_STAR_(s){ 30 | return cljs.js.eval.call(null,cljs.js.empty_state.call(null),cljs.tools.reader.read_string.call(null,s),new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$eval,cljs.js.js_eval,cljs.core.cst$kw$source_DASH_map,true,cljs.core.cst$kw$context,cljs.core.cst$kw$expr], null),cljs.core.identity); 31 | }); 32 | clack.util.input_format = (function clack$util$input_format(meta){ 33 | return cljs.core.get.call(null,clack.util.formats,cljs.core.get.call(null,meta,cljs.core.cst$kw$input_DASH_format),cljs.core.cst$kw$edn); 34 | }); 35 | clack.util.output_format = (function clack$util$output_format(meta){ 36 | return cljs.core.get.call(null,clack.util.formats,cljs.core.get.call(null,meta,cljs.core.cst$kw$output_DASH_format),cljs.core.cst$kw$edn); 37 | }); 38 | 39 | //# sourceMappingURL=util.js.map -------------------------------------------------------------------------------- /out/clack/util.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clack\/util.js","sources":["util.cljs"],"lineCount":39,"mappings":";AAAA;;;;;;;AAOA,GAAA,OAASA;AAAT;AAAA,AAAA,qBAAA,wCAAA,oBAAA,qBAAA,wBAAA,mBAAA,sBAAA,qBAAA,qBAAA,yBAAA,qBAAA,sBAAA,mCAAA,sBAAA,sBAAA,qBAAA,qBAAA,sBAAA,qBAAA,qBAAA,qBAAA,qBAAA,sBAAA,9gBAASA;;AAMT;;;mBAAA,nBAAMC,8CAEHC;AAFH,AAGE,AAACC,cAAiBD;;AAClB,oBAAA,bAACE;;AAEH,mBAAA,nBAAMC,8CAAOC;AAAb,AACE,QAAA,RAACC;;AACD,OAACC,gBAAmBF;;AAEtB;;;wBAAA,xBAAMG,wDAEHC;AAFH,AAGE,wGAAA,2CAAA,sCAAA,iCAAA,KAAA,yBAAA,jPAACC,uBAAK,AAACC,+BACD,AAACC,wCAAYH,oEACAI,6GAGbC;;AAGR,0BAAA,1BAAMC,4DAAcC;AAApB,AACE,mHAAA,5GAACC,wBAAIlB,mBAAQ,6BAAA,7BAACkB,wBAAID;;AAEpB,2BAAA,3BAAME,8DAAeF;AAArB,AACE,oHAAA,7GAACC,wBAAIlB,mBAAQ,6BAAA,7BAACkB,wBAAID","names":["clack.util\/formats","clack.util\/error","msg","js\/console.error","js\/process.exit","clack.util\/slurp","filename","js\/require","js\/fs.readFileSync","clack.util\/eval*","s","cljs.js\/eval","cljs.js\/empty-state","cljs.tools.reader\/read-string","cljs.js\/js-eval","cljs.core\/identity","clack.util\/input-format","meta","cljs.core\/get","clack.util\/output-format"]} -------------------------------------------------------------------------------- /out/cljs/env.cljc: -------------------------------------------------------------------------------- 1 | ; Copyright (c) Rich Hickey. All rights reserved. 2 | ; The use and distribution terms for this software are covered by the 3 | ; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) 4 | ; which can be found in the file epl-v10.html at the root of this distribution. 5 | ; By using this software in any fashion, you are agreeing to be bound by 6 | ; the terms of this license. 7 | ; You must not remove this notice, or any other, from this software. 8 | 9 | (ns ^{:doc "A namespace that exists solely to provide a place for \"compiler\" 10 | state that is accessed/maintained by many different components."} 11 | cljs.env 12 | #?(:clj (:require [cljs.js-deps :refer (js-dependency-index)])) 13 | (:refer-clojure :exclude [ensure])) 14 | 15 | ;; bit of a misnomer, but: an atom containing a map that serves as the bag of 16 | ;; state for the compiler, writ large (including analyzer, emitter, and 17 | ;; optimization stages). Each namespace has its own local var, to accommodate 18 | ;; multiple (lower-level) entry points. Any state needed by the compiler across 19 | ;; multiple applications should be put into this map/atom. Aside from 20 | ;; unfortunate current implementation details (e.g. depending on filesystem 21 | ;; state for certain things), the compiler should be idempotent with regard to 22 | ;; the environment passed to any entry point. 23 | ;; 24 | ;; Known slots in the compiler-env map: 25 | ;; 26 | ;; * :options - the [options] map argument, provided to this fn (defaults to {}) 27 | ;; * :js-dependency-index - result from calling cljs.js-deps/js-dependency-index 28 | ;; with [options] 29 | ;; * :cljs.analyzer/constant-table - map of (currently only keyword) constant 30 | ;; values to fixed ids 31 | ;; * :cljs.analyzer/namespaces - map of symbols to "namespace" maps 32 | ;; * :cljs.compiler/compiled-cljs - cache of intermediate compilation results 33 | ;; that speeds incremental builds in conjunction with source map generation 34 | ;; * :cljs.closure/compiled-cljs - cache from js file path to map of 35 | ;; {:file .. :provides .. :requires ..} 36 | ;; 37 | ;; Note that this var is functionally private to the compiler, and contains 38 | ;; implementation-dependent data. 39 | (def ^:dynamic *compiler* nil) 40 | 41 | (defn default-compiler-env 42 | ([] (default-compiler-env {})) 43 | ([options] 44 | (atom (merge {:cljs.analyzer/namespaces {'cljs.user {:name 'cljs.user}} 45 | :cljs.analyzer/constant-table {} 46 | :options options} 47 | #?(:clj {:js-dependency-index (js-dependency-index options)}))))) 48 | 49 | #?(:clj 50 | (defmacro with-compiler-env 51 | "Evaluates [body] with [env] bound as the value of the `*compiler*` var in 52 | this namespace." 53 | [env & body] 54 | `(let [env# ~env 55 | env# (cond 56 | (map? env#) (atom env#) 57 | (and (instance? clojure.lang.Atom env#) 58 | (map? @env#)) env# 59 | :default (throw (IllegalArgumentException. 60 | (str "Compiler environment must be a map or atom containing a map, not " 61 | (class env#)))))] 62 | (binding [*compiler* env#] ~@body)))) 63 | 64 | #?(:clj 65 | (defmacro ensure 66 | [& body] 67 | `(let [val# *compiler*] 68 | (if (nil? val#) 69 | (push-thread-bindings 70 | (hash-map (var *compiler*) (default-compiler-env)))) 71 | (try 72 | ~@body 73 | (finally 74 | (if (nil? val#) 75 | (pop-thread-bindings))))))) 76 | -------------------------------------------------------------------------------- /out/cljs/env.cljc.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{ensure}, :name cljs.env, :imports nil, :requires nil, :uses nil, :defs {*compiler* {:name cljs.env/*compiler*, :file "out/cljs/env.cljc", :line 39, :column 1, :end-line 39, :end-column 26, :dynamic true, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/env.cljc", :line 39, :column 16, :end-line 39, :end-column 26, :dynamic true}}, default-compiler-env {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/env.cljc", :line 41, :column 7, :end-line 41, :end-column 27, :arglists (quote ([] [options])), :top-fn {:variadic false, :max-fixed-arity 1, :method-params ([] [options]), :arglists ([] [options]), :arglists-meta (nil nil)}}, :name cljs.env/default-compiler-env, :variadic false, :file "out/cljs/env.cljc", :end-column 27, :top-fn {:variadic false, :max-fixed-arity 1, :method-params ([] [options]), :arglists ([] [options]), :arglists-meta (nil nil)}, :method-params ([] [options]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 41, :end-line 41, :max-fixed-arity 1, :fn-var true, :arglists ([] [options])}}, :require-macros nil, :cljs.analyzer/constants {:seen #{:cljs.analyzer/namespaces :name :cljs.analyzer/constant-table :options cljs.user}, :order [:cljs.analyzer/namespaces :cljs.analyzer/constant-table :options cljs.user :name]}, :doc "A namespace that exists solely to provide a place for \"compiler\"\nstate that is accessed/maintained by many different components."} -------------------------------------------------------------------------------- /out/cljs/env.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('cljs.env'); 3 | goog.require('cljs.core'); 4 | cljs.env._STAR_compiler_STAR_ = null; 5 | cljs.env.default_compiler_env = (function cljs$env$default_compiler_env(var_args){ 6 | var args7861 = []; 7 | var len__7484__auto___7864 = arguments.length; 8 | var i__7485__auto___7865 = (0); 9 | while(true){ 10 | if((i__7485__auto___7865 < len__7484__auto___7864)){ 11 | args7861.push((arguments[i__7485__auto___7865])); 12 | 13 | var G__7866 = (i__7485__auto___7865 + (1)); 14 | i__7485__auto___7865 = G__7866; 15 | continue; 16 | } else { 17 | } 18 | break; 19 | } 20 | 21 | var G__7863 = args7861.length; 22 | switch (G__7863) { 23 | case 0: 24 | return cljs.env.default_compiler_env.cljs$core$IFn$_invoke$arity$0(); 25 | 26 | break; 27 | case 1: 28 | return cljs.env.default_compiler_env.cljs$core$IFn$_invoke$arity$1((arguments[(0)])); 29 | 30 | break; 31 | default: 32 | throw (new Error([cljs.core.str("Invalid arity: "),cljs.core.str(args7861.length)].join(''))); 33 | 34 | } 35 | }); 36 | 37 | cljs.env.default_compiler_env.cljs$core$IFn$_invoke$arity$0 = (function (){ 38 | return cljs.env.default_compiler_env.call(null,cljs.core.PersistentArrayMap.EMPTY); 39 | }); 40 | 41 | cljs.env.default_compiler_env.cljs$core$IFn$_invoke$arity$1 = (function (options){ 42 | return cljs.core.atom.call(null,cljs.core.merge.call(null,new cljs.core.PersistentArrayMap(null, 3, [cljs.core.cst$kw$cljs$analyzer_SLASH_namespaces,new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$sym$cljs$user,new cljs.core.PersistentArrayMap(null, 1, [cljs.core.cst$kw$name,cljs.core.cst$sym$cljs$user], null)], null),cljs.core.cst$kw$cljs$analyzer_SLASH_constant_DASH_table,cljs.core.PersistentArrayMap.EMPTY,cljs.core.cst$kw$options,options], null))); 43 | }); 44 | 45 | cljs.env.default_compiler_env.cljs$lang$maxFixedArity = 1; 46 | 47 | 48 | //# sourceMappingURL=env.js.map -------------------------------------------------------------------------------- /out/cljs/env.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/cljs\/env.js","sources":["env.cljc"],"lineCount":48,"mappings":";AAQA;;AA8BA,gCAAA,hCAAeA;AAEf,AAAA,gCAAA,wCAAAC,xEAAMK;AAAN,AAAA,IAAAJ,WAAA;AAAA,AAAA,IAAAC,yBAAA,AAAA;AAAA,AAAA,IAAAC,uBAAA;;AAAA,AAAA,GAAA,CAAAA,uBAAAD;AAAA,AAAA,AAAAD,cAAA,CAAA,UAAAE;;AAAA,cAAA,CAAAA,uBAAA;;;;AAAA;;;;AAAA,IAAAC,UAAA,AAAAH;AAAA,AAAA,QAAAG;KAAA;AAAA,OAAAC;;;KAAA;AAAA,OAAAA,4DAAA,CAAA,UAAA;;;;AAAA,MAAA,KAAAC,MAAA,eAAA,iCAAA,AAAAL;;;;;AAAA,AAAA,8DAAA,9DAAMI;AAAN,AACM,+CAAA,xCAACA;;;AADP,AAAA,8DAAA,9DAAMA,yEAEFE;AAFJ,AAGK,OAACC,yBAAK,0BAAA,2CAAA,gDAAA,2CAAA,4BAAA,2CAAA,sBAAA,4CAAA,yDAAA,mCAAA,rYAACC,8ZAEgBF;;;AAL5B,AAAA,wDAAA,xDAAMF;;AAAN","names":["cljs.env\/*compiler*","var_args","args7861","len__7484__auto__","i__7485__auto__","G__7863","cljs.env\/default-compiler-env","js\/Error","options","cljs.core\/atom","cljs.core\/merge"]} -------------------------------------------------------------------------------- /out/cljs/nodejs.cljs: -------------------------------------------------------------------------------- 1 | ; Copyright (c) Rich Hickey. All rights reserved. 2 | ; The use and distribution terms for this software are covered by the 3 | ; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) 4 | ; which can be found in the file epl-v10.html at the root of this distribution. 5 | ; By using this software in any fashion, you are agreeing to be bound by 6 | ; the terms of this license. 7 | ; You must not remove this notice, or any other, from this software. 8 | 9 | ; Projects compiled with :target :nodejs can 'require' this namespace 10 | ; to get the nodejs globals loaded into cljs.nodejs and get 11 | ; ClojureScript's 'print' set up correctly. 12 | (ns cljs.nodejs) 13 | 14 | ; Define namespaced references to Node's externed globals: 15 | (def require (js* "require")) 16 | (def process (js* "process")) 17 | 18 | (defn enable-util-print! [] 19 | (set! *print-newline* false) 20 | (set! *print-fn* 21 | (fn [& args] 22 | (.apply (.-log js/console) js/console (into-array args)))) 23 | (set! *print-err-fn* 24 | (fn [& args] 25 | (.apply (.-error js/console) js/console (into-array args)))) 26 | nil) 27 | -------------------------------------------------------------------------------- /out/cljs/nodejs.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name cljs.nodejs, :imports nil, :requires nil, :uses nil, :defs {require {:name cljs.nodejs/require, :file "out/cljs/nodejs.cljs", :line 15, :column 1, :end-line 15, :end-column 13, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/nodejs.cljs", :line 15, :column 6, :end-line 15, :end-column 13}}, process {:name cljs.nodejs/process, :file "out/cljs/nodejs.cljs", :line 16, :column 1, :end-line 16, :end-column 13, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/nodejs.cljs", :line 16, :column 6, :end-line 16, :end-column 13}}, enable-util-print! {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/nodejs.cljs", :line 18, :column 7, :end-line 18, :end-column 25, :arglists (quote ([]))}, :name cljs.nodejs/enable-util-print!, :variadic false, :file "out/cljs/nodejs.cljs", :end-column 25, :method-params ([]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 18, :end-line 18, :max-fixed-arity 0, :fn-var true, :arglists (quote ([]))}}, :require-macros nil, :doc nil} -------------------------------------------------------------------------------- /out/cljs/nodejs.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('cljs.nodejs'); 3 | goog.require('cljs.core'); 4 | cljs.nodejs.require = require; 5 | cljs.nodejs.process = process; 6 | cljs.nodejs.enable_util_print_BANG_ = (function cljs$nodejs$enable_util_print_BANG_(){ 7 | cljs.core._STAR_print_newline_STAR_ = false; 8 | 9 | cljs.core._STAR_print_fn_STAR_ = (function() { 10 | var G__14797__delegate = function (args){ 11 | return console.log.apply(console,cljs.core.into_array.call(null,args)); 12 | }; 13 | var G__14797 = function (var_args){ 14 | var args = null; 15 | if (arguments.length > 0) { 16 | var G__14798__i = 0, G__14798__a = new Array(arguments.length - 0); 17 | while (G__14798__i < G__14798__a.length) {G__14798__a[G__14798__i] = arguments[G__14798__i + 0]; ++G__14798__i;} 18 | args = new cljs.core.IndexedSeq(G__14798__a,0); 19 | } 20 | return G__14797__delegate.call(this,args);}; 21 | G__14797.cljs$lang$maxFixedArity = 0; 22 | G__14797.cljs$lang$applyTo = (function (arglist__14799){ 23 | var args = cljs.core.seq(arglist__14799); 24 | return G__14797__delegate(args); 25 | }); 26 | G__14797.cljs$core$IFn$_invoke$arity$variadic = G__14797__delegate; 27 | return G__14797; 28 | })() 29 | ; 30 | 31 | cljs.core._STAR_print_err_fn_STAR_ = (function() { 32 | var G__14800__delegate = function (args){ 33 | return console.error.apply(console,cljs.core.into_array.call(null,args)); 34 | }; 35 | var G__14800 = function (var_args){ 36 | var args = null; 37 | if (arguments.length > 0) { 38 | var G__14801__i = 0, G__14801__a = new Array(arguments.length - 0); 39 | while (G__14801__i < G__14801__a.length) {G__14801__a[G__14801__i] = arguments[G__14801__i + 0]; ++G__14801__i;} 40 | args = new cljs.core.IndexedSeq(G__14801__a,0); 41 | } 42 | return G__14800__delegate.call(this,args);}; 43 | G__14800.cljs$lang$maxFixedArity = 0; 44 | G__14800.cljs$lang$applyTo = (function (arglist__14802){ 45 | var args = cljs.core.seq(arglist__14802); 46 | return G__14800__delegate(args); 47 | }); 48 | G__14800.cljs$core$IFn$_invoke$arity$variadic = G__14800__delegate; 49 | return G__14800; 50 | })() 51 | ; 52 | 53 | return null; 54 | }); 55 | 56 | //# sourceMappingURL=nodejs.js.map -------------------------------------------------------------------------------- /out/cljs/nodejs.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/cljs\/nodejs.js","sources":["nodejs.cljs"],"lineCount":56,"mappings":";AAWA;;AAGA,AAAKA,sBAAQ;AACb,AAAKC,sBAAQ;AAEb,sCAAA,tCAAMC;AAAN,AACE,sCAAA,tCAAMC;;AACN,AAAMC,iCACJ;mCAAOC;AAAP,AACE,OAAQ,AAAOC,kBAAYA,QAAW,AAACC,+BAAWF;;;IAD7CA;;;;EAAAA;;oCAAAA;;;IAAAA;0BAAAA;;;;;;;AAET,AAAMG,qCACJ;mCAAOH;AAAP,AACE,OAAQ,AAASC,oBAAYA,QAAW,AAACC,+BAAWF;;;IAD\/CA;;;;EAAAA;;oCAAAA;;;IAAAA;0BAAAA;;;;;;;AANX","names":["cljs.nodejs\/require","cljs.nodejs\/process","cljs.nodejs\/enable-util-print!","cljs.core\/*print-newline*","cljs.core\/*print-fn*","args","js\/console","cljs.core\/into-array","cljs.core\/*print-err-fn*"]} -------------------------------------------------------------------------------- /out/cljs/nodejscli.cljs: -------------------------------------------------------------------------------- 1 | ; Copyright (c) Rich Hickey. All rights reserved. 2 | ; The use and distribution terms for this software are covered by the 3 | ; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) 4 | ; which can be found in the file epl-v10.html at the root of this distribution. 5 | ; By using this software in any fashion, you are agreeing to be bound by 6 | ; the terms of this license. 7 | ; You must not remove this notice, or any other, from this software. 8 | 9 | ; Projects compiled with :target :nodejs have this file appended. Its 10 | ; job is to make sure cljs.nodejs is loaded and that the *main-cli-fn* 11 | ; is called with the script's command-line arguments. 12 | (ns cljs.nodejscli 13 | (:require [cljs.nodejs :as nodejs])) 14 | 15 | ;; need to set js/goog.global if COMPILED 16 | (when ^boolean js/COMPILED 17 | (set! js/goog.global js/global)) 18 | 19 | ;; Call the user's main function 20 | (if (or (nil? cljs.core/*main-cli-fn*) 21 | (not (fn? cljs.core/*main-cli-fn*))) 22 | (throw (js/Error. "cljs.core/*main-cli-fn* not set")) 23 | (apply cljs.core/*main-cli-fn* (drop 2 (.-argv nodejs/process)))) 24 | 25 | -------------------------------------------------------------------------------- /out/cljs/source_map/base64.cljs: -------------------------------------------------------------------------------- 1 | ; Copyright (c) Rich Hickey. All rights reserved. 2 | ; The use and distribution terms for this software are covered by the 3 | ; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) 4 | ; which can be found in the file epl-v10.html at the root of this distribution. 5 | ; By using this software in any fashion, you are agreeing to be bound by 6 | ; the terms of this license. 7 | ; You must not remove this notice, or any other, from this software. 8 | 9 | (ns cljs.source-map.base64) 10 | 11 | (def chars64 "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/") 12 | (def char->int (zipmap chars64 (range 0 64))) 13 | (def int->char (zipmap (range 0 64) chars64)) 14 | 15 | (defn encode [n] 16 | (let [e (find int->char n)] 17 | (if e 18 | (second e) 19 | (throw (js/Error. (str "Must be between 0 and 63: " n)))))) 20 | 21 | (defn decode [c] 22 | (let [e (find char->int c)] 23 | (if e 24 | (second e) 25 | (throw (js/Error. (str "Not a valid base 64 digit: " c)))))) 26 | -------------------------------------------------------------------------------- /out/cljs/source_map/base64.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name cljs.source-map.base64, :imports nil, :requires nil, :uses nil, :defs {chars64 {:name cljs.source-map.base64/chars64, :file "out/cljs/source_map/base64.cljs", :line 11, :column 1, :end-line 11, :end-column 13, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64.cljs", :line 11, :column 6, :end-line 11, :end-column 13}}, char->int {:name cljs.source-map.base64/char->int, :file "out/cljs/source_map/base64.cljs", :line 12, :column 1, :end-line 12, :end-column 15, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64.cljs", :line 12, :column 6, :end-line 12, :end-column 15}}, int->char {:name cljs.source-map.base64/int->char, :file "out/cljs/source_map/base64.cljs", :line 13, :column 1, :end-line 13, :end-column 15, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64.cljs", :line 13, :column 6, :end-line 13, :end-column 15}}, encode {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64.cljs", :line 15, :column 7, :end-line 15, :end-column 13, :arglists (quote ([n]))}, :name cljs.source-map.base64/encode, :variadic false, :file "out/cljs/source_map/base64.cljs", :end-column 13, :method-params ([n]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 15, :end-line 15, :max-fixed-arity 1, :fn-var true, :arglists (quote ([n]))}, decode {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64.cljs", :line 21, :column 7, :end-line 21, :end-column 13, :arglists (quote ([c]))}, :name cljs.source-map.base64/decode, :variadic false, :file "out/cljs/source_map/base64.cljs", :end-column 13, :method-params ([c]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 21, :end-line 21, :max-fixed-arity 1, :fn-var true, :arglists (quote ([c]))}}, :require-macros nil, :doc nil} -------------------------------------------------------------------------------- /out/cljs/source_map/base64.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('cljs.source_map.base64'); 3 | goog.require('cljs.core'); 4 | cljs.source_map.base64.chars64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; 5 | cljs.source_map.base64.char__GT_int = cljs.core.zipmap.call(null,cljs.source_map.base64.chars64,cljs.core.range.call(null,(0),(64))); 6 | cljs.source_map.base64.int__GT_char = cljs.core.zipmap.call(null,cljs.core.range.call(null,(0),(64)),cljs.source_map.base64.chars64); 7 | cljs.source_map.base64.encode = (function cljs$source_map$base64$encode(n){ 8 | var e = cljs.core.find.call(null,cljs.source_map.base64.int__GT_char,n); 9 | if(cljs.core.truth_(e)){ 10 | return cljs.core.second.call(null,e); 11 | } else { 12 | throw (new Error([cljs.core.str("Must be between 0 and 63: "),cljs.core.str(n)].join(''))); 13 | } 14 | }); 15 | cljs.source_map.base64.decode = (function cljs$source_map$base64$decode(c){ 16 | var e = cljs.core.find.call(null,cljs.source_map.base64.char__GT_int,c); 17 | if(cljs.core.truth_(e)){ 18 | return cljs.core.second.call(null,e); 19 | } else { 20 | throw (new Error([cljs.core.str("Not a valid base 64 digit: "),cljs.core.str(c)].join(''))); 21 | } 22 | }); 23 | 24 | //# sourceMappingURL=base64.js.map -------------------------------------------------------------------------------- /out/cljs/source_map/base64.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/cljs\/source_map\/base64.js","sources":["base64.cljs"],"lineCount":24,"mappings":";AAQA;;AAEA,iCAAA,jCAAKA;AACL,AAAKC,sCAAU,AAACC,2BAAOF,+BAAQ,0BAAA,IAAA,9BAACG;AAChC,AAAKC,sCAAU,AAACF,2BAAO,0BAAA,IAAA,9BAACC,oCAAYH;AAEpC,gCAAA,hCAAMK,wEAAQC;AAAd,AACE,IAAMC,IAAE,AAACC,yBAAKJ,oCAAUE;AAAxB,AACC,oBAAIC;AACF,OAACE,2BAAOF;;AACR,MAAO,KAAAG,MAAW,eAAA,4CAAkCJ;;;AAEzD,gCAAA,hCAAMK,wEAAQC;AAAd,AACE,IAAML,IAAE,AAACC,yBAAKP,oCAAUW;AAAxB,AACC,oBAAIL;AACF,OAACE,2BAAOF;;AACR,MAAO,KAAAG,MAAW,eAAA,6CAAmCE","names":["cljs.source-map.base64\/chars64","cljs.source-map.base64\/char->int","cljs.core\/zipmap","cljs.core\/range","cljs.source-map.base64\/int->char","cljs.source-map.base64\/encode","n","e","cljs.core\/find","cljs.core\/second","js\/Error","cljs.source-map.base64\/decode","c"]} -------------------------------------------------------------------------------- /out/cljs/source_map/base64_vlq.cljs: -------------------------------------------------------------------------------- 1 | ; Copyright (c) Rich Hickey. All rights reserved. 2 | ; The use and distribution terms for this software are covered by the 3 | ; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) 4 | ; which can be found in the file epl-v10.html at the root of this distribution. 5 | ; By using this software in any fashion, you are agreeing to be bound by 6 | ; the terms of this license. 7 | ; You must not remove this notice, or any other, from this software. 8 | 9 | (ns cljs.source-map.base64-vlq 10 | (:require [clojure.string :as string] 11 | [cljs.source-map.base64 :as base64]) 12 | (:import [goog.string StringBuffer])) 13 | 14 | (def ^:const vlq-base-shift 5) 15 | (def ^:const vlq-base (bit-shift-left 1 vlq-base-shift)) 16 | (def ^:const vlq-base-mask (dec vlq-base)) 17 | (def ^:const vlq-continuation-bit vlq-base) 18 | 19 | (defn to-vlq-signed [v] 20 | (if (neg? v) 21 | (inc (bit-shift-left (- v) 1)) 22 | (+ (bit-shift-left v 1) 0))) 23 | 24 | (defn from-vlq-signed [v] 25 | (let [neg? (= (bit-and v 1) 1) 26 | shifted (bit-shift-right v 1)] 27 | (if neg? 28 | (- shifted) 29 | shifted))) 30 | 31 | (defn encode-val [n] 32 | (let [sb (StringBuffer.) 33 | vlq (to-vlq-signed n)] 34 | (loop [digit (bit-and vlq vlq-base-mask) 35 | vlq (bit-shift-right-zero-fill vlq vlq-base-shift)] 36 | (if (pos? vlq) 37 | (let [digit (bit-or digit vlq-continuation-bit)] 38 | (.append sb (base64/encode digit)) 39 | (recur (bit-and vlq vlq-base-mask) 40 | (bit-shift-right-zero-fill vlq vlq-base-shift))) 41 | (.append sb (base64/encode digit)))) 42 | (str sb))) 43 | 44 | (defn encode [v] 45 | (apply str (map encode-val v))) 46 | 47 | (defn decode [s] 48 | (let [l (.-length s)] 49 | (loop [i 0 result 0 shift 0] 50 | (when (>= i l) 51 | (throw (js/Error. "Expected more digits in base 64 VLQ value."))) 52 | (let [digit (base64/decode (.charAt s i))] 53 | (let [i (inc i) 54 | continuation? (pos? (bit-and digit vlq-continuation-bit)) 55 | digit (bit-and digit vlq-base-mask) 56 | result (+ result (bit-shift-left digit shift)) 57 | shift (+ shift vlq-base-shift)] 58 | (if continuation? 59 | (recur i result shift) 60 | (lazy-seq 61 | (cons (from-vlq-signed result) 62 | (let [s (.substring s i)] 63 | (when-not (string/blank? s) 64 | (decode s))))))))))) 65 | 66 | (comment 67 | ;; tests 68 | 69 | (bit-shift-right-zero-fill 127 1) ;; 63 70 | (bit-shift-right-zero-fill -127 1) ;; 2147483584 71 | 72 | (to-vlq-signed 32) ;; 64 73 | (to-vlq-signed -32) ;; 65 74 | (from-vlq-signed 64) ;; 32 75 | (from-vlq-signed 65) ;; -32 76 | 77 | ;; Base64 VLQ can only represent 32bit values 78 | 79 | (encode-val 32) ; "gC" 80 | (decode "gC") ; {:value 32 :rest ""} 81 | 82 | (decode "AAgBC") ; (0 0 16 1) 83 | 84 | ;; lines kept count by semicolons, segments delimited by commas 85 | ;; the above is gline 0, gcol 0, file 0, line 16, col 1, no name if this was the first segment read 86 | 87 | (decode "AAggBC") ; very clever way to encode large values 88 | (decode "AAggBCA") ; 5 values instead of 4 89 | 90 | (encode [0 0 16 1]) ; "AAgBC" 91 | 92 | (decode "IAWdD") ; (4 0 11 -14 -1) this is correct 93 | ;; gline N, gcol +4, file +0, line +11, col -14, name -1 94 | 95 | ;; Notes about format 96 | ;; we always have 1, 4, or 5 values, all zero-based indexes 97 | ;; 1. generated col - relative - reset on every new line in generated source 98 | ;; 2. index into sources list - relative 99 | ;; 3. original line - relative 100 | ;; 4. origin column - relative 101 | ;; 5. name - relative 102 | ) 103 | -------------------------------------------------------------------------------- /out/cljs/source_map/base64_vlq.cljs.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name cljs.source-map.base64-vlq, :imports {StringBuffer goog.string.StringBuffer}, :requires {string clojure.string, clojure.string clojure.string, base64 cljs.source-map.base64, cljs.source-map.base64 cljs.source-map.base64, StringBuffer goog.string.StringBuffer}, :uses nil, :defs {vlq-base-shift {:name cljs.source-map.base64-vlq/vlq-base-shift, :file "out/cljs/source_map/base64_vlq.cljs", :line 14, :column 1, :end-line 14, :end-column 28, :const true, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64_vlq.cljs", :line 14, :column 14, :end-line 14, :end-column 28, :const true}}, vlq-base {:name cljs.source-map.base64-vlq/vlq-base, :file "out/cljs/source_map/base64_vlq.cljs", :line 15, :column 1, :end-line 15, :end-column 22, :const true, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64_vlq.cljs", :line 15, :column 14, :end-line 15, :end-column 22, :const true}}, vlq-base-mask {:name cljs.source-map.base64-vlq/vlq-base-mask, :file "out/cljs/source_map/base64_vlq.cljs", :line 16, :column 1, :end-line 16, :end-column 27, :const true, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64_vlq.cljs", :line 16, :column 14, :end-line 16, :end-column 27, :const true}}, vlq-continuation-bit {:name cljs.source-map.base64-vlq/vlq-continuation-bit, :file "out/cljs/source_map/base64_vlq.cljs", :line 17, :column 1, :end-line 17, :end-column 34, :const true, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64_vlq.cljs", :line 17, :column 14, :end-line 17, :end-column 34, :const true}}, to-vlq-signed {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64_vlq.cljs", :line 19, :column 7, :end-line 19, :end-column 20, :arglists (quote ([v]))}, :name cljs.source-map.base64-vlq/to-vlq-signed, :variadic false, :file "out/cljs/source_map/base64_vlq.cljs", :end-column 20, :method-params ([v]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 19, :end-line 19, :max-fixed-arity 1, :fn-var true, :arglists (quote ([v]))}, from-vlq-signed {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64_vlq.cljs", :line 24, :column 7, :end-line 24, :end-column 22, :arglists (quote ([v]))}, :name cljs.source-map.base64-vlq/from-vlq-signed, :variadic false, :file "out/cljs/source_map/base64_vlq.cljs", :end-column 22, :method-params ([v]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 24, :end-line 24, :max-fixed-arity 1, :fn-var true, :arglists (quote ([v]))}, encode-val {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64_vlq.cljs", :line 31, :column 7, :end-line 31, :end-column 17, :arglists (quote ([n]))}, :name cljs.source-map.base64-vlq/encode-val, :variadic false, :file "out/cljs/source_map/base64_vlq.cljs", :end-column 17, :method-params ([n]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 31, :end-line 31, :max-fixed-arity 1, :fn-var true, :arglists (quote ([n]))}, encode {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64_vlq.cljs", :line 44, :column 7, :end-line 44, :end-column 13, :arglists (quote ([v]))}, :name cljs.source-map.base64-vlq/encode, :variadic false, :file "out/cljs/source_map/base64_vlq.cljs", :end-column 13, :method-params ([v]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 44, :end-line 44, :max-fixed-arity 1, :fn-var true, :arglists (quote ([v]))}, decode {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/source_map/base64_vlq.cljs", :line 47, :column 7, :end-line 47, :end-column 13, :arglists (quote ([s]))}, :name cljs.source-map.base64-vlq/decode, :variadic false, :file "out/cljs/source_map/base64_vlq.cljs", :end-column 13, :method-params ([s]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 47, :end-line 47, :max-fixed-arity 1, :fn-var true, :arglists (quote ([s]))}}, :require-macros nil, :doc nil} -------------------------------------------------------------------------------- /out/cljs/source_map/base64_vlq.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('cljs.source_map.base64_vlq'); 3 | goog.require('cljs.core'); 4 | goog.require('clojure.string'); 5 | goog.require('cljs.source_map.base64'); 6 | goog.require('goog.string.StringBuffer'); 7 | cljs.source_map.base64_vlq.vlq_base_shift = (5); 8 | cljs.source_map.base64_vlq.vlq_base = ((1) << cljs.source_map.base64_vlq.vlq_base_shift); 9 | cljs.source_map.base64_vlq.vlq_base_mask = (cljs.source_map.base64_vlq.vlq_base - (1)); 10 | cljs.source_map.base64_vlq.vlq_continuation_bit = cljs.source_map.base64_vlq.vlq_base; 11 | cljs.source_map.base64_vlq.to_vlq_signed = (function cljs$source_map$base64_vlq$to_vlq_signed(v){ 12 | if((v < (0))){ 13 | return (((- v) << (1)) + (1)); 14 | } else { 15 | return ((v << (1)) + (0)); 16 | } 17 | }); 18 | cljs.source_map.base64_vlq.from_vlq_signed = (function cljs$source_map$base64_vlq$from_vlq_signed(v){ 19 | var neg_QMARK_ = cljs.core._EQ_.call(null,(v & (1)),(1)); 20 | var shifted = (v >> (1)); 21 | if(neg_QMARK_){ 22 | return (- shifted); 23 | } else { 24 | return shifted; 25 | } 26 | }); 27 | cljs.source_map.base64_vlq.encode_val = (function cljs$source_map$base64_vlq$encode_val(n){ 28 | var sb = (new goog.string.StringBuffer()); 29 | var vlq = cljs.source_map.base64_vlq.to_vlq_signed.call(null,n); 30 | var digit_9119 = (vlq & cljs.source_map.base64_vlq.vlq_base_mask); 31 | var vlq_9120__$1 = (vlq >>> cljs.source_map.base64_vlq.vlq_base_shift); 32 | while(true){ 33 | if((vlq_9120__$1 > (0))){ 34 | var digit_9121__$1 = (digit_9119 | cljs.source_map.base64_vlq.vlq_continuation_bit); 35 | sb.append(cljs.source_map.base64.encode.call(null,digit_9121__$1)); 36 | 37 | var G__9122 = (vlq_9120__$1 & cljs.source_map.base64_vlq.vlq_base_mask); 38 | var G__9123 = (vlq_9120__$1 >>> cljs.source_map.base64_vlq.vlq_base_shift); 39 | digit_9119 = G__9122; 40 | vlq_9120__$1 = G__9123; 41 | continue; 42 | } else { 43 | sb.append(cljs.source_map.base64.encode.call(null,digit_9119)); 44 | } 45 | break; 46 | } 47 | 48 | return [cljs.core.str(sb)].join(''); 49 | }); 50 | cljs.source_map.base64_vlq.encode = (function cljs$source_map$base64_vlq$encode(v){ 51 | return cljs.core.apply.call(null,cljs.core.str,cljs.core.map.call(null,cljs.source_map.base64_vlq.encode_val,v)); 52 | }); 53 | cljs.source_map.base64_vlq.decode = (function cljs$source_map$base64_vlq$decode(s){ 54 | var l = s.length; 55 | var i = (0); 56 | var result = (0); 57 | var shift = (0); 58 | while(true){ 59 | if((i >= l)){ 60 | throw (new Error("Expected more digits in base 64 VLQ value.")); 61 | } else { 62 | } 63 | 64 | var digit = cljs.source_map.base64.decode.call(null,s.charAt(i)); 65 | var i__$1 = (i + (1)); 66 | var continuation_QMARK_ = ((digit & cljs.source_map.base64_vlq.vlq_continuation_bit) > (0)); 67 | var digit__$1 = (digit & cljs.source_map.base64_vlq.vlq_base_mask); 68 | var result__$1 = (result + (digit__$1 << shift)); 69 | var shift__$1 = (shift + cljs.source_map.base64_vlq.vlq_base_shift); 70 | if(continuation_QMARK_){ 71 | var G__9124 = i__$1; 72 | var G__9125 = result__$1; 73 | var G__9126 = shift__$1; 74 | i = G__9124; 75 | result = G__9125; 76 | shift = G__9126; 77 | continue; 78 | } else { 79 | return (new cljs.core.LazySeq(null,((function (i,result,shift,i__$1,continuation_QMARK_,digit__$1,result__$1,shift__$1,digit,l){ 80 | return (function (){ 81 | return cljs.core.cons.call(null,cljs.source_map.base64_vlq.from_vlq_signed.call(null,result__$1),(function (){var s__$1 = s.substring(i__$1); 82 | if(clojure.string.blank_QMARK_.call(null,s__$1)){ 83 | return null; 84 | } else { 85 | return cljs$source_map$base64_vlq$decode.call(null,s__$1); 86 | } 87 | })()); 88 | });})(i,result,shift,i__$1,continuation_QMARK_,digit__$1,result__$1,shift__$1,digit,l)) 89 | ,null,null)); 90 | } 91 | break; 92 | } 93 | }); 94 | 95 | //# sourceMappingURL=base64_vlq.js.map -------------------------------------------------------------------------------- /out/cljs/source_map/base64_vlq.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/cljs\/source_map\/base64_vlq.js","sources":["base64_vlq.cljs"],"lineCount":95,"mappings":";AAQA;;;;;AAKA,4CAAA,5CAAaA;AACb,AAAaC,sCAAS,CAAA,OAAkBD;AACxC,AAAaE,2CAAc,uCAAA,tCAAKD;AAChC,AAAaE,kDAAqBF;AAElC,2CAAA,3CAAMG,8FAAeC;AAArB,AACE,GAAI,KAAA,JAAMA;AACR,yBAAA,jBAAK,UAAA,TAAgB,GAAGA;;AACxB,qBAAA,bAAG,MAAA,LAAgBA;;;AAEvB,6CAAA,7CAAMC,kGAAiBD;AAAvB,AACE,IAAME,aAAK,mCAAA,nCAACC,yBAAE,KAAA,JAASH;IACjBI,UAAQ,MAAA,LAAiBJ;AAD\/B,AAEE,GAAIE;AACF,UAAGE;;AACHA;;;AAEN,wCAAA,xCAAMC,wFAAYC;AAAlB,AACE,IAAMC,KAAG,KAAAC;IACHC,MAAI,AAACV,mDAAcO;AADzB,AAEE,IAAOI,aAAM,CAASD,MAAIZ;IACnBY,eAAM,CAA2BA,QAAId;;AAD5C,AAEE,GAAI,gBAAA,fAAMc;AACR,IAAMC,iBAAM,CAAQA,aAAMZ;AAA1B,AACE,AAASS,UAAG,AAACI,wCAAcD;;AAC3B,cAAO,CAASD,eAAIZ;cACb,CAA2BY,iBAAId;;;;;AACxC,AAASY,UAAG,AAACI,wCAAcD;;;;;AAC\/B,sBAAKH;;AAET,oCAAA,pCAAMK,gFAAQZ;AAAd,AACE,OAACa,0BAAMC,cAAI,AAACC,wBAAIV,sCAAWL;;AAE7B,oCAAA,pCAAMgB,gFAAQC;AAAd,AACE,IAAMC,IAAE,AAAUD;AAAlB,AACE,QAAA,JAAOE;aAAP,TAAWC;YAAX,RAAoBC;;AAApB,AACE,GAAM,CAAIF,KAAED;AAAZ,AACE,MAAO,KAAAI,MAAA;;AADT;;AAEA,IAAMZ,QAAM,AAACa,wCAAc,AAASN,SAAEE;AAAtC,AACE,IAAMA,QAAE,KAAA,JAAKA;IACPK,sBAAc,6DAAA,5DAAM,CAASd,QAAMZ;IACnCY,YAAM,CAASA,QAAMb;IACrBuB,aAAO,CAAGA,SAAO,CAAgBV,aAAMW;IACvCA,YAAM,CAAGA,QAAM1B;AAJrB,AAKE,GAAI6B;AACF,cAAOL;cAAEC;cAAOC;;;;;;AAChB,YAAAI,kBAAA,KAAA;;AAAA,AACC,OAACC,yBAAK,AAACzB,qDAAgBmB,YACjB,iBAAMH,QAAE,AAAYA,YAAEE;AAAtB,AACE,GAAU,AAACQ,sCAAcV;AAAzB;;AAAA,AACE,OAACW,4CAAOX;;;;CAJnB,KAAA;;;;;AAMZ","names":["cljs.source-map.base64-vlq\/vlq-base-shift","cljs.source-map.base64-vlq\/vlq-base","cljs.source-map.base64-vlq\/vlq-base-mask","cljs.source-map.base64-vlq\/vlq-continuation-bit","cljs.source-map.base64-vlq\/to-vlq-signed","v","cljs.source-map.base64-vlq\/from-vlq-signed","neg?","cljs.core\/=","shifted","cljs.source-map.base64-vlq\/encode-val","n","sb","goog\/string.StringBuffer","vlq","digit","cljs.source-map.base64\/encode","cljs.source-map.base64-vlq\/encode","cljs.core\/apply","cljs.core\/str","cljs.core\/map","cljs.source-map.base64-vlq\/decode","s","l","i","result","shift","js\/Error","cljs.source-map.base64\/decode","continuation?","cljs.core\/LazySeq","cljs.core\/cons","clojure.string\/blank?","decode"]} -------------------------------------------------------------------------------- /out/cljs/tagged_literals.cljc: -------------------------------------------------------------------------------- 1 | (ns cljs.tagged-literals 2 | #?(:clj (:require [clojure.instant :as inst]) 3 | :cljs (:require [cljs.reader :as reader]))) 4 | 5 | (defn read-queue 6 | [form] 7 | (when-not (vector? form) 8 | (throw 9 | #?(:clj (RuntimeException. 10 | "Queue literal expects a vector for its elements.") 11 | :cljs (js/Error. 12 | "Queue literal expects a vector for its elements.")))) 13 | (list 'cljs.core/into 'cljs.core.PersistentQueue.EMPTY form)) 14 | 15 | #?(:clj 16 | (defn read-uuid 17 | [form] 18 | (when-not (string? form) 19 | (throw (RuntimeException. "UUID literal expects a string as its representation."))) 20 | (try 21 | (java.util.UUID/fromString form) 22 | (catch Throwable e 23 | (throw (RuntimeException. (.getMessage e))))))) 24 | 25 | #?(:cljs 26 | (defn read-uuid 27 | [form] 28 | (when-not (string? form) 29 | (throw (js/Error. "UUID literal expects a string as its representation."))) 30 | (try 31 | (uuid form) 32 | (catch :default e 33 | (throw (js/Error. (. e -message))))))) 34 | 35 | #?(:clj 36 | (defn read-inst 37 | [form] 38 | (when-not (string? form) 39 | (throw (RuntimeException. "Instance literal expects a string for its timestamp."))) 40 | (try 41 | (inst/read-instant-date form) 42 | (catch Throwable e 43 | (throw (RuntimeException. (.getMessage e))))))) 44 | 45 | #?(:cljs 46 | (defn read-inst 47 | [form] 48 | (when-not (string? form) 49 | (throw (js/Error. "Instance literal expects a string for its timestamp."))) 50 | (try 51 | (reader/read-date form) 52 | (catch :default e 53 | (throw (js/Error. (. e -message))))))) 54 | 55 | (defn valid-js-literal-key? [k] 56 | (or (string? k) 57 | (and (keyword? k) 58 | (nil? (namespace k))))) 59 | 60 | (deftype JSValue [val]) 61 | 62 | (defn read-js 63 | [form] 64 | (when-not (or (vector? form) (map? form)) 65 | (throw 66 | #?(:clj (RuntimeException. 67 | "JavaScript literal must use map or vector notation") 68 | :cljs (js/Error. 69 | "JavaScript literal must use map or vector notation")))) 70 | (when-not (or (not (map? form)) 71 | (every? valid-js-literal-key? (keys form))) 72 | (throw 73 | #?(:clj (RuntimeException. 74 | "JavaScript literal keys must be strings or unqualified keywords") 75 | :cljs (js/Error. 76 | "JavaScript literal keys must be strings or unqualified keywords")))) 77 | (JSValue. form)) 78 | 79 | (def ^:dynamic *cljs-data-readers* 80 | {'queue read-queue 81 | 'uuid read-uuid 82 | 'inst read-inst 83 | 'js read-js}) 84 | -------------------------------------------------------------------------------- /out/cljs/tagged_literals.cljc.cache.edn: -------------------------------------------------------------------------------- 1 | {:rename-macros {}, :renames {}, :use-macros {}, :excludes #{}, :name cljs.tagged-literals, :imports nil, :requires {reader cljs.reader, cljs.reader cljs.reader}, :uses nil, :defs {read-queue {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/tagged_literals.cljc", :line 5, :column 7, :end-line 5, :end-column 17, :arglists (quote ([form]))}, :name cljs.tagged-literals/read-queue, :variadic false, :file "out/cljs/tagged_literals.cljc", :end-column 17, :method-params ([form]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 5, :end-line 5, :max-fixed-arity 1, :fn-var true, :arglists (quote ([form]))}, read-uuid {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/tagged_literals.cljc", :line 26, :column 10, :end-line 26, :end-column 19, :arglists (quote ([form]))}, :name cljs.tagged-literals/read-uuid, :variadic false, :file "out/cljs/tagged_literals.cljc", :end-column 19, :method-params ([form]), :protocol-impl nil, :arglists-meta (nil nil), :column 4, :line 26, :end-line 26, :max-fixed-arity 1, :fn-var true, :arglists (quote ([form]))}, read-inst {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/tagged_literals.cljc", :line 46, :column 10, :end-line 46, :end-column 19, :arglists (quote ([form]))}, :name cljs.tagged-literals/read-inst, :variadic false, :file "out/cljs/tagged_literals.cljc", :end-column 19, :method-params ([form]), :protocol-impl nil, :arglists-meta (nil nil), :column 4, :line 46, :end-line 46, :max-fixed-arity 1, :fn-var true, :arglists (quote ([form]))}, valid-js-literal-key? {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/tagged_literals.cljc", :line 55, :column 7, :end-line 55, :end-column 28, :arglists (quote ([k]))}, :name cljs.tagged-literals/valid-js-literal-key?, :variadic false, :file "out/cljs/tagged_literals.cljc", :end-column 28, :method-params ([k]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 55, :end-line 55, :max-fixed-arity 1, :fn-var true, :arglists (quote ([k]))}, JSValue {:num-fields 1, :protocols #{}, :name cljs.tagged-literals/JSValue, :file "out/cljs/tagged_literals.cljc", :end-column 17, :type true, :column 10, :line 60, :record false, :end-line 60, :skip-protocol-flag nil}, ->JSValue {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/tagged_literals.cljc", :line 60, :column 10, :end-line 60, :end-column 17, :protocols #{}, :skip-protocol-flag nil, :factory :positional, :arglists (quote ([val]))}, :protocols #{}, :name cljs.tagged-literals/->JSValue, :variadic false, :file "out/cljs/tagged_literals.cljc", :end-column 17, :method-params ([val]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :factory :positional, :line 60, :end-line 60, :max-fixed-arity 1, :fn-var true, :arglists (quote ([val])), :skip-protocol-flag nil}, read-js {:protocol-inline nil, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/tagged_literals.cljc", :line 62, :column 7, :end-line 62, :end-column 14, :arglists (quote ([form]))}, :name cljs.tagged-literals/read-js, :variadic false, :file "out/cljs/tagged_literals.cljc", :end-column 14, :method-params ([form]), :protocol-impl nil, :arglists-meta (nil nil), :column 1, :line 62, :end-line 62, :max-fixed-arity 1, :fn-var true, :arglists (quote ([form]))}, *cljs-data-readers* {:name cljs.tagged-literals/*cljs-data-readers*, :file "out/cljs/tagged_literals.cljc", :line 79, :column 1, :end-line 79, :end-column 35, :dynamic true, :meta {:file "/Users/clumsyjedi/workspace/clack/out/cljs/tagged_literals.cljc", :line 79, :column 16, :end-line 79, :end-column 35, :dynamic true}}}, :require-macros nil, :cljs.analyzer/constants {:seen #{uuid cljs.core.PersistentQueue.EMPTY js inst cljs.core/into queue val}, :order [cljs.core/into cljs.core.PersistentQueue.EMPTY val queue uuid inst js]}, :doc nil} -------------------------------------------------------------------------------- /out/cljs/tagged_literals.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('cljs.tagged_literals'); 3 | goog.require('cljs.core'); 4 | goog.require('cljs.reader'); 5 | cljs.tagged_literals.read_queue = (function cljs$tagged_literals$read_queue(form){ 6 | if(cljs.core.vector_QMARK_.call(null,form)){ 7 | } else { 8 | throw (new Error("Queue literal expects a vector for its elements.")); 9 | } 10 | 11 | return cljs.core._conj.call(null,cljs.core._conj.call(null,(function (){var x__7243__auto__ = form; 12 | return cljs.core._conj.call(null,cljs.core.List.EMPTY,x__7243__auto__); 13 | })(),cljs.core.cst$sym$cljs$core$PersistentQueue$EMPTY),cljs.core.cst$sym$cljs$core_SLASH_into); 14 | }); 15 | cljs.tagged_literals.read_uuid = (function cljs$tagged_literals$read_uuid(form){ 16 | if(typeof form === 'string'){ 17 | } else { 18 | throw (new Error("UUID literal expects a string as its representation.")); 19 | } 20 | 21 | try{return cljs.core.uuid.call(null,form); 22 | }catch (e8079){var e = e8079; 23 | throw (new Error(e.message)); 24 | }}); 25 | cljs.tagged_literals.read_inst = (function cljs$tagged_literals$read_inst(form){ 26 | if(typeof form === 'string'){ 27 | } else { 28 | throw (new Error("Instance literal expects a string for its timestamp.")); 29 | } 30 | 31 | try{return cljs.reader.read_date.call(null,form); 32 | }catch (e8081){var e = e8081; 33 | throw (new Error(e.message)); 34 | }}); 35 | cljs.tagged_literals.valid_js_literal_key_QMARK_ = (function cljs$tagged_literals$valid_js_literal_key_QMARK_(k){ 36 | return (typeof k === 'string') || (((k instanceof cljs.core.Keyword)) && ((cljs.core.namespace.call(null,k) == null))); 37 | }); 38 | 39 | /** 40 | * @constructor 41 | */ 42 | cljs.tagged_literals.JSValue = (function (val){ 43 | this.val = val; 44 | }) 45 | 46 | cljs.tagged_literals.JSValue.getBasis = (function (){ 47 | return new cljs.core.PersistentVector(null, 1, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.cst$sym$val], null); 48 | }); 49 | 50 | cljs.tagged_literals.JSValue.cljs$lang$type = true; 51 | 52 | cljs.tagged_literals.JSValue.cljs$lang$ctorStr = "cljs.tagged-literals/JSValue"; 53 | 54 | cljs.tagged_literals.JSValue.cljs$lang$ctorPrWriter = (function (this__7015__auto__,writer__7016__auto__,opt__7017__auto__){ 55 | return cljs.core._write.call(null,writer__7016__auto__,"cljs.tagged-literals/JSValue"); 56 | }); 57 | 58 | cljs.tagged_literals.__GT_JSValue = (function cljs$tagged_literals$__GT_JSValue(val){ 59 | return (new cljs.tagged_literals.JSValue(val)); 60 | }); 61 | 62 | cljs.tagged_literals.read_js = (function cljs$tagged_literals$read_js(form){ 63 | if((cljs.core.vector_QMARK_.call(null,form)) || (cljs.core.map_QMARK_.call(null,form))){ 64 | } else { 65 | throw (new Error("JavaScript literal must use map or vector notation")); 66 | } 67 | 68 | if((!(cljs.core.map_QMARK_.call(null,form))) || (cljs.core.every_QMARK_.call(null,cljs.tagged_literals.valid_js_literal_key_QMARK_,cljs.core.keys.call(null,form)))){ 69 | } else { 70 | throw (new Error("JavaScript literal keys must be strings or unqualified keywords")); 71 | } 72 | 73 | return (new cljs.tagged_literals.JSValue(form)); 74 | }); 75 | cljs.tagged_literals._STAR_cljs_data_readers_STAR_ = new cljs.core.PersistentArrayMap(null, 4, [cljs.core.cst$sym$queue,cljs.tagged_literals.read_queue,cljs.core.cst$sym$uuid,cljs.tagged_literals.read_uuid,cljs.core.cst$sym$inst,cljs.tagged_literals.read_inst,cljs.core.cst$sym$js,cljs.tagged_literals.read_js], null); 76 | 77 | //# sourceMappingURL=tagged_literals.js.map -------------------------------------------------------------------------------- /out/cljs/tagged_literals.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/cljs\/tagged_literals.js","sources":["tagged_literals.cljc"],"lineCount":77,"mappings":";AAAA;;;AAIA,kCAAA,lCAAMA,4EACHC;AADH,AAEE,GAAU,AAACC,kCAAQD;AAAnB;AAAA,AACE,MAGW,KAAAE,MAAA;;;AAEb,OAAAC,0BAAA,AAAAA,0BAAA,iBAAAC,kBAAuDJ;AAAvD,AAAA,OAAAG,+CAAAC,rBAo2EE,AAAAwB;KAp2EF,mDAAA;;AAaC,iCAAA,jCAAMvB,0EACHL;AADH,AAEE,GAAU,OAASA;AAAnB;AAAA,AACE,MAAO,KAAAE,MAAA;;;AACT,IAAA,AACE,OAACK,yBAAKP;eADR,QAAAM,JAEkBE;AAFlB,AAGI,MAAO,KAAAN,MAAW,AAAGM;;AAa3B,iCAAA,jCAAMC,0EACHT;AADH,AAEE,GAAU,OAASA;AAAnB;AAAA,AACE,MAAO,KAAAE,MAAA;;;AACT,IAAA,AACE,OAACS,gCAAiBX;eADpB,QAAAU,JAEkBF;AAFlB,AAGI,MAAO,KAAAN,MAAW,AAAGM;;AAE9B,mDAAA,nDAAMI,8GAAuBC;AAA7B,AACE,QAAI,OAASA,oBACT,CAAK,cAAAC,bAAUD,qCACV,qCAAA,pCAAM,AAACE,8BAAUF;;AAE5B,AAAA;;;;;;;AAAA;AAAA,AAAA,wCAAA,xCAASO;AAAT,AAAA,0FAAA;;;AAAA,AAAA,8CAAA,9CAASA;;AAAT,AAAA,iDAAA,jDAASA;;AAAT,AAAA,sDAAA,WAAAJ,mBAAAC,qBAAAC,zGAASE;AAAT,AAAA,OAAAD,2BAAAF,qBAAA;;;AAAA,oCAAA,pCAASI,gFAASC;AAAlB,AAAA,YAAAF,6BAAkBE;;;AAATF,AAET,+BAAA,\/BAAMG,sEACHvB;AADH,AAEE,GAAU,CAAI,AAACC,kCAAQD,WAAM,AAACwB,+BAAKxB;AAAnC;AAAA,AACE,MAGW,KAAAE,MAAA;;;AAEb,GAAU,CAAI,EAAK,AAACsB,+BAAKxB,YACX,AAACyB,iCAAOb,iDAAsB,AAACc,yBAAK1B;AADlD;AAAA,AAEE,MAGW,KAAAE,MAAA;;;AAEb,YAAAkB,6BAAUpB;;AAEZ,qDAAA,2CAAA,wDAAA,sDAAA,sDAAA,pQAAe2B,wHACL5B,uDACAM,sDACAI,oDACAc","names":["cljs.tagged-literals\/read-queue","form","cljs.core\/vector?","js\/Error","cljs.core\/-conj","x__7243__auto__","cljs.tagged-literals\/read-uuid","e8079","cljs.core\/uuid","e","cljs.tagged-literals\/read-inst","e8081","cljs.reader\/read-date","cljs.tagged-literals\/valid-js-literal-key?","k","cljs.core\/Keyword","cljs.core\/namespace","this__7015__auto__","writer__7016__auto__","opt__7017__auto__","cljs.core\/-write","cljs.tagged-literals\/JSValue","cljs.tagged-literals\/->JSValue","val","cljs.tagged-literals\/read-js","cljs.core\/map?","cljs.core\/every?","cljs.core\/keys","cljs.tagged-literals\/*cljs-data-readers*","cljs.core\/List"]} -------------------------------------------------------------------------------- /out/cljs/tools/reader/impl/commons.cljs: -------------------------------------------------------------------------------- 1 | ;; Copyright (c) Nicola Mometto, Rich Hickey & contributors. 2 | ;; The use and distribution terms for this software are covered by the 3 | ;; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) 4 | ;; which can be found in the file epl-v10.html at the root of this distribution. 5 | ;; By using this software in any fashion, you are agreeing to be bound by 6 | ;; the terms of this license. 7 | ;; You must not remove this notice, or any other, from this software. 8 | 9 | (ns cljs.tools.reader.impl.commons 10 | (:refer-clojure :exclude [char]) 11 | (:require 12 | [cljs.tools.reader.reader-types :refer [peek-char read-char reader-error]] 13 | [cljs.tools.reader.impl.utils :refer [numeric? newline? char]])) 14 | 15 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 16 | ;; helpers 17 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 18 | 19 | (defn ^boolean number-literal? 20 | "Checks whether the reader is at the start of a number literal" 21 | [^not-native reader initch] 22 | (or (numeric? initch) 23 | (and (or (identical? \+ initch) (identical? \- initch)) 24 | (numeric? (peek-char reader))))) 25 | 26 | (defn read-past 27 | "Read until first character that doesn't match pred, returning 28 | char." 29 | [pred ^not-native rdr] 30 | (loop [ch (read-char rdr)] 31 | (if ^boolean (pred ch) 32 | (recur (read-char rdr)) 33 | ch))) 34 | 35 | (defn skip-line 36 | "Advances the reader to the end of a line. Returns the reader" 37 | [^not-native reader] 38 | (loop [] 39 | (when-not (newline? (read-char reader)) 40 | (recur))) 41 | reader) 42 | 43 | (def int-pattern #"^([-+]?)(?:(0)|([1-9][0-9]*)|0[xX]([0-9A-Fa-f]+)|0([0-7]+)|([1-9][0-9]?)[rR]([0-9A-Za-z]+)|(0[0-9]+))(N)?$") 44 | (def ratio-pattern #"([-+]?[0-9]+)/([0-9]+)") 45 | (def float-pattern #"([-+]?[0-9]+(\.[0-9]*)?([eE][-+]?[0-9]+)?)(M)?") 46 | 47 | (defn- match-int 48 | [s] 49 | (let [m (vec (re-find int-pattern s))] 50 | (if-not (nil? (m 2)) 51 | 0 52 | (let [^boolean negate? (identical? "-" (m 1)) 53 | a (cond 54 | (not (nil? (m 3))) [(m 3) 10] 55 | (not (nil? (m 4))) [(m 4) 16] 56 | (not (nil? (m 5))) [(m 5) 8] 57 | (not (nil? (m 7))) [(m 7) (js/parseInt (m 6))] 58 | (not (nil? (m 8))) [(m 8) 10] 59 | :else [nil nil]) 60 | n (a 0)] 61 | (when-not (nil? n) 62 | (let [bn (js/parseInt n (a 1)) 63 | bn (if negate? (* -1 bn) bn)] 64 | bn)))))) 65 | 66 | (defn- match-ratio 67 | [s] 68 | (let [m (vec (re-find ratio-pattern s)) 69 | numerator (m 1) 70 | denominator (m 2) 71 | numerator (if (re-find #"^\+" numerator) 72 | (subs numerator 1) 73 | numerator)] 74 | (/ (-> numerator js/parseInt) ;;; No ratio type in cljs 75 | (-> denominator js/parseInt)))); So will convert to js/Number 76 | 77 | (defn- match-float 78 | [s] 79 | (let [m (vec (re-find float-pattern s))] 80 | (if-not (nil? (m 4)) ;; for BigDecimal "10.03M", as all parsed to js/Number 81 | (js/parseFloat (m 1)) 82 | (js/parseFloat s)))) 83 | 84 | (defn ^boolean matches? [pattern s] 85 | (let [[match] (re-find pattern s)] 86 | (identical? match s))) 87 | 88 | (defn match-number [s] 89 | (if (matches? int-pattern s) 90 | (match-int s) 91 | (if (matches? float-pattern s) 92 | (match-float s) 93 | (when (matches? ratio-pattern s) 94 | (match-ratio s))))) 95 | 96 | (defn parse-symbol 97 | "Parses a string into a vector of the namespace and symbol" 98 | [token] 99 | (when-not (or (identical? "" token) 100 | (true? (.test #":$" token)) 101 | (true? (.test #"^::" token))) 102 | (let [ns-idx (.indexOf token "/") 103 | ns (when (pos? ns-idx) 104 | (subs token 0 ns-idx))] 105 | (if-not (nil? ns) 106 | (let [ns-idx (inc ns-idx)] 107 | (when-not (== ns-idx (count token)) 108 | (let [sym (subs token ns-idx)] 109 | (when (and (not (numeric? (nth sym 0))) 110 | (not (identical? "" sym)) 111 | (false? (.test #":$" ns)) 112 | (or (identical? sym "/") 113 | (== -1 (.indexOf sym "/")))) 114 | [ns sym])))) 115 | (when (or (identical? token "/") 116 | (== -1 (.indexOf token "/"))) 117 | [nil token]))))) 118 | 119 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 120 | ;; readers 121 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 122 | 123 | (defn read-comment 124 | [rdr & _] 125 | (skip-line rdr)) 126 | 127 | (defn throwing-reader 128 | [msg] 129 | (fn [rdr & _] 130 | (reader-error rdr msg))) 131 | -------------------------------------------------------------------------------- /out/cljs/tools/reader/impl/commons.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/cljs\/tools\/reader\/impl\/commons.js","sources":["commons.cljs"],"lineCount":186,"mappings":";AAQA;;;;AAUA;;;uDAAA,vDAAeA,sHAEAC,OAAOC;AAFtB,AAGE,QAAI,AAACC,sDAASD,aACV,CAAK,CAAI,CAAA,QAAeA,aAAQ,CAAA,QAAgBA,cAC3C,AAACC,sDAAS,AAACC,mDAAUH;;AAEhC;;;;2CAAA,3CAAMI,8FAGHC,KAAiBC;AAHpB,AAIE,IAAOC,KAAG,AAACC,mDAAUF;;AAArB,AACE,GAAI,AAAUD,eAAKE;AACjB,cAAO,AAACC,mDAAUF;;;;AAClBC;;;;;AAEN;;;2CAAA,3CAAME,8FAEST;AAFf,AAGE;AAAA,AACE,GAAU,AAACU,sDAAS,AAACF,mDAAUR;AAA\/B;AAAA,AACE;;;;;AACJA;;AAEF,6CAAA,7CAAKW;AACL,+CAAA,\/CAAKC;AACL,+CAAA,\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\/C,IAAM+C;;;IAAN\/C;IAAM+C;yBAAN\/C,IAAM+C","names":["cljs.tools.reader.impl.commons\/number-literal?","reader","initch","cljs.tools.reader.impl.utils\/numeric?","cljs.tools.reader.reader-types\/peek-char","cljs.tools.reader.impl.commons\/read-past","pred","rdr","ch","cljs.tools.reader.reader-types\/read-char","cljs.tools.reader.impl.commons\/skip-line","cljs.tools.reader.impl.utils\/newline?","cljs.tools.reader.impl.commons\/int-pattern","cljs.tools.reader.impl.commons\/ratio-pattern","cljs.tools.reader.impl.commons\/float-pattern","cljs.tools.reader.impl.commons\/match-int","s","m","cljs.core\/vec","cljs.core\/re-find","negate?","a","js\/parseInt","n","bn","cljs.tools.reader.impl.commons\/match-ratio","numerator","denominator","cljs.core\/subs","cljs.tools.reader.impl.commons\/match-float","js\/parseFloat","cljs.tools.reader.impl.commons\/matches?","pattern","vec__7635","cljs.core\/nth","match","cljs.tools.reader.impl.commons\/match-number","cljs.tools.reader.impl.commons\/parse-symbol","token","ns-idx","ns","cljs.core\/count","sym","var_args","args__7491__auto__","len__7484__auto__","i__7485__auto__","argseq__7492__auto__","cljs.core\/IndexedSeq","cljs.tools.reader.impl.commons\/read-comment","seq7638","G__7639","cljs.core\/first","cljs.core\/next","_","cljs.tools.reader.impl.commons\/throwing-reader","msg","cljs.tools.reader.reader-types\/reader-error"]} -------------------------------------------------------------------------------- /out/cljs/tools/reader/impl/utils.cljs: -------------------------------------------------------------------------------- 1 | ;; Copyright (c) Nicola Mometto, Rich Hickey & contributors. 2 | ;; The use and distribution terms for this software are covered by the 3 | ;; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) 4 | ;; which can be found in the file epl-v10.html at the root of this distribution. 5 | ;; By using this software in any fashion, you are agreeing to be bound by 6 | ;; the terms of this license. 7 | ;; You must not remove this notice, or any other, from this software. 8 | 9 | (ns cljs.tools.reader.impl.utils 10 | (:refer-clojure :exclude [char]) 11 | (:require 12 | [clojure.string :as string] 13 | [goog.string :as gstring])) 14 | 15 | (defn char [x] 16 | (when-not (nil? x) 17 | (cljs.core/char x))) 18 | 19 | (defn ^boolean ex-info? [ex] 20 | (instance? cljs.core.ExceptionInfo ex)) 21 | 22 | (defrecord ReaderConditional [splicing? form]) 23 | 24 | (defn ^boolean reader-conditional? 25 | "Return true if the value is the data representation of a reader conditional" 26 | [value] 27 | (instance? ReaderConditional value)) 28 | 29 | (defn reader-conditional 30 | "Construct a data representation of a reader conditional. 31 | If true, splicing? indicates read-cond-splicing." 32 | [form splicing?] 33 | (ReaderConditional. splicing? form)) 34 | 35 | (extend-protocol IPrintWithWriter 36 | ReaderConditional 37 | (-pr-writer [coll writer opts] 38 | (-write writer (str "#?" (when (:splicing? coll) "@"))) 39 | (pr-writer (:form coll) writer opts))) 40 | 41 | (def ws-rx #"[\s]") 42 | 43 | (defn ^boolean whitespace? 44 | "Checks whether a given character is whitespace" 45 | [ch] 46 | (when-not (nil? ch) 47 | (if (identical? ch \,) 48 | true 49 | (.test ws-rx ch)))) 50 | 51 | (defn ^boolean numeric? 52 | "Checks whether a given character is numeric" 53 | [ch] 54 | (when-not (nil? ch) 55 | (gstring/isNumeric ch))) 56 | 57 | (defn ^boolean newline? 58 | "Checks whether the character is a newline" 59 | [c] 60 | (or (identical? \newline c) 61 | (identical? "\n" c) 62 | (nil? c))) 63 | 64 | (defn desugar-meta 65 | "Resolves syntactical sugar in metadata" ;; could be combined with some other desugar? 66 | [f] 67 | (cond 68 | (keyword? f) {f true} 69 | (symbol? f) {:tag f} 70 | (string? f) {:tag f} 71 | :else f)) 72 | 73 | (def last-id (atom 0)) 74 | 75 | (defn next-id 76 | [] 77 | (swap! last-id inc)) 78 | -------------------------------------------------------------------------------- /out/clojure/walk.cljs: -------------------------------------------------------------------------------- 1 | ; Copyright (c) Rich Hickey. All rights reserved. 2 | ; The use and distribution terms for this software are covered by the 3 | ; Eclipse Public License 1.0 (http://opensource.org/licenses/eclipse-1.0.php) 4 | ; which can be found in the file epl-v10.html at the root of this distribution. 5 | ; By using this software in any fashion, you are agreeing to be bound by 6 | ; the terms of this license. 7 | ; You must not remove this notice, or any other, from this software. 8 | 9 | ;;; walk.cljs - generic tree walker with replacement 10 | 11 | ;; by Stuart Sierra 12 | ;; Jul5 17, 2011 13 | 14 | ;; CHANGE LOG: 15 | ;; 16 | ;; * July 17, 2011: Port to ClojureScript 17 | ;; 18 | ;; * December 15, 2008: replaced 'walk' with 'prewalk' & 'postwalk' 19 | ;; 20 | ;; * December 9, 2008: first version 21 | 22 | 23 | (ns 24 | ^{:author "Stuart Sierra", 25 | :doc "This file defines a generic tree walker for Clojure data 26 | structures. It takes any data structure (list, vector, map, set, 27 | seq), calls a function on every element, and uses the return value 28 | of the function in place of the original. This makes it fairly 29 | easy to write recursive search-and-replace functions, as shown in 30 | the examples. 31 | 32 | Note: \"walk\" supports all Clojure data structures EXCEPT maps 33 | created with sorted-map-by. There is no (obvious) way to retrieve 34 | the sorting function."} 35 | clojure.walk) 36 | 37 | (defn walk 38 | "Traverses form, an arbitrary data structure. inner and outer are 39 | functions. Applies inner to each element of form, building up a 40 | data structure of the same type, then applies outer to the result. 41 | Recognizes all Clojure data structures. Consumes seqs as with doall." 42 | 43 | {:added "1.1"} 44 | [inner outer form] 45 | (cond 46 | (list? form) (outer (apply list (map inner form))) 47 | (seq? form) (outer (doall (map inner form))) 48 | (record? form) (outer (reduce (fn [r x] (conj r (inner x))) form form)) 49 | (coll? form) (outer (into (empty form) (map inner form))) 50 | :else (outer form))) 51 | 52 | (defn postwalk 53 | "Performs a depth-first, post-order traversal of form. Calls f on 54 | each sub-form, uses f's return value in place of the original. 55 | Recognizes all Clojure data structures. Consumes seqs as with doall." 56 | {:added "1.1"} 57 | [f form] 58 | (walk (partial postwalk f) f form)) 59 | 60 | (defn prewalk 61 | "Like postwalk, but does pre-order traversal." 62 | {:added "1.1"} 63 | [f form] 64 | (walk (partial prewalk f) identity (f form))) 65 | 66 | (defn keywordize-keys 67 | "Recursively transforms all map keys from strings to keywords." 68 | {:added "1.1"} 69 | [m] 70 | (let [f (fn [[k v]] (if (string? k) [(keyword k) v] [k v]))] 71 | ;; only apply to maps 72 | (postwalk (fn [x] (if (map? x) (into {} (map f x)) x)) m))) 73 | 74 | (defn stringify-keys 75 | "Recursively transforms all map keys from keywords to strings." 76 | {:added "1.1"} 77 | [m] 78 | (let [f (fn [[k v]] (if (keyword? k) [(name k) v] [k v]))] 79 | ;; only apply to maps 80 | (postwalk (fn [x] (if (map? x) (into {} (map f x)) x)) m))) 81 | 82 | (defn prewalk-replace 83 | "Recursively transforms form by replacing keys in smap with their 84 | values. Like clojure/replace but works on any data structure. Does 85 | replacement at the root of the tree first." 86 | {:added "1.1"} 87 | [smap form] 88 | (prewalk (fn [x] (if (contains? smap x) (smap x) x)) form)) 89 | 90 | (defn postwalk-replace 91 | "Recursively transforms form by replacing keys in smap with their 92 | values. Like clojure/replace but works on any data structure. Does 93 | replacement at the leaves of the tree first." 94 | {:added "1.1"} 95 | [smap form] 96 | (postwalk (fn [x] (if (contains? smap x) (smap x) x)) form)) 97 | -------------------------------------------------------------------------------- /out/clojure/walk.js: -------------------------------------------------------------------------------- 1 | // Compiled by ClojureScript 1.9.229 {:optimize-constants true, :target :nodejs} 2 | goog.provide('clojure.walk'); 3 | goog.require('cljs.core'); 4 | /** 5 | * Traverses form, an arbitrary data structure. inner and outer are 6 | * functions. Applies inner to each element of form, building up a 7 | * data structure of the same type, then applies outer to the result. 8 | * Recognizes all Clojure data structures. Consumes seqs as with doall. 9 | */ 10 | clojure.walk.walk = (function clojure$walk$walk(inner,outer,form){ 11 | if(cljs.core.list_QMARK_.call(null,form)){ 12 | return outer.call(null,cljs.core.apply.call(null,cljs.core.list,cljs.core.map.call(null,inner,form))); 13 | } else { 14 | if(cljs.core.seq_QMARK_.call(null,form)){ 15 | return outer.call(null,cljs.core.doall.call(null,cljs.core.map.call(null,inner,form))); 16 | } else { 17 | if(cljs.core.record_QMARK_.call(null,form)){ 18 | return outer.call(null,cljs.core.reduce.call(null,(function (r,x){ 19 | return cljs.core.conj.call(null,r,inner.call(null,x)); 20 | }),form,form)); 21 | } else { 22 | if(cljs.core.coll_QMARK_.call(null,form)){ 23 | return outer.call(null,cljs.core.into.call(null,cljs.core.empty.call(null,form),cljs.core.map.call(null,inner,form))); 24 | } else { 25 | return outer.call(null,form); 26 | 27 | } 28 | } 29 | } 30 | } 31 | }); 32 | /** 33 | * Performs a depth-first, post-order traversal of form. Calls f on 34 | * each sub-form, uses f's return value in place of the original. 35 | * Recognizes all Clojure data structures. Consumes seqs as with doall. 36 | */ 37 | clojure.walk.postwalk = (function clojure$walk$postwalk(f,form){ 38 | return clojure.walk.walk.call(null,cljs.core.partial.call(null,clojure$walk$postwalk,f),f,form); 39 | }); 40 | /** 41 | * Like postwalk, but does pre-order traversal. 42 | */ 43 | clojure.walk.prewalk = (function clojure$walk$prewalk(f,form){ 44 | return clojure.walk.walk.call(null,cljs.core.partial.call(null,clojure$walk$prewalk,f),cljs.core.identity,f.call(null,form)); 45 | }); 46 | /** 47 | * Recursively transforms all map keys from strings to keywords. 48 | */ 49 | clojure.walk.keywordize_keys = (function clojure$walk$keywordize_keys(m){ 50 | var f = (function (p__11092){ 51 | var vec__11093 = p__11092; 52 | var k = cljs.core.nth.call(null,vec__11093,(0),null); 53 | var v = cljs.core.nth.call(null,vec__11093,(1),null); 54 | if(typeof k === 'string'){ 55 | return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.keyword.call(null,k),v], null); 56 | } else { 57 | return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null); 58 | } 59 | }); 60 | return clojure.walk.postwalk.call(null,((function (f){ 61 | return (function (x){ 62 | if(cljs.core.map_QMARK_.call(null,x)){ 63 | return cljs.core.into.call(null,cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.call(null,f,x)); 64 | } else { 65 | return x; 66 | } 67 | });})(f)) 68 | ,m); 69 | }); 70 | /** 71 | * Recursively transforms all map keys from keywords to strings. 72 | */ 73 | clojure.walk.stringify_keys = (function clojure$walk$stringify_keys(m){ 74 | var f = (function (p__11100){ 75 | var vec__11101 = p__11100; 76 | var k = cljs.core.nth.call(null,vec__11101,(0),null); 77 | var v = cljs.core.nth.call(null,vec__11101,(1),null); 78 | if((k instanceof cljs.core.Keyword)){ 79 | return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [cljs.core.name.call(null,k),v], null); 80 | } else { 81 | return new cljs.core.PersistentVector(null, 2, 5, cljs.core.PersistentVector.EMPTY_NODE, [k,v], null); 82 | } 83 | }); 84 | return clojure.walk.postwalk.call(null,((function (f){ 85 | return (function (x){ 86 | if(cljs.core.map_QMARK_.call(null,x)){ 87 | return cljs.core.into.call(null,cljs.core.PersistentArrayMap.EMPTY,cljs.core.map.call(null,f,x)); 88 | } else { 89 | return x; 90 | } 91 | });})(f)) 92 | ,m); 93 | }); 94 | /** 95 | * Recursively transforms form by replacing keys in smap with their 96 | * values. Like clojure/replace but works on any data structure. Does 97 | * replacement at the root of the tree first. 98 | */ 99 | clojure.walk.prewalk_replace = (function clojure$walk$prewalk_replace(smap,form){ 100 | return clojure.walk.prewalk.call(null,(function (x){ 101 | if(cljs.core.contains_QMARK_.call(null,smap,x)){ 102 | return smap.call(null,x); 103 | } else { 104 | return x; 105 | } 106 | }),form); 107 | }); 108 | /** 109 | * Recursively transforms form by replacing keys in smap with their 110 | * values. Like clojure/replace but works on any data structure. Does 111 | * replacement at the leaves of the tree first. 112 | */ 113 | clojure.walk.postwalk_replace = (function clojure$walk$postwalk_replace(smap,form){ 114 | return clojure.walk.postwalk.call(null,(function (x){ 115 | if(cljs.core.contains_QMARK_.call(null,smap,x)){ 116 | return smap.call(null,x); 117 | } else { 118 | return x; 119 | } 120 | }),form); 121 | }); 122 | 123 | //# sourceMappingURL=walk.js.map -------------------------------------------------------------------------------- /out/clojure/walk.js.map: -------------------------------------------------------------------------------- 1 | {"version":3,"file":"\/Users\/clumsyjedi\/workspace\/clack\/out\/clojure\/walk.js","sources":["walk.cljs"],"lineCount":123,"mappings":";AAsBA;;AAcA;;;;;;oBAAA,pBAAMA,gDAOHC,MAAMC,MAAMC;AAPf,AAQE,GACE,AAACC,gCAAMD;AAAQ,OAACD,gBAAM,AAACG,0BAAMC,eAAK,AAACC,wBAAIN,MAAME;;AAD\/C,GAEE,AAACK,+BAAKL;AAAS,OAACD,gBAAM,AAACO,0BAAM,AAACF,wBAAIN,MAAME;;AAF1C,GAGE,AAACO,kCAAQP;AAAM,OAACD,gBAAM,AAACS,2BAAO,WAAKC,EAAEC;AAAP,AAAU,OAACC,yBAAKF,EAAE,AAACX,gBAAMY;GAAKV,KAAKA;;AAHnE,GAIE,AAACY,gCAAMZ;AAAQ,OAACD,gBAAM,AAACc,yBAAK,AAACC,0BAAMd,MAAM,AAACI,wBAAIN,MAAME;;AAJtD,AAKiB,OAACD,gBAAMC;;;;;;;AAE1B;;;;;wBAAA,xBAAMe,wDAKHC,EAAEhB;AALL,AAME,OAACH,4BAAK,AAACoB,4BAAQC,sBAASF,GAAGA,EAAEhB;;AAE\/B;;;uBAAA,vBAAMmB,sDAGHH,EAAEhB;AAHL,AAIE,OAACH,4BAAK,AAACoB,4BAAQG,qBAAQJ,GAAGK,mBAAS,AAACL,YAAEhB;;AAExC;;;+BAAA,\/BAAMsB,sEAGHC;AAHH,AAIE,IAAMP,IAAE,WAAAQ;AAAA,AAAA,IAAAC,aAAAD;QAAA,AAAAE,wBAAAD,WAAA,IAAA,3CAAME;QAAN,AAAAD,wBAAAD,WAAA,IAAA,3CAAQG;AAAR,AAAY,GAAI,OAASD;AAAb,0FAAiB,AAACE,4BAAQF,GAAGC;;AAA7B,0FAAiCD,EAAEC;;;AAAvD,AAEE,OAACb,gCAAS;kBAAKL;AAAL,AAAQ,GAAI,AAACoB,+BAAKpB;AAAG,gCAAA,zBAACG,4DAAQ,AAACT,wBAAIY,EAAEN;;AAAIA;;;CAAIa;;AAE3D;;;8BAAA,9BAAMQ,oEAGHR;AAHH,AAIE,IAAMP,IAAE,WAAAgB;AAAA,AAAA,IAAAC,aAAAD;QAAA,AAAAN,wBAAAO,WAAA,IAAA,3CAAMN;QAAN,AAAAD,wBAAAO,WAAA,IAAA,3CAAQL;AAAR,AAAY,GAAI,cAAAM,bAAUP;AAAd,0FAAkB,AAACQ,yBAAKR,GAAGC;;AAA3B,0FAA+BD,EAAEC;;;AAArD,AAEE,OAACb,gCAAS;kBAAKL;AAAL,AAAQ,GAAI,AAACoB,+BAAKpB;AAAG,gCAAA,zBAACG,4DAAQ,AAACT,wBAAIY,EAAEN;;AAAIA;;;CAAIa;;AAE3D;;;;;+BAAA,\/BAAMa,sEAKHC,KAAKrC;AALR,AAME,OAACmB,+BAAQ,WAAKT;AAAL,AAAQ,GAAI,AAAC4B,oCAAUD,KAAK3B;AAAG,OAAC2B,eAAK3B;;AAAGA;;GAAIV;;AAEvD;;;;;gCAAA,hCAAMuC,wEAKHF,KAAKrC;AALR,AAME,OAACe,gCAAS,WAAKL;AAAL,AAAQ,GAAI,AAAC4B,oCAAUD,KAAK3B;AAAG,OAAC2B,eAAK3B;;AAAGA;;GAAIV","names":["clojure.walk\/walk","inner","outer","form","cljs.core\/list?","cljs.core\/apply","cljs.core\/list","cljs.core\/map","cljs.core\/seq?","cljs.core\/doall","cljs.core\/record?","cljs.core\/reduce","r","x","cljs.core\/conj","cljs.core\/coll?","cljs.core\/into","cljs.core\/empty","clojure.walk\/postwalk","f","cljs.core\/partial","postwalk","clojure.walk\/prewalk","prewalk","cljs.core\/identity","clojure.walk\/keywordize-keys","m","p__11092","vec__11093","cljs.core\/nth","k","v","cljs.core\/keyword","cljs.core\/map?","clojure.walk\/stringify-keys","p__11100","vec__11101","cljs.core\/Keyword","cljs.core\/name","clojure.walk\/prewalk-replace","smap","cljs.core\/contains?","clojure.walk\/postwalk-replace"]} -------------------------------------------------------------------------------- /out/com/cognitect/transit/delimiters.js: -------------------------------------------------------------------------------- 1 | // Copyright 2014 Cognitect. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS-IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | goog.provide("com.cognitect.transit.delimiters"); 16 | 17 | goog.scope(function() { 18 | 19 | var delimiters = com.cognitect.transit.delimiters; 20 | 21 | /** 22 | * @const 23 | * @type {string} 24 | */ 25 | delimiters.ESC = "~"; 26 | 27 | /** 28 | * @const 29 | * @type {string} 30 | */ 31 | delimiters.TAG = "#"; 32 | 33 | /** 34 | * @const 35 | * @type {string} 36 | */ 37 | delimiters.SUB = "^"; 38 | 39 | /** 40 | * @const 41 | * @type {string} 42 | */ 43 | delimiters.RES = "`"; 44 | 45 | /** 46 | * @const 47 | * @type {string} 48 | */ 49 | delimiters.ESC_TAG = "~#"; 50 | 51 | }); 52 | -------------------------------------------------------------------------------- /out/com/cognitect/transit/impl/reader.js: -------------------------------------------------------------------------------- 1 | // Copyright 2014 Cognitect. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS-IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | goog.provide("com.cognitect.transit.impl.reader"); 16 | goog.require("com.cognitect.transit.impl.decoder"); 17 | goog.require("com.cognitect.transit.caching"); 18 | 19 | goog.scope(function () { 20 | 21 | var reader = com.cognitect.transit.impl.reader, 22 | decoder = com.cognitect.transit.impl.decoder, 23 | caching = com.cognitect.transit.caching; 24 | 25 | /** 26 | * A JSON unmarshaller 27 | * @constructor 28 | */ 29 | reader.JSONUnmarshaller = function Transit$JSONUnmarshaller(opts) { 30 | this.decoder = new decoder.Decoder(opts); 31 | }; 32 | 33 | /** 34 | * @param {string} str a JSON string 35 | * @param {caching.ReadCache} cache a read cache 36 | * @returns {*} 37 | */ 38 | reader.JSONUnmarshaller.prototype.unmarshal = function (str, cache) { 39 | return this.decoder.decode(JSON.parse(str), cache); 40 | }; 41 | 42 | /** 43 | * A transit reader 44 | * @constructor 45 | * @param {reader.JSONUnmarshaller} unmarshaller 46 | * @param {Object=} options 47 | */ 48 | reader.Reader = function Transit$Reader(unmarshaller, options) { 49 | this.unmarshaller = unmarshaller; 50 | this.options = options || {}; 51 | this.cache = this.options["cache"] ? this.options["cache"] : new caching.ReadCache(); 52 | }; 53 | 54 | /** 55 | * @param {string} str a string to be read 56 | * @returns {*} 57 | */ 58 | reader.Reader.prototype.read = function (str) { 59 | var ret = this.unmarshaller.unmarshal(str, this.cache) 60 | this.cache.clear(); 61 | return ret; 62 | }; 63 | reader.Reader.prototype["read"] = reader.Reader.prototype.read; 64 | 65 | }); 66 | -------------------------------------------------------------------------------- /out/goog/bootstrap/nodejs.js: -------------------------------------------------------------------------------- 1 | // Copyright 2013 The Closure Library Authors. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS-IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | /** 16 | * @fileoverview A nodejs script for dynamically requiring Closure within 17 | * nodejs. 18 | * 19 | * Example of usage: 20 | * 21 | * require('./bootstrap/nodejs') 22 | * goog.require('goog.ui.Component') 23 | * 24 | * 25 | * This loads goog.ui.Component in the global scope. 26 | * 27 | * If you want to load custom libraries, you can require the custom deps file 28 | * directly. If your custom libraries introduce new globals, you may 29 | * need to run goog.nodeGlobalRequire to get them to load correctly. 30 | * 31 | * 32 | * require('./path/to/my/deps.js') 33 | * goog.bootstrap.nodeJs.nodeGlobalRequire('./path/to/my/base.js') 34 | * goog.require('my.Class') 35 | * 36 | * 37 | * @author nick@medium.com (Nick Santos) 38 | * 39 | * @nocompile 40 | */ 41 | 42 | var fs = require("fs"); 43 | var vm = require("vm"); 44 | var path = require("path"); 45 | var CLJS_ROOT = "."; 46 | 47 | 48 | /** 49 | * The goog namespace in the global scope. 50 | */ 51 | global.goog = {}; 52 | 53 | 54 | /** 55 | * Imports a script using Node's require() API. 56 | * 57 | * @param {string} src The script source. 58 | * @return {boolean} True if the script was imported, false otherwise. 59 | */ 60 | global.CLOSURE_IMPORT_SCRIPT = function(src) { 61 | // if CLJS_ROOT has been rewritten (by REPLs) need to compute require path 62 | // so we can delete the old entry from the Node.js require cache 63 | if(CLJS_ROOT !== ".") { 64 | var cached = null; 65 | if(src.substring(0, 2) == "..") { 66 | cached = path.join(CLJS_ROOT, src.substring(3)); 67 | } else { 68 | cached = path.join(CLJS_ROOT, "goog", src); 69 | } 70 | if(require.cache[cached]) delete require.cache[cached]; 71 | } 72 | 73 | // Sources are always expressed relative to closure's base.js, but 74 | // require() is always relative to the current source. 75 | require(path.join(".", "..", src)); 76 | return true; 77 | }; 78 | 79 | 80 | // Declared here so it can be used to require base.js 81 | function nodeGlobalRequire(file) { 82 | var _module = global.module, _exports = global.exports; 83 | global.module = undefined; 84 | global.exports = undefined; 85 | vm.runInThisContext(fs.readFileSync(file), file); 86 | global.exports = _exports; 87 | global.module = _module; 88 | } 89 | 90 | 91 | // Load Closure's base.js into memory. It is assumed base.js is in the 92 | // directory above this directory given this script's location in 93 | // bootstrap/nodejs.js. 94 | nodeGlobalRequire(path.resolve(__dirname, '..', 'base.js')); 95 | 96 | 97 | /** 98 | * Bootstraps a file into the global scope. 99 | * 100 | * This is strictly for cases where normal require() won't work, 101 | * because the file declares global symbols with 'var' that need to 102 | * be added to the global scope. 103 | * @suppress {missingProvide} 104 | * 105 | * @param {string} file The path to the file. 106 | */ 107 | goog.nodeGlobalRequire = nodeGlobalRequire; 108 | 109 | -------------------------------------------------------------------------------- /out/goog/debug/error.js: -------------------------------------------------------------------------------- 1 | // Copyright 2009 The Closure Library Authors. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS-IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | /** 16 | * @fileoverview Provides a base class for custom Error objects such that the 17 | * stack is correctly maintained. 18 | * 19 | * You should never need to throw goog.debug.Error(msg) directly, Error(msg) is 20 | * sufficient. 21 | * 22 | */ 23 | 24 | goog.provide('goog.debug.Error'); 25 | 26 | 27 | 28 | /** 29 | * Base class for custom error objects. 30 | * @param {*=} opt_msg The message associated with the error. 31 | * @constructor 32 | * @extends {Error} 33 | */ 34 | goog.debug.Error = function(opt_msg) { 35 | 36 | // Attempt to ensure there is a stack trace. 37 | if (Error.captureStackTrace) { 38 | Error.captureStackTrace(this, goog.debug.Error); 39 | } else { 40 | var stack = new Error().stack; 41 | if (stack) { 42 | this.stack = stack; 43 | } 44 | } 45 | 46 | if (opt_msg) { 47 | this.message = String(opt_msg); 48 | } 49 | 50 | /** 51 | * Whether to report this error to the server. Setting this to false will 52 | * cause the error reporter to not report the error back to the server, 53 | * which can be useful if the client knows that the error has already been 54 | * logged on the server. 55 | * @type {boolean} 56 | */ 57 | this.reportErrorToServer = true; 58 | }; 59 | goog.inherits(goog.debug.Error, Error); 60 | 61 | 62 | /** @override */ 63 | goog.debug.Error.prototype.name = 'CustomError'; 64 | -------------------------------------------------------------------------------- /out/goog/dom/nodetype.js: -------------------------------------------------------------------------------- 1 | // Copyright 2006 The Closure Library Authors. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS-IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | /** 16 | * @fileoverview Definition of goog.dom.NodeType. 17 | */ 18 | 19 | goog.provide('goog.dom.NodeType'); 20 | 21 | 22 | /** 23 | * Constants for the nodeType attribute in the Node interface. 24 | * 25 | * These constants match those specified in the Node interface. These are 26 | * usually present on the Node object in recent browsers, but not in older 27 | * browsers (specifically, early IEs) and thus are given here. 28 | * 29 | * In some browsers (early IEs), these are not defined on the Node object, 30 | * so they are provided here. 31 | * 32 | * See http://www.w3.org/TR/DOM-Level-2-Core/core.html#ID-1950641247 33 | * @enum {number} 34 | */ 35 | goog.dom.NodeType = { 36 | ELEMENT: 1, 37 | ATTRIBUTE: 2, 38 | TEXT: 3, 39 | CDATA_SECTION: 4, 40 | ENTITY_REFERENCE: 5, 41 | ENTITY: 6, 42 | PROCESSING_INSTRUCTION: 7, 43 | COMMENT: 8, 44 | DOCUMENT: 9, 45 | DOCUMENT_TYPE: 10, 46 | DOCUMENT_FRAGMENT: 11, 47 | NOTATION: 12 48 | }; 49 | -------------------------------------------------------------------------------- /out/goog/string/stringbuffer.js: -------------------------------------------------------------------------------- 1 | // Copyright 2006 The Closure Library Authors. All Rights Reserved. 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"); 4 | // you may not use this file except in compliance with the License. 5 | // You may obtain a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS-IS" BASIS, 11 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | // See the License for the specific language governing permissions and 13 | // limitations under the License. 14 | 15 | /** 16 | * @fileoverview Utility for fast string concatenation. 17 | */ 18 | 19 | goog.provide('goog.string.StringBuffer'); 20 | 21 | 22 | 23 | /** 24 | * Utility class to facilitate string concatenation. 25 | * 26 | * @param {*=} opt_a1 Optional first initial item to append. 27 | * @param {...*} var_args Other initial items to 28 | * append, e.g., new goog.string.StringBuffer('foo', 'bar'). 29 | * @constructor 30 | */ 31 | goog.string.StringBuffer = function(opt_a1, var_args) { 32 | if (opt_a1 != null) { 33 | this.append.apply(this, arguments); 34 | } 35 | }; 36 | 37 | 38 | /** 39 | * Internal buffer for the string to be concatenated. 40 | * @type {string} 41 | * @private 42 | */ 43 | goog.string.StringBuffer.prototype.buffer_ = ''; 44 | 45 | 46 | /** 47 | * Sets the contents of the string buffer object, replacing what's currently 48 | * there. 49 | * 50 | * @param {*} s String to set. 51 | */ 52 | goog.string.StringBuffer.prototype.set = function(s) { 53 | this.buffer_ = '' + s; 54 | }; 55 | 56 | 57 | /** 58 | * Appends one or more items to the buffer. 59 | * 60 | * Calling this with null, undefined, or empty arguments is an error. 61 | * 62 | * @param {*} a1 Required first string. 63 | * @param {*=} opt_a2 Optional second string. 64 | * @param {...?} var_args Other items to append, 65 | * e.g., sb.append('foo', 'bar', 'baz'). 66 | * @return {!goog.string.StringBuffer} This same StringBuffer object. 67 | * @suppress {duplicate} 68 | */ 69 | goog.string.StringBuffer.prototype.append = function(a1, opt_a2, var_args) { 70 | // Use a1 directly to avoid arguments instantiation for single-arg case. 71 | this.buffer_ += String(a1); 72 | if (opt_a2 != null) { // second argument is undefined (null == undefined) 73 | for (var i = 1; i < arguments.length; i++) { 74 | this.buffer_ += arguments[i]; 75 | } 76 | } 77 | return this; 78 | }; 79 | 80 | 81 | /** 82 | * Clears the internal buffer. 83 | */ 84 | goog.string.StringBuffer.prototype.clear = function() { 85 | this.buffer_ = ''; 86 | }; 87 | 88 | 89 | /** 90 | * @return {number} the length of the current contents of the buffer. 91 | */ 92 | goog.string.StringBuffer.prototype.getLength = function() { 93 | return this.buffer_.length; 94 | }; 95 | 96 | 97 | /** 98 | * @return {string} The concatenated string. 99 | * @override 100 | */ 101 | goog.string.StringBuffer.prototype.toString = function() { 102 | return this.buffer_; 103 | }; 104 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "clack-cljs", 3 | "version": "1.2.6", 4 | "description": "Clojurescript on the command line", 5 | "main": "clack.js", 6 | "bin": { 7 | "clack": "clack.js" 8 | }, 9 | "directories": { 10 | "test": "test" 11 | }, 12 | "dependencies": { 13 | "app-module-path": "^2.2.0", 14 | "js-yaml": "github:clumsyjedi/js-yaml", 15 | "jsonparse": "1.2.0" 16 | }, 17 | "devDependencies": {}, 18 | "scripts": { 19 | "test": "sh test/main.sh" 20 | }, 21 | "repository": { 22 | "type": "git", 23 | "url": "git+https://github.com/clumsyjedi/clack.git" 24 | }, 25 | "keywords": [ 26 | "jq", 27 | "ack", 28 | "grep", 29 | "clojure", 30 | "clojurescript", 31 | "lisp" 32 | ], 33 | "author": "Frazer Irving", 34 | "license": "EPL-1.0", 35 | "bugs": { 36 | "url": "https://github.com/clumsyjedi/clack/issues" 37 | }, 38 | "homepage": "https://github.com/clumsyjedi/clack#readme" 39 | } 40 | -------------------------------------------------------------------------------- /project.clj: -------------------------------------------------------------------------------- 1 | (defproject clack "0.0.1" 2 | :dependencies [[org.clojure/clojure "1.8.0"] 3 | [org.clojure/clojurescript "1.9.229"] 4 | [com.cognitect/transit-cljs "0.8.237"]] 5 | :plugins [[lein-cljsbuild "1.1.3"]] 6 | :profiles {:dev {:dependencies [[com.cemerick/piggieback "0.2.1"] 7 | [org.clojure/tools.nrepl "0.2.10"]] 8 | :repl-options {:nrepl-middleware [cemerick.piggieback/wrap-cljs-repl]}}} 9 | :cljsbuild {:builds [{:source-paths ["src"] 10 | :compiler {:main "clack.core" 11 | :output-to "clack.js" 12 | :output-dir "out" 13 | :target :nodejs 14 | :optimize-constants true 15 | :pretty-print false 16 | }}]}) 17 | -------------------------------------------------------------------------------- /src/clack/parser.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser 2 | (:require [clack.parser.edn :as edn] 3 | [clack.parser.json :as json] 4 | [clack.parser.transit :as transit] 5 | [clack.parser.protocol :refer [handle-input]] 6 | [clack.parser.string :as string] 7 | [clack.parser.yaml :as yaml])) 8 | 9 | (defn- parser [input-type] 10 | (condp = input-type 11 | :json (json/parser) 12 | :str (string/parser) 13 | :tjs (transit/parser) 14 | :yaml (yaml/parser) 15 | (edn/parser))) 16 | 17 | (defn parse [input-type stream complete-fn keywordize?] 18 | (handle-input (parser input-type) stream complete-fn keywordize?)) 19 | -------------------------------------------------------------------------------- /src/clack/parser/edn.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.edn 2 | (:require [clack.parser.protocol :refer [IParser]] 3 | [cljs.tools.reader :refer [read-string]])) 4 | 5 | (defrecord EdnParser [] 6 | IParser 7 | (handle-input [this stream complete-fn _] 8 | (let [input (atom "")] 9 | (.on stream "readable" (fn [] 10 | (when-let [chunk (.read stream)] 11 | (swap! input #(str % chunk))))) 12 | (.on stream "end" (fn [] 13 | (complete-fn (read-string (str "[" @input "]")))))))) 14 | 15 | (defn parser [] 16 | (->EdnParser)) 17 | -------------------------------------------------------------------------------- /src/clack/parser/json.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.json 2 | (:require [clack.parser.protocol :refer [IParser]])) 3 | 4 | (def jsonparse (js/require "jsonparse")) 5 | 6 | (defrecord JsonParser [] 7 | IParser 8 | (handle-input [this stream complete-fn keywordize?] 9 | (let [entities (atom []) 10 | parser (jsonparse.)] 11 | (aset parser "onValue" (fn [entity] 12 | (this-as self 13 | (when (zero? (.-length (.-stack self))) 14 | (swap! entities conj 15 | (js->clj entity 16 | :keywordize-keys keywordize?)))))) 17 | (.on stream "readable" (fn [] 18 | (when-let [chunk (.read stream)] 19 | (.write parser chunk)))) 20 | (.on stream "end" (fn [] 21 | (complete-fn @entities)))))) 22 | 23 | (defn parser [] 24 | (->JsonParser)) 25 | -------------------------------------------------------------------------------- /src/clack/parser/protocol.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.protocol) 2 | 3 | (defprotocol IParser 4 | (handle-input [this stream complete-fn keywordize?])) 5 | -------------------------------------------------------------------------------- /src/clack/parser/string.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.string 2 | (:require [clack.parser.protocol :refer [IParser]])) 3 | 4 | (defrecord StringParser [] 5 | IParser 6 | (handle-input [this stream complete-fn _] 7 | (let [lines (atom [])] 8 | (.on stream "readable" (fn [] 9 | 10 | (let [rl (.createInterface (js/require "readline") 11 | (clj->js {:input stream 12 | :terminal false}))] 13 | (.on rl "line" (fn [line] 14 | (swap! lines conj line)))))) 15 | (.on stream "end" (fn [] 16 | (complete-fn @lines)))))) 17 | 18 | (defn parser [] 19 | (->StringParser)) 20 | -------------------------------------------------------------------------------- /src/clack/parser/transit.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.transit 2 | (:require [clack.parser.protocol :refer [IParser]] 3 | [cognitect.transit :as transit] 4 | )) 5 | 6 | (defrecord TransitParser [] 7 | IParser 8 | (handle-input [this stream complete-fn _] 9 | (let [input (atom "")] 10 | (.on stream "readable" (fn [] 11 | (when-let [chunk (.read stream)] 12 | (swap! input #(str % chunk))))) 13 | (.on stream "end" (fn [] 14 | (complete-fn (transit/read (transit/reader :json) 15 | (str "[" @input "]")))))))) 16 | 17 | (defn parser [] 18 | (->TransitParser)) 19 | -------------------------------------------------------------------------------- /src/clack/parser/yaml.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.parser.yaml 2 | (:require [clack.parser.protocol :refer [IParser]])) 3 | 4 | (def js-yaml (js/require "js-yaml")) 5 | 6 | (defrecord YamlParser [] 7 | IParser 8 | (handle-input [this stream complete-fn keywordize?] 9 | (let [input (atom "") 10 | entities (atom [])] 11 | (.on stream "readable" (fn [] 12 | (when-let [chunk (.read stream)] 13 | (swap! input #(str % chunk))))) 14 | (.on stream "end" (fn [] 15 | (complete-fn (map #(js->clj % :keywordize-keys keywordize?) 16 | (.loadAll js-yaml @input)))))))) 17 | 18 | (defn parser [] 19 | (->YamlParser)) 20 | -------------------------------------------------------------------------------- /src/clack/serializer.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer 2 | (:require [clack.serializer.edn :as edn] 3 | [clack.serializer.json :as json] 4 | [clack.serializer.transit :as transit] 5 | [clack.serializer.string :as string] 6 | [clack.serializer.yaml :as yaml] 7 | [clack.serializer.protocol :refer [freeze]])) 8 | 9 | (defn- serializer [input-type] 10 | (condp = input-type 11 | :json (json/serializer) 12 | :str (string/serializer) 13 | :tjs (transit/serializer) 14 | :yaml (yaml/serializer) 15 | (edn/serializer))) 16 | 17 | (defn serialize [input-type data] 18 | (freeze (serializer input-type) data)) 19 | -------------------------------------------------------------------------------- /src/clack/serializer/edn.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.edn 2 | (:require [clack.serializer.protocol :refer [ISerializer]] 3 | [cljs.tools.reader :refer [read-string]] 4 | [cljs.pprint :refer [pprint]] 5 | [clojure.string :as s])) 6 | 7 | (defrecord EdnSerializer [] 8 | ISerializer 9 | (freeze [this data] 10 | (s/replace (with-out-str (pprint data)) #"\n+$" ""))) 11 | 12 | (defn serializer [] 13 | (->EdnSerializer)) 14 | -------------------------------------------------------------------------------- /src/clack/serializer/json.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.json 2 | (:require [clack.serializer.protocol :refer [ISerializer]])) 3 | 4 | (def jsonparse (js/require "jsonparse")) 5 | 6 | (defrecord JsonSerializer [] 7 | ISerializer 8 | (freeze [this data] 9 | (js/JSON.stringify (clj->js data)))) 10 | 11 | (defn serializer [] 12 | (->JsonSerializer)) 13 | -------------------------------------------------------------------------------- /src/clack/serializer/protocol.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.protocol) 2 | 3 | (defprotocol ISerializer 4 | (freeze [this data])) 5 | -------------------------------------------------------------------------------- /src/clack/serializer/string.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.string 2 | (:require [clack.serializer.protocol :refer [ISerializer]] 3 | [cljs.tools.reader :refer [read-string]] 4 | [cljs.pprint :refer [pprint]] 5 | [clojure.string :as s])) 6 | 7 | (defrecord StringSerializer [] 8 | ISerializer 9 | (freeze [this data] 10 | (str data))) 11 | 12 | (defn serializer [] 13 | (->StringSerializer)) 14 | -------------------------------------------------------------------------------- /src/clack/serializer/transit.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.transit 2 | (:require [clack.serializer.protocol :refer [ISerializer]] 3 | [cognitect.transit :as transit] 4 | )) 5 | 6 | (defrecord TransitSerializer [] 7 | ISerializer 8 | (freeze [this data] 9 | (transit/write (transit/writer :json) data))) 10 | 11 | (defn serializer [] 12 | (->TransitSerializer)) 13 | -------------------------------------------------------------------------------- /src/clack/serializer/yaml.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.yaml 2 | (:require [clack.serializer.protocol :refer [ISerializer]])) 3 | 4 | (def js-yaml (js/require "js-yaml")) 5 | 6 | (defrecord YamlSerializer [] 7 | ISerializer 8 | (freeze [this data] 9 | (str "---\n" (.dump js-yaml (clj->js data))))) 10 | 11 | (defn serializer [] 12 | (->YamlSerializer)) 13 | -------------------------------------------------------------------------------- /src/clack/serializerstring.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.serializer.string 2 | (:require [clack.serializer.protocol :refer [ISerializer]])) 3 | 4 | (defrecord EdnSerializer [] 5 | ISerializer 6 | (freeze [this data] 7 | (str data))) 8 | 9 | (defn serializer [] 10 | (->EdnSerializer)) 11 | -------------------------------------------------------------------------------- /src/clack/util.cljs: -------------------------------------------------------------------------------- 1 | (ns clack.util 2 | (:require [cljs.js :refer [eval js-eval empty-state]] 3 | [cljs.tools.reader :refer [read-string]] 4 | [cljs.pprint :refer [pprint]] 5 | [cognitect.transit :as transit] 6 | [clojure.string :as s])) 7 | 8 | (defonce formats {:js :json :json :json 9 | :transit :tjs :transit-js :tjs :tjs :tjs 10 | :string :str :str :str :s :str 11 | :yaml :yaml :yml :yaml 12 | :edn :edn}) 13 | 14 | (defn error 15 | "log error and exit with error code" 16 | [msg] 17 | (js/console.error msg) 18 | (js/process.exit 1)) 19 | 20 | (defn slurp [filename] 21 | (js/require "fs") 22 | (js/fs.readFileSync filename)) 23 | 24 | (defn eval* 25 | "evaluate string" 26 | [s] 27 | (eval (empty-state) 28 | (read-string s) 29 | {:eval js-eval 30 | :source-map true 31 | :context :expr} 32 | identity)) 33 | 34 | 35 | (defn input-format [meta] 36 | (get formats (get meta :input-format) :edn)) 37 | 38 | (defn output-format [meta] 39 | (get formats (get meta :output-format) :edn)) 40 | 41 | -------------------------------------------------------------------------------- /test/dwim.sh: -------------------------------------------------------------------------------- 1 | # DWIM - Do What I Mean 2 | # 3 | # There are three invocation modes that are relevant here: 4 | 5 | # Input is a single data structure, query should be applied against it, and a dingle data structure should be returned 6 | assert "echo {:foo :bar} | clack :foo " ":bar" 7 | 8 | # input is multiple data structures, the query should be applied to each data structure. Output should be multiple data structures. 9 | assert "echo [1 2 3] [4 5 6] [7 8 9] | clack -f 'even?'" $'(2)\n(4 6)\n(8)' 10 | 11 | # input is multiple data structures, query should be applied to the collection of all datastructures, the output should be multiple data structures 12 | assert "echo {} 1 [] | clack -w -u -f 'coll?'" $'{}\n[]' 13 | 14 | # read in lines of numbers, increment them, write out lines of numbers 15 | assert 'echo 1 2 3 | clack -e inc' $'2\n3\n4' 16 | 17 | # echo foo | clack should have the same output as echo '{"foo" "bar"}' | clack -e first -e key 18 | assert "echo '{\"foo\" \"bar\"}' | clack -e first -e key" '"foo"' 19 | assert "echo foo | clack -i str" '"foo"' 20 | -------------------------------------------------------------------------------- /test/fixtures/sample.json: -------------------------------------------------------------------------------- 1 | {"so": {"so": "deep"}} 2 | -------------------------------------------------------------------------------- /test/fixtures/sample.yaml: -------------------------------------------------------------------------------- 1 | --- 2 | doc: one 3 | foo: bar 4 | baz: bak 5 | num: 5 6 | map: 7 | lol: fml 8 | arr: 9 | - first 10 | - second 11 | --- 12 | doc: two 13 | foo: bar 14 | baz: bak 15 | num: 5 16 | map: 17 | lol: fml 18 | arr: 19 | - first 20 | -------------------------------------------------------------------------------- /test/general.sh: -------------------------------------------------------------------------------- 1 | 2 | # basic 3 | assert "echo '{}' | clack" "{}" 4 | 5 | # default get 6 | assert "echo '{:foo :bar}' | clack :foo" ":bar" 7 | 8 | # defsault multilevel get 9 | assert "echo '{:foo {:bar {:baz \"whaaaat?\"}}}' | clack :foo :bar :baz" "\"whaaaat?\"" 10 | 11 | # default multilevel / mixed type get 12 | assert "echo '{\"foo\" {:bar [:baz]}}' | clack foo :bar 0" ":baz" 13 | 14 | # eval keys short opt 15 | assert "echo '{:foo 1 :bar 2 :baz 3}' | clack -e keys" "(:baz :bar :foo)" 16 | 17 | # eval keys long opt 18 | assert "echo '{:foo 1 :bar 2 :baz 3}' | clack --eval keys" "(:baz :bar :foo)" 19 | 20 | # filter 21 | assert "echo '[0 1 2 3 4 5 6 7 8 9]' | clack -f 'even?'" "(0 2 4 6 8)" 22 | assert "echo '[0 1 2 3 4 5 6 7 8 9]' | clack --filter 'even?'" "(0 2 4 6 8)" 23 | 24 | # map 25 | assert "echo '[0 1 2 3 4 5 6 7 8 9]' | clack -m inc" "(1 2 3 4 5 6 7 8 9 10)" 26 | assert "echo '[0 1 2 3 4 5 6 7 8 9]' | clack --map inc" "(1 2 3 4 5 6 7 8 9 10)" 27 | 28 | # remove 29 | assert "echo '[0 1 2 3 4 5 6 7 8 9]' | clack -r 'even?'" "(1 3 5 7 9)" 30 | assert "echo '[0 1 2 3 4 5 6 7 8 9]' | clack --remove 'even?'" "(1 3 5 7 9)" 31 | 32 | # explicit get 33 | assert "echo '{:foo :bar}' | clack -g :foo" ":bar" 34 | 35 | # get key prefixed with colon 36 | assert "echo '{\":foo\" :bar}' | clack -g '\":foo\"'" ":bar" 37 | 38 | # get key prefixed with hyphen 39 | assert "echo '{\"-filter\" :bar}' | clack -g '\"-filter\"'" ":bar" 40 | 41 | # big long chain 42 | assert "echo {:foo {:bar {:baz [0 1 2]}}} | clack -e first -e second :bar -g :baz -f 'even?'" "(0 2)" 43 | assert "echo {:foo {:bar {:baz [0 1 2]}}} | clack -e first | clack -e second | clack -g :bar | clack :baz | clack -f 'even?'" "(0 2)" 44 | -------------------------------------------------------------------------------- /test/main.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | retval=0 4 | 5 | function assert { 6 | expression=$1 7 | expectation=$2 8 | echo -n "'$expression' should equal '$expectation'..." >&2 9 | actual=$(eval "$expression") 10 | if [ "$expectation" != "$actual" ]; then 11 | echo NOK >&2 12 | echo "\tactual: $actual" >&2 13 | retval=1 14 | else 15 | echo OK 16 | fi 17 | } 18 | 19 | CLACK_ASSERTIONS_FILE=$1 20 | 21 | if [ "$CLACK_ASSERTIONS_FILE" == "" ]; then 22 | echo "Testing everything" 23 | . test/general.sh 24 | . test/transit.sh 25 | . test/stringify.sh 26 | . test/dwim.sh 27 | . test/yaml.sh 28 | else 29 | echo "Testing $CLACK_ASSERTIONS_FILE" 30 | . "$CLACK_ASSERTIONS_FILE" 31 | fi 32 | 33 | 34 | -------------------------------------------------------------------------------- /test/stringify.sh: -------------------------------------------------------------------------------- 1 | # stringified numbers 2 | assert "range 2 | clack -o str" $'0\n1\n2' 3 | 4 | # stringified strings 5 | assert "echo '\"foo\"' | clack -o str" "foo" 6 | 7 | # stringified collection elements 8 | assert "echo '{:foo \"bar\"}' | clack -o str :foo" "bar" 9 | 10 | -------------------------------------------------------------------------------- /test/transit.sh: -------------------------------------------------------------------------------- 1 | # basic transit-js lookup 2 | assert "cat test/fixtures/transit-0.8.json | clack -i tjs -e first :district/region" ":region/e" 3 | -------------------------------------------------------------------------------- /test/wrapping.sh: -------------------------------------------------------------------------------- 1 | # multiple data structures are handled 2 | assert "echo 1 2 3 | clack -e inc" $'2\n3\n4' 3 | 4 | # wrapping of data structures works 5 | assert "echo 1 2 3 | clack -w" "[1 2 3]" 6 | 7 | # unwrapping of data structures works 8 | assert "echo '[1 2 3]' | clack -u" $'1\n2\n3' 9 | -------------------------------------------------------------------------------- /test/yaml.sh: -------------------------------------------------------------------------------- 1 | # yaml parsing 2 | 3 | assert "cat test/fixtures/sample.yaml | clack -i yaml :doc" $'"one"\n"two"' 4 | assert "cat test/fixtures/sample.yaml | clack -i yaml -w -e first :arr -e first" $'"first"' 5 | assert "cat test/fixtures/sample.yaml | clack -i yaml -w -e first :map :lol" $'"fml"' 6 | 7 | # yaml serializing 8 | 9 | assert "echo {:foo \"bar\"} {:baz \"bak\"} | clack -o yaml " $'---\nfoo: bar\n\n---\nbaz: bak' 10 | 11 | --------------------------------------------------------------------------------