clasplayer.h
No OneTemporary

File Metadata

Created
Thu, Jul 9, 7:59 AM

clasplayer.h

#ifndef CLASPLAYER_H
#define CLASPLAYER_H
#include <string>
#include <gringo/control.hh>
#include <ast.h>
typedef std::pair<std::string, AnnotationModifier> Tag;
class CFGraph;
class ClaspLayer
{
public:
ClaspLayer();
void addFunctionTags(const std::string& function, const std::vector<Tag>& tags);
void addCFGData(CFGraph&& graph);
void addWarningRule(const char* rule);
void run();
private:
std::ostringstream __partTags;
std::ostringstream __partGeneral;
bool onModel(Gringo::Model const & model);
};
class CFGraph
{
friend class ClaspLayer;
public:
void addNode(FID function, std::string&& tag);
void addLink(FID nodeFrom, FID nodeTo);
bool existsNode(FID function) const;
void print(std::ostream& cout) const;
private:
std::map<FID, FID> __relations;
std::map<FID, std::string> __nodes;
};
#endif

Event Timeline