organizing, marking some things private
This commit is contained in:
parent
5845eda6b8
commit
5b2354fd0f
|
@ -24,34 +24,20 @@
|
||||||
(if modifier
|
(if modifier
|
||||||
(str ":" (name modifier))))))
|
(str ":" (name modifier))))))
|
||||||
|
|
||||||
(defn ->search-param-descriptor [parameter value operator {:keys [modifier]}]
|
(defn- ->search-param-descriptor [parameter value operator {:keys [modifier]}]
|
||||||
{:name (->search-param-name parameter modifier)
|
{:name (->search-param-name parameter modifier)
|
||||||
:operator operator
|
:operator operator
|
||||||
:value value})
|
:value value})
|
||||||
|
|
||||||
(defmacro single-search-op [name operator]
|
(defmacro ^:private single-search-op [name operator]
|
||||||
`(defn ~name [parameter# value# & options#]
|
`(defn ~name [parameter# value# & options#]
|
||||||
[(->search-param-descriptor parameter# value# ~operator (apply hash-map options#))]))
|
[(->search-param-descriptor parameter# value# ~operator (apply hash-map options#))]))
|
||||||
|
|
||||||
(defmacro double-search-op [name operator1 operator2]
|
(defmacro ^:private double-search-op [name operator1 operator2]
|
||||||
`(defn ~name [parameter# value1# value2# & options#]
|
`(defn ~name [parameter# value1# value2# & options#]
|
||||||
[(->search-param-descriptor parameter# value1# ~operator1 (apply hash-map options#))
|
[(->search-param-descriptor parameter# value1# ~operator1 (apply hash-map options#))
|
||||||
(->search-param-descriptor parameter# value2# ~operator2 (apply hash-map options#))]))
|
(->search-param-descriptor parameter# value2# ~operator2 (apply hash-map options#))]))
|
||||||
|
|
||||||
(single-search-op eq "=")
|
|
||||||
(single-search-op lt "<")
|
|
||||||
(single-search-op lte "<=")
|
|
||||||
(single-search-op gt ">")
|
|
||||||
(single-search-op gte ">=")
|
|
||||||
(double-search-op between ">" "<")
|
|
||||||
|
|
||||||
(defn namespaced
|
|
||||||
([value]
|
|
||||||
(namespaced nil value))
|
|
||||||
([namespace value]
|
|
||||||
{:namespace namespace
|
|
||||||
:value value}))
|
|
||||||
|
|
||||||
(defn- escape-parameter [value]
|
(defn- escape-parameter [value]
|
||||||
(-> value
|
(-> value
|
||||||
(.replace "\\" "\\\\")
|
(.replace "\\" "\\\\")
|
||||||
|
@ -97,6 +83,20 @@
|
||||||
(first)
|
(first)
|
||||||
:href))
|
:href))
|
||||||
|
|
||||||
|
(single-search-op eq "=")
|
||||||
|
(single-search-op lt "<")
|
||||||
|
(single-search-op lte "<=")
|
||||||
|
(single-search-op gt ">")
|
||||||
|
(single-search-op gte ">=")
|
||||||
|
(double-search-op between ">" "<")
|
||||||
|
|
||||||
|
(defn namespaced
|
||||||
|
([value]
|
||||||
|
(namespaced nil value))
|
||||||
|
([namespace value]
|
||||||
|
{:namespace namespace
|
||||||
|
:value value}))
|
||||||
|
|
||||||
(defn collect-resources
|
(defn collect-resources
|
||||||
"returns a sequence containing all of the resources contained in the given bundle
|
"returns a sequence containing all of the resources contained in the given bundle
|
||||||
|
|
||||||
|
|
Reference in a new issue