Liking cljdoc? Tell your friends :D

instacheck.core


assoc-in-grammarclj

source

ebnf->genclj

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

Takes an EBNF text string, grammar, parser, or file 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 text string, grammar, parser, or file 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.
sourceraw docstring

ebnf-sample-seqclj

(ebnf-sample-seq ebnf & [opts])

Returns an infinite sequence of generated values based on the ebnf definition.

Returns an infinite sequence of generated values based on the ebnf
definition.
sourceraw docstring

get-in-grammarclj

source

grammar->generator-defs-sourceclj

source

grammar->generator-func-sourceclj

source

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.
sourceraw docstring

grammar->nsclj

(grammar->ns ctx grammar & [extra-requires])
source

grammar->parserclj

source

instacheckclj

(instacheck check-fn ebnf-or-gen & [qc-opts])

Instacheck a function with randomly generated test cases. The check-fn will be called repeatedly with random strings that are generated based on the ebnf-or-gen. The ebnf-or-gen parameter is either something that ebnf->gen can turn into a generator (EBNF string, grammar, parser) or a plain test.check generator. The check-fn should perform a test based on the string and return a nil or false if fails the test or any other value to indicate that it passes the test. If a failure is detected then the shrinking process will performed. The return value is the quick-check return status.

The optional qc-opts parameter can be used to specify the following quick-check options:

  • iterations: number of iterations to check before success (default: 10)
  • max-size: maximum size for all internal generators (default: 200)
  • seed: starting seed for generating test cases
  • report-fn: function to call with a report after each iteration
Instacheck a function with randomly generated test cases. The
check-fn will be called repeatedly with random strings that are
generated based on the ebnf-or-gen. The ebnf-or-gen parameter is
either something that ebnf->gen can turn into a generator (EBNF
string, grammar, parser) or a plain test.check generator. The
check-fn should perform a test based on the string and return a nil
or false if fails the test or any other value to indicate that it
passes the test. If a failure is detected then the shrinking process
will performed. The return value is the quick-check return status.

The optional qc-opts parameter can be used to specify the following
quick-check options:
  - iterations: number of iterations to check before success (default: 10)
  - max-size:   maximum size for all internal generators (default: 200)
  - seed:       starting seed for generating test cases
  - report-fn:  function to call with a report after each iteration
sourceraw docstring

load-grammarclj

source

load-parserclj

source

parseclj

(parse parser text & [location])

Use parser to parse text. On success returns the parsed AST. On error, throws an ex-info object with a friendly error location string and a 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 object with a friendly error location
string and a info map containing the :failure (instaparse Failure
object), :text (the original text), and :location (optional location
parameter).
sourceraw docstring

parse-wtrekclj

(parse-wtrek parser text & [id])

Uses parser to parse a text string and returns a map with the parsed tree (:parsed) and a path-log wtrek from the parse (:wtrek). The wtrek weights are set to the number of times each path in the grammar was followed/used to parse the text.

Uses parser to parse a text string and returns a map with the
parsed tree (:parsed) and a path-log wtrek from the parse (:wtrek).
The wtrek weights are set to the number of times each path in the
grammar was followed/used to parse the text.
sourceraw docstring

parse-wtreksclj

(parse-wtreks parser texts-ids)

Takes a sequence of [text id] pairs and uses parse-wtrek to generator the following structure:

{:parts [{:id ID
          :parsed PARSED
          :wtrek  {PATH WEIGHT ...}}
          ...]
 :full  {PATH WEIGHT ...}}

The :parts value is a vector of the parse-wtrek result for each texts-ids. The :full-wtrek has merged weight counts from all :parts :wtrek values.

Takes a sequence of [text id] pairs and uses parse-wtrek to
generator the following structure:

    {:parts [{:id ID
              :parsed PARSED
              :wtrek  {PATH WEIGHT ...}}
              ...]
     :full  {PATH WEIGHT ...}}

The :parts value is a vector of the parse-wtrek result for each
texts-ids. The :full-wtrek has merged weight counts from all :parts
:wtrek values.
sourceraw docstring

parser->grammarclj

source

path-log-wtrekclj

source

save-weightsclj

source

trekclj

source

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.
sourceraw docstring

update-in-grammarclj

source

wtrekclj

source

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

× close