00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00024 #ifndef SPOT_LTLAST_VISITOR_HH
00025 # define SPOT_LTLAST_VISITOR_HH
00026
00027 #include "predecl.hh"
00028
00029 namespace spot
00030 {
00031 namespace ltl
00032 {
00042 struct visitor
00043 {
00044 virtual ~visitor() {}
00045 virtual void visit(atomic_prop* node) = 0;
00046 virtual void visit(constant* node) = 0;
00047 virtual void visit(binop* node) = 0;
00048 virtual void visit(unop* node) = 0;
00049 virtual void visit(multop* node) = 0;
00050 };
00051
00060 struct const_visitor
00061 {
00062 virtual ~const_visitor() {}
00063 virtual void visit(const atomic_prop* node) = 0;
00064 virtual void visit(const constant* node) = 0;
00065 virtual void visit(const binop* node) = 0;
00066 virtual void visit(const unop* node) = 0;
00067 virtual void visit(const multop* node) = 0;
00068 };
00069
00070
00071 }
00072 }
00073
00074 #endif // SPOT_LTLAST_VISITOR_HH