DirectiveSelector
The concrete DirectiveListener recognizing every directive pattern 2P-Kt gives special treatment to when loading a knowledge base: dynamic/1, static/1 (declaring a predicate's storage), initialization/1/solve/1 (a goal to run at load time), include/1/load/1 (another theory to load), op/3 (operator declaration), and set_flag/2/set_prolog_flag/2 (flag assignment). Each recognized pattern is routed to the corresponding on* callback (onDynamic, onStatic, onSolve, onLoad, onOperator, onSetFlag); anything else falls back to ClauseListener.onDirective.
Implemented by ClausePartitioner, which is what actually collects the callbacks' arguments into a ClausePartition.
Inheritors
Properties
Functions
Tries to unify directive's body against each of patterns, in order; on the first match, delegates to listenDirectiveMatchingPattern, otherwise falls back to ClauseListener.onDirective.
Invoked by listenDirective on a match; by default just forwards to onDirectiveMatchingPattern.
Invoked on an op(priority, specifier, name) directive.