Liking cljdoc? Tell your friends :D

naga.rules

Defines rule structures and constructors to keep them consistent

Defines rule structures and constructors to keep them consistent
raw docstring

check-symbolclj

(check-symbol sym)

Asserts that symbols are unbound variables for a query. Return true if it passes.

Asserts that symbols are unbound variables for a query. Return true if it passes.
sourceraw docstring

create-programclj

(create-program rules axioms)

Inputs: [rules :- [Rule] axioms :- [Axiom]] Returns: Program

Converts a sequence of rules into a program. A program consists of a map of rule names to rules, where the rules have dependencies.

Inputs: [rules :- [Rule] axioms :- [Axiom]]
Returns: Program

Converts a sequence of rules into a program.
 A program consists of a map of rule names to rules, where the rules have dependencies.
sourceraw docstring

dbgclj

(dbg x)
source

find-matchesclj

(find-matches a [nm sb])

Inputs: [a :- EPVPattern [nm sb] :- [(s/one s/Str "rule-name") (s/one Body "body")]] Returns: [RulePatternPair]

returns a sequence of name/pattern pairs where a matches a pattern in a named rule

Inputs: [a :- EPVPattern [nm sb] :- [(s/one s/Str "rule-name") (s/one Body "body")]]
Returns: [RulePatternPair]

returns a sequence of name/pattern pairs where a matches a pattern in a named rule
sourceraw docstring

mark-unboundclj

(mark-unbound head body)

Convert a head to use fresh vars for any vars that are unbound. Scans the vars in the body to identify which vars are unbound.

Convert a head to use fresh vars for any vars that are unbound.
Scans the vars in the body to identify which vars are unbound.
sourceraw docstring

match?clj

(match? a b)

Inputs: [a :- EPVPattern b :- EPVPattern] Returns: s/Bool

Does pattern a match pattern b?

Inputs: [a :- EPVPattern b :- EPVPattern]
Returns: s/Bool

Does pattern a match pattern b?
sourceraw docstring

Matchingcljprotocol

compatibleclj

(compatible x y)

Returns true if both elements are compatible

Returns true if both elements are compatible
source

named-ruleclj

(named-rule name {:keys [head body salience downstream]})

Inputs: [name :- Rule {:keys [head body salience downstream]} :- s/Str] Returns: Rule

Creates a rule the same as an existing rule, with a different name.

Inputs: [name :- Rule {:keys [head body salience downstream]} :- s/Str]
Returns: Rule

Creates a rule the same as an existing rule, with a different name.
sourceraw docstring

rcljmacro

(r & [f :as rs])

Create a rule, with an optional name. Var symbols need not be quoted.

Create a rule, with an optional name.
Var symbols need not be quoted.
sourceraw docstring

ruleclj

(rule head body)
(rule head body name)

Inputs: ([head body] [head body name]) Returns: Rule

Creates a new rule

Inputs: ([head body] [head body name])
Returns: Rule

Creates a new rule
sourceraw docstring

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

× close