Select Git revision
ANTLRParserResult.h
ANTLRParserResult.h 715 B
#ifndef LIBWCCL_ANTLRPARSERRESULT_H
#define LIBWCCL_ANTLRPARSERRESULT_H
#include <boost/shared_ptr.hpp>
#include <libwccl/variables.h>
#include <libwccl/ops/function.h>
template<class T>
class ANTLRParserResult;
class ANTLRParserResultBase
{
public:
ANTLRParserResultBase()
: variables(new Wccl::Variables())
{
}
boost::shared_ptr<Wccl::Variables> variables;
virtual boost::shared_ptr<Wccl::FunctionBase> get_op_base() const = 0;
};
template<class T>
class ANTLRParserResult : public ANTLRParserResultBase
{
public:
ANTLRParserResult()
{
}
boost::shared_ptr<Wccl::Function<T> > op;
boost::shared_ptr<Wccl::FunctionBase> get_op_base() const
{
return op;
}
};
#endif // ANTLRPARSERRESULT_H