DSL for processing data
| dsbdp.dsl.DslHelper | Java Interop for using the DSL from within Java. |
| dsbdp.dsl.byte-array-conversion | Helper functions for converting byte arrays into other data types/representations |
| dsbdp.dsl.experiment-helper | Helper that are primarily used during experiments |
| dsbdp.dsl.main | Main class for launching a test CLI. |
| Index Page | |
| Alphabetic Var Index |
DSL for processing data
Arglists: ========= (combine-proc-fns dsl-expression start-idx end-idx) Docstring: ========== Based on the DSL expression dsl-expression, create a data processing function in which the processing rules starting at start-idx, inclusive, up to end-idx, non inclusive, are combined. Please note that it is usually more appropriate to use combine-proc-fns-vec.
Arglists: ========= (combine-proc-fns-vec fn-mapping dsl-expression) Docstring: ========== Based on the function mapping fn-mapping and the DSL expression dsl-expression, create a vector of data processing functions. The mapping definition defines the number of processing rules to be included in each processing function. For a vector of processing rules [a b c d e f], a mapping definition [1 2 3] will result in the following association of processing rules to processing functions f_x: [f_1(a), f_2(b, c), f_3(d e f)].
Arglists:
=========
(create-proc-fn dsl-expression)
Docstring:
==========
Create a data processing function based on the given dsl-expression.
An example of a dsl-expression for processing a Clojure seq is given below:
{:output-type :clj-map
:rules [['myFloat '(nth 0)]
['myStr '(clojure.string/lower-case (nth 1)) :string]
['myRatio '(/ (nth 2) 100.0)]
['myStr2 '(str (nth 3) (nth 4)) :string]]}
The resulting function will for the input [1.23 "FOO" 42 "bar" "baz"] produce the output {"myFloat" 1.23, "myStr" "foo", "myRatio" 0.42, "myStr2" "barbaz"}.Arglists: ========= (prefix-rule-name rule-name nesting-level) Docstring: ========== Prefix the rule name based on its nesting level to assure that at identifiers at each branch level are unique.