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/s

(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

compatibleclj/s

(compatible x y)
source

create-programclj/s

(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/s

(dbg x)
source

find-matchesclj/s

(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/s

(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/s

(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

named-ruleclj/s

(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

rclj/s≠macro

clj
(r & [f :as rs])
cljs
(r &form &env & [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.
source (clj)source (cljs)raw docstring

ruleclj/s≠

clj
(rule head body)
(rule head body name)
cljs
(rule G__1024 G__1025)
(rule G__1029 G__1030 G__1031)

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