dlvhex
2.5.0
|
Public Member Functions | |
FunctionInterprete (ProgramCtx *ctx) | |
virtual void | retrieve (const Query &query, Answer &answer) throw (PluginError) |
Retrieve answer to a query (external computation happens here). | |
Private Member Functions | |
bool | containsPlaceholder (const Term &t) |
Private Attributes | |
ProgramCtx * | ctx |
Definition at line 421 of file FunctionPlugin.cpp.
FunctionInterprete::FunctionInterprete | ( | ProgramCtx * | ctx | ) | [inline] |
Definition at line 438 of file FunctionPlugin.cpp.
References PluginAtom::addInputConstant(), PluginAtom::addInputTuple(), and PluginAtom::setOutputArity().
bool FunctionInterprete::containsPlaceholder | ( | const Term & | t | ) | [inline, private] |
Definition at line 426 of file FunctionPlugin.cpp.
References Term::arguments, and PluginAtom::getRegistry().
Referenced by retrieve().
virtual void FunctionInterprete::retrieve | ( | const Query & | query, |
Answer & | answer | ||
) | throw (PluginError) [inline, virtual] |
Retrieve answer to a query (external computation happens here).
This function implements the external atom computation without customized learning functions.
Answer tuples must conform to the content of the pattern tuple in Query:
See also documentation of Query and Answer classes.
If both retrieve(const Query& query, Answer& answer) and retrieve(const Query& query, Answer& answer, NogoodContainerPtr nogoods) are overridden, the latter takes over precedence.
query | Input to the external source. |
answer | Output of the external source. |
Reimplemented from PluginAtom.
Definition at line 446 of file FunctionPlugin.cpp.
References Term::arguments, containsPlaceholder(), ctx, PluginAtom::Answer::get(), TermTable::getByID(), PluginAtom::getRegistry(), Term::getUnquotedString(), ID_FAIL(), PluginAtom::Query::input, ProgramCtx::pluginAtomMap(), PluginAtom::registry, Registry::storeConstantTerm(), Registry::storeTerm(), Registry::terms, Term::updateSymbolOfNestedTerm(), and WARNING().
ProgramCtx* FunctionInterprete::ctx [private] |
Definition at line 424 of file FunctionPlugin.cpp.
Referenced by retrieve().