Liking cljdoc? Tell your friends :D

instacheck.core


apply-grammar-updatesclj

(apply-grammar-updates grammar grammar-updates)

Replace the generators in the grammar as defined by the list of {:path PATH :value VALUE} maps in grammar-updates. Find each :path in a grammar and replace it with :value (using specter's setval). This allows us to replace generators in the grammar with references to other generators (such as real generators from a Clojure namespace).

Replace the generators in the grammar as defined by the list of
{:path PATH :value VALUE} maps in grammar-updates. Find each :path
in a grammar and replace it with :value (using specter's setval).
This allows us to replace generators in the grammar with references
to other generators (such as real generators from a Clojure
namespace).
raw docstring

clj-prefixclj

(clj-prefix nsname)

ebnf->genclj

(ebnf->gen ebnf)
(ebnf->gen ctx ebnf)

Takes an EBNF grammar, parser, file, or text string and returns a test.check generator. If the start is specified then this the name of the rule to use as the starting rule of the grmmar. If start is not specified then the first rule in the grammar file is used as the starting rule.

Takes an EBNF grammar, parser, file, or text string and returns
a test.check generator. If the start is specified then this the name
of the rule to use as the starting rule of the grmmar. If start is
not specified then the first rule in the grammar file is used as the
starting rule.
raw docstring

grammar->generator-defs-sourceclj

(grammar->generator-defs-source {:keys [start] :as ctx} grammar)

Takes an grammar (loaded using load-grammar) and returns the text of a namespace with top-level defines (defs) for all the rules. If the :start is specified in the ctx then this the name of the rule to use as the starting rule of the grammar. If :start is not specified then the first rule in the grammar file is used as the starting rule. Only the start rule flattens the generated values into a final string.

Takes an grammar (loaded using load-grammar) and returns the text
of a namespace with top-level defines (defs) for all the rules. If
the :start is specified in the ctx then this the name of the rule to
use as the starting rule of the grammar. If :start is not specified
then the first rule in the grammar file is used as the starting
rule. Only the start rule flattens the generated values into a final
string.
raw docstring

grammar->generator-func-sourceclj

(grammar->generator-func-source {:keys [function] :as ctx} grammar)

Takes an grammar (loaded using load-grammar) and returns the text of a namespace with a single Clojure function. The function takes an optional weights map and returns a map of all the rules as generators (indexed by rule-name keyword).

Takes an grammar (loaded using load-grammar) and returns the text
of a namespace with a single Clojure function. The function takes
an optional weights map and returns a map of all the rules as
generators (indexed by rule-name keyword).
raw docstring

grammar->generator-objclj

(grammar->generator-obj {:keys [start] :as ctx} grammar)

Return a a new generator object based on the context and instacheck grammar object.

Return a a new generator object based on the context and instacheck
grammar object.
raw docstring

grammar->nsclj

(grammar->ns ctx grammar)

parseclj

(parse parser text & [location])

Use parser to parse text. On success returns the parsed AST. On error, throws an ex-info map containing the :failure (instaparse Failure object), :text (the original text), and :location (optional location parameter).

Use parser to parse text. On success returns the parsed AST. On
error, throws an ex-info map containing the :failure (instaparse Failure
object), :text (the original text), and :location (optional location
parameter).
raw docstring

parse-weightsclj

(parse-weights parser text-objs)

Use parser to parse a sequence of text description objects {:text text :location location}. Returns a weights map with the weights set to the number of times that path in the grammar was followed/used across all the texts from text-objs.

Use parser to parse a sequence of text description objects {:text
text :location location}. Returns a weights map with the weights set
to the number of times that path in the grammar was followed/used
across all the texts from text-objs.
raw docstring

parse-weights-from-filesclj

(parse-weights-from-files parser files)

Wrapper around parse-weights that marshals the text objects from a list of file paths.

Wrapper around parse-weights that marshals the text objects from
a list of file paths.
raw docstring

RULES-PER-FUNCclj


run-checkclj

(run-check opts gen-to-check check-fn report-fn)

Run quick-check against a generator (gen-to-check) using a check function (check-fn) and reporter functon (report-fn). Execution options (opts) supported are :iterations (default: 10), :max-size (default: 200), and :seed.

Run quick-check against a generator (gen-to-check) using a check
function (check-fn) and reporter functon (report-fn). Execution
options (opts) supported are :iterations (default: 10), :max-size
(default: 200), and :seed.
raw docstring

tag-to-genclj


update-generator-objclj

(update-generator-obj obj & {:keys [weights start]})

Return a new generator object with runtime properties adjusted (those that don't require eval of the function source again). Only weights and start rule are supported currently.

Return a new generator object with runtime properties adjusted
(those that don't require eval of the function source again). Only
weights and start rule are supported currently.
raw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close