Patrick Lühne
e15a6b2e88
Constants are not a construct present in Clingo’s AST and were unintentionally made part of anthem’s AST. This removes the unused classes for clarity.
60 lines
2.1 KiB
C++
60 lines
2.1 KiB
C++
#ifndef __ANTHEM__AST_COPY_H
|
|
#define __ANTHEM__AST_COPY_H
|
|
|
|
#include <anthem/AST.h>
|
|
#include <anthem/ASTVisitors.h>
|
|
|
|
namespace anthem
|
|
{
|
|
namespace ast
|
|
{
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
//
|
|
// ASTCopy
|
|
//
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Preparing Deep Copying
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
BinaryOperation prepareCopy(const BinaryOperation &other);
|
|
Boolean prepareCopy(const Boolean &other);
|
|
Comparison prepareCopy(const Comparison &other);
|
|
Function prepareCopy(const Function &other);
|
|
In prepareCopy(const In &other);
|
|
Integer prepareCopy(const Integer &other);
|
|
Interval prepareCopy(const Interval &other);
|
|
Predicate prepareCopy(const Predicate &other);
|
|
SpecialInteger prepareCopy(const SpecialInteger &other);
|
|
String prepareCopy(const String &other);
|
|
Variable prepareCopy(const Variable &other);
|
|
VariableDeclaration prepareCopy(const VariableDeclaration &other);
|
|
VariableDeclarationPointers prepareCopy(const VariableDeclarationPointers &other);
|
|
And prepareCopy(const And &other);
|
|
Biconditional prepareCopy(const Biconditional &other);
|
|
Exists prepareCopy(const Exists &other);
|
|
ForAll prepareCopy(const ForAll &other);
|
|
Implies prepareCopy(const Implies &other);
|
|
Not prepareCopy(const Not &other);
|
|
Or prepareCopy(const Or &other);
|
|
|
|
Term prepareCopy(const Term &term);
|
|
std::vector<Term> prepareCopy(const std::vector<Term> &terms);
|
|
Formula prepareCopy(const Formula &formula);
|
|
std::vector<Formula> prepareCopy(const std::vector<Formula> &formulas);
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
// Fixing Dangling Variables
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
void fixDanglingVariables(ScopedFormula &scopedFormula);
|
|
|
|
////////////////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
}
|
|
}
|
|
|
|
#endif
|