add cljs data literal support to parse-file
This commit is contained in:
parent
cdbc6e6dc8
commit
17c75832de
2 changed files with 11 additions and 2 deletions
|
@ -3,6 +3,7 @@
|
||||||
;; :main marginalia.main
|
;; :main marginalia.main
|
||||||
:dependencies
|
:dependencies
|
||||||
[[org.clojure/clojure "1.5.1"]
|
[[org.clojure/clojure "1.5.1"]
|
||||||
|
[org.clojure/clojurescript "0.0-2138"]
|
||||||
[org.clojure/tools.namespace "0.1.1"]
|
[org.clojure/tools.namespace "0.1.1"]
|
||||||
[org.clojure/tools.cli "0.2.1"]
|
[org.clojure/tools.cli "0.2.1"]
|
||||||
[org.markdownj/markdownj "0.3.0-1.0.2b4"]
|
[org.markdownj/markdownj "0.3.0-1.0.2b4"]
|
||||||
|
|
|
@ -4,7 +4,8 @@
|
||||||
(ns marginalia.parser
|
(ns marginalia.parser
|
||||||
"Provides the parsing facilities for Marginalia."
|
"Provides the parsing facilities for Marginalia."
|
||||||
(:refer-clojure :exclude [replace])
|
(:refer-clojure :exclude [replace])
|
||||||
(:use [clojure [string :only (join replace)]]))
|
(:use [clojure [string :only (join replace lower-case)]]
|
||||||
|
[cljs.tagged-literals :only [*cljs-data-readers*]]))
|
||||||
|
|
||||||
|
|
||||||
;; Extracted from clojure.contrib.reflect
|
;; Extracted from clojure.contrib.reflect
|
||||||
|
@ -355,5 +356,12 @@
|
||||||
(set-keyword-reader nil)
|
(set-keyword-reader nil)
|
||||||
(throw e)))))
|
(throw e)))))
|
||||||
|
|
||||||
|
(defn cljs-file? [filepath]
|
||||||
|
(.endsWith (lower-case filepath) "cljs"))
|
||||||
|
|
||||||
(defn parse-file [file]
|
(defn parse-file [file]
|
||||||
(parse (slurp file)))
|
(let [readers (if (cljs-file? file)
|
||||||
|
(->> default-data-readers (merge *cljs-data-readers*))
|
||||||
|
default-data-readers)]
|
||||||
|
(binding [*data-readers* readers]
|
||||||
|
(parse (slurp file)))))
|
||||||
|
|
Loading…
Reference in a new issue