dlvhex
2.5.0
|
Rewriter class. More...
#include <include/dlvhex2/PluginInterface.h>
Public Member Functions | |
virtual | ~PluginRewriter () |
Destructor. | |
virtual void | rewrite (ProgramCtx &ctx)=0 |
Rewriting funcition. | |
Protected Member Functions | |
PluginRewriter () |
Rewriter class.
The purpose of a plugin rewriter is to modify the parsed HEX program and EDB, before the dependency graph is constructed. This can, e.g., be used to implement partial pregrounding. (Note that HEX processes nonground programs.)
Other possibilities for modifying the way input is prepared for evaluation are:
Definition at line 1446 of file PluginInterface.h.
PluginRewriter::PluginRewriter | ( | ) | [inline, protected] |
Definition at line 1449 of file PluginInterface.h.
virtual PluginRewriter::~PluginRewriter | ( | ) | [inline, virtual] |
Destructor.
Definition at line 1455 of file PluginInterface.h.
virtual void PluginRewriter::rewrite | ( | ProgramCtx & | ctx | ) | [pure virtual] |
Rewriting funcition.
The rewriting is applied to a ProgramCtx object.
ctx | The current program context |
Especially ctx.edb and ctx.idb may be the subject of rewriting.
Implemented in FunctionRewriter.