Template ltlast/ & ltlenv/ classes in internal/ & Add ELTL parser.

This commit is contained in:
Damien Lefortier 2008-03-25 16:52:06 +01:00 committed by Damien Lefortier
parent 21c98c0a01
commit 543190f2bc
74 changed files with 4299 additions and 468 deletions

View file

@ -24,7 +24,8 @@
#ifndef SPOT_LTLAST_CONSTANT_HH
# define SPOT_LTLAST_CONSTANT_HH
#include "formula.hh"
# include "formula.hh"
# include "internal/constant.hh"
namespace spot
{
@ -33,30 +34,7 @@ namespace spot
/// \brief A constant (True or False)
/// \ingroup ltl_ast
class constant : public formula
{
public:
enum type { False, True };
virtual void accept(visitor& v);
virtual void accept(const_visitor& v) const;
/// Return the value of the constant.
type val() const;
/// Return the value of the constant as a string.
const char* val_name() const;
/// Get the sole instance of spot::ltl::constant::constant(True).
static constant* true_instance();
/// Get the sole instance of spot::ltl::constant::constant(False).
static constant* false_instance();
protected:
constant(type val);
virtual ~constant();
private:
type val_;
};
typedef spot::internal::constant<ltl_t> constant;
}
}