dlvhex
2.5.0
|
Implementation of HexGrammar.h. More...
#include "dlvhex2/PlatformDefinitions.h"
#include "dlvhex2/ProgramCtx.h"
#include "dlvhex2/Registry.h"
#include "dlvhex2/Printer.h"
#include "dlvhex2/ExtSourceProperties.h"
#include <algorithm>
#include <boost/spirit/include/qi.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include <boost/lexical_cast.hpp>
Go to the source code of this file.
Implementation of HexGrammar.h.
Grammar for parsing HEX using boost::spirit.
Definition in file HexGrammar.tcc.
#define DLVHEX_HEX_GRAMMAR_TCC_INCLUDED |
Definition at line 43 of file HexGrammar.tcc.
void storePredicate | ( | const std::string & | oriPredName, |
int | predArity, | ||
HexGrammarSemantics & | mgr, | ||
ID & | target | ||
) |
Definition at line 180 of file HexGrammar.tcc.
References HexGrammarSemantics::ctx, DBGLOG, ID_FAIL(), ID::MAINKIND_TERM, MODULEPREFIXSEPARATOR, ProgramCtx::registry(), and ID::SUBKIND_TERM_PREDICATE.
Referenced by sem< HexGrammarSemantics::predFromNameOnly >::operator()(), and sem< HexGrammarSemantics::predFromString >::operator()().
WARNING | ( | "TODO more efficient than " | rule = rule.copy() | *module " could be something else (see comments below)" | ) |
register module for parsing top level elements of input file (use this to parse queries or other meta or control flow information)
Referenced by BaseModelGeneratorFactory::addDomainPredicatesAndCreateDomainExplorationProgram(), ProgramCtx::addPluginAtom(), ProgramCtx::addPluginAtomsFromPluginContainer(), BOOST_AUTO_TEST_CASE(), EvalHeuristicASP::build(), EvalHeuristicFromFile::build(), ComponentGraph::calculateComponents(), ComponentGraph::calculateFixedDomain(), SafetyChecker::checkSafety(), ComponentGraph::computeCollapsedComponentInfos(), EncodingBasedUnfoundedSetChecker::constructUFSDetectionProblemNecessaryPart(), AssumptionBasedUnfoundedSetChecker::constructUFSDetectionProblemRule(), ConvertState::convert(), CreateEvalGraphState::createEvalGraph(), FLPModelGeneratorFactoryBase::createFLPRules(), GenuineWellfoundedModelGenerator::generateNextModel(), WellfoundedModelGenerator::generateNextModel(), GenuineGuessAndCheckModelGenerator::GenuineGuessAndCheckModelGenerator(), PredicateTable::getByString(), GuessAndCheckModelGenerator::GuessAndCheckModelGenerator(), main(), ProcessBuf::open(), AnswerSetPrinterCallback::operator()(), StrongSafetyChecker::operator()(), sem< QueryParserModuleSemantics::queryBody >::operator()(), handle_fact::operator()(), sem< HexGrammarSemantics::aggregateAtom >::operator()(), sem< HexGrammarSemantics::ignoreAndWarnIfNotFail >::operator()(), PredicateMask::operator=(), ModuleHexParser::parse(), ParseState::parse(), parseCommandFile(), PredicateMask::PredicateMask(), ChoicePlugin::processOptions(), ConditionalLiteralPlugin::processOptions(), WeakConstraintPlugin::processOptions(), FunctionPlugin::processOptions(), AggregatePlugin::processOptions(), StrongNegationPlugin::processOptions(), HigherOrderPlugin::processOptions(), ManualEvalHeuristicsPlugin::processOptions(), QueryPlugin::processOptions(), TestPlugin::processOptions(), processOptionsPrePlugin(), ProgramCtx::ProgramCtx(), FunctionInterprete::retrieve(), OnlineModelBuilder< EvalGraphT >::EvalUnitModelBuildingProperties::setIModel(), ProgramCtx::setupPluginContainer(), QueryPlugin::setupProgramCtx(), TestDisjAtom::TestDisjAtom(), TestPlugin::TestGen2Atom::TestGen2Atom(), TestIdAtom::TestIdAtom(), TestIdcAtom::TestIdcAtom(), TestIdpAtom::TestIdpAtom(), TestPlugin::TestIsEmpty::TestIsEmpty(), TestNegAtom::TestNegAtom(), TestNonmon2Atom::TestNonmon2Atom(), TestNonmonAtom::TestNonmonAtom(), TestPlugin::TestNumberOfBalls::TestNumberOfBalls(), TestPlugin::TestNumberOfBallsGE::TestNumberOfBallsGE(), TestPlugin::TestNumberOfBallsSE::TestNumberOfBallsSE(), TestSetMinusNogoodBasedLearningAtom::TestSetMinusNogoodBasedLearningAtom(), TestSetMinusNonComfortAtom::TestSetMinusNonComfortAtom(), TestSetMinusNongroundNogoodBasedLearningAtom::TestSetMinusNongroundNogoodBasedLearningAtom(), TestSetMinusPartialAtom::TestSetMinusPartialAtom(), TestSetMinusRuleBasedLearningAtom::TestSetMinusRuleBasedLearningAtom(), TestPlugin::TestSetUnionAtom::TestSetUnionAtom(), GenuineGuessAndCheckModelGenerator::unfoundedSetCheck(), and PluginContainer::~PluginContainer().