Started implementing clean, separate PDDL syntax tree and parser.

This commit is contained in:
2017-05-09 21:12:30 +02:00
parent d2f9e55e68
commit d7db0d8ccd
11 changed files with 1212 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
set(target pddlparse)
file(GLOB core_sources "pddlparse/*.cpp")
file(GLOB core_headers "../include/pddlparse/*.h")
file(GLOB detail_sources "pddlparse/detail/*.cpp")
file(GLOB detail_headers "../include/pddlparse/detail/*.h")
set(includes
${PROJECT_SOURCE_DIR}/include
${PROJECT_SOURCE_DIR}/../../lib/parsebase/include
)
set(sources
${core_sources}
${core_headers}
${detail_sources}
${detail_headers}
)
set(libraries
parsebase
)
add_library(${target} ${sources})
target_include_directories(${target} PRIVATE ${includes})
target_link_libraries(${target} ${libraries})

View File

@@ -0,0 +1,31 @@
#include <pddlparse/detail/VariableStack.h>
#include <pddlparse/AST.h>
namespace pddl
{
namespace detail
{
////////////////////////////////////////////////////////////////////////////////////////////////////
//
// VariableStack
//
////////////////////////////////////////////////////////////////////////////////////////////////////
void VariableStack::push(ast::VariableDeclarations *variables)
{
m_variableStack.push_back(variables);
}
////////////////////////////////////////////////////////////////////////////////////////////////////
void VariableStack::pop()
{
m_variableStack.pop_back();
}
////////////////////////////////////////////////////////////////////////////////////////////////////
}
}