Namespace dsbdp.dsl.core

DSL for processing data

Other Namespaces

Show/Hide
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

Public Vars

Usage Documentation

Show/Hide
DSL for processing data
Back to top

Details of Public Vars

Dynamic Var: *incremental-indicator-suffix*

  No docs attached.
Back to top View Source

Dynamic Var: *verbose*

  No docs attached.
Back to top View Source

Function: combine-proc-fns

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.
Back to top View Source

Function: 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)].
Back to top View Source

Function: create-proc-fn

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"}.
Back to top View Source

Var: offset-suffix

  No docs attached.
Back to top View Source

Function: prefix-rule-name

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.
Back to top View Source