25 #ifndef SPOT_LTLAST_UNOP_HH
26 # define SPOT_LTLAST_UNOP_HH
49 Closure, NegClosure, NegClosureMarked
91 virtual void accept(
visitor& v)
const;
106 const char* op_name()
const;
109 virtual std::string
dump()
const;
112 static unsigned instance_count();
115 static std::ostream& dump_instances(std::ostream& os);
118 typedef std::pair<type, const formula*> pair;
119 typedef std::map<pair, const unop*> map;
120 static map instances;
139 if (f->
kind() != formula::UnOp)
141 return static_cast<const unop*
>(f);
150 is_unop(
const formula* f, unop::type op)
152 if (
const unop* uo = is_unop(f))
163 is_Not(
const formula* f)
165 return is_unop(f, unop::Not);
173 is_X(
const formula* f)
175 return is_unop(f, unop::X);
183 is_F(
const formula* f)
185 return is_unop(f, unop::F);
193 is_G(
const formula* f)
195 return is_unop(f, unop::G);
203 is_GF(
const formula* f)
205 if (
const unop* op = is_G(f))
206 return is_F(op->child());
215 is_FG(
const formula* f)
217 if (
const unop* op = is_F(f))
218 return is_G(op->child());
224 #endif // SPOT_LTLAST_UNOP_HH