Commit 36aadba7 authored by Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz
Browse files

* src/ltlast/atomic_prop.hh, src/ltlast/binop.hh,

src/ltlast/constant.hh, src/ltlast/formula.hh,
src/ltlast/multop.hh, src/ltlast/refformula.hh,
src/ltlast/unop.hh, src/ltlast/visitor.hh, src/ltlenv/declenv.hh,
src/ltlenv/defaultenv.hh, src/ltlenv/environment.hh,
src/ltlparse/public.hh, src/ltlvisit/apcollect.hh,
src/ltlvisit/basicreduce.hh, src/ltlvisit/clone.hh,
src/ltlvisit/destroy.hh, src/ltlvisit/dotty.hh,
src/ltlvisit/dump.hh, src/ltlvisit/length.hh,
src/ltlvisit/lunabbrev.hh, src/ltlvisit/nenoform.hh: Add Doxygen
groups for LTL algorithms and types.
* doc/Makefile.am (fast-doc): New target.
parent 8c6dff00
2004-11-17 Alexandre Duret-Lutz <adl@src.lip6.fr> 2004-11-17 Alexandre Duret-Lutz <adl@src.lip6.fr>
* src/ltlast/atomic_prop.hh, src/ltlast/binop.hh,
src/ltlast/constant.hh, src/ltlast/formula.hh,
src/ltlast/multop.hh, src/ltlast/refformula.hh,
src/ltlast/unop.hh, src/ltlast/visitor.hh, src/ltlenv/declenv.hh,
src/ltlenv/defaultenv.hh, src/ltlenv/environment.hh,
src/ltlparse/public.hh, src/ltlvisit/apcollect.hh,
src/ltlvisit/basicreduce.hh, src/ltlvisit/clone.hh,
src/ltlvisit/destroy.hh, src/ltlvisit/dotty.hh,
src/ltlvisit/dump.hh, src/ltlvisit/length.hh,
src/ltlvisit/lunabbrev.hh, src/ltlvisit/nenoform.hh: Add Doxygen
groups for LTL algorithms and types.
* doc/Makefile.am (fast-doc): New target.
* src/misc/hashfunc.hh: Include cstddef to define size_t, and guard * src/misc/hashfunc.hh: Include cstddef to define size_t, and guard
the file for multiple inclusions. the file for multiple inclusions.
......
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
DOXYGEN = doxygen DOXYGEN = doxygen
.PHONY: doc spot .PHONY: doc fast-doc
all-local: $(srcdir)/stamp all-local: $(srcdir)/stamp
...@@ -29,6 +29,11 @@ doc: ...@@ -29,6 +29,11 @@ doc:
rm -f $(srcdir)/stamp rm -f $(srcdir)/stamp
$(MAKE) $(srcdir)/stamp $(MAKE) $(srcdir)/stamp
fast-doc:
$(MAKE) Doxyfile
$(DOXYGEN)
touch $(srcdir)/stamp
$(srcdir)/stamp: $(srcdir)/Doxyfile.in $(top_srcdir)/configure.ac $(srcdir)/stamp: $(srcdir)/Doxyfile.in $(top_srcdir)/configure.ac
$(MAKE) Doxyfile $(MAKE) Doxyfile
rm -rf spot.html spot.latex rm -rf spot.html spot.latex
......
...@@ -35,7 +35,8 @@ namespace spot ...@@ -35,7 +35,8 @@ namespace spot
namespace ltl namespace ltl
{ {
/// Atomic propositions. /// \brief Atomic propositions.
/// \ingroup ltl_ast
class atomic_prop : public ref_formula class atomic_prop : public ref_formula
{ {
public: public:
......
...@@ -35,7 +35,8 @@ namespace spot ...@@ -35,7 +35,8 @@ namespace spot
namespace ltl namespace ltl
{ {
/// Binary operator. /// \brief Binary operator.
/// \ingroup ltl_ast
class binop : public ref_formula class binop : public ref_formula
{ {
public: public:
......
...@@ -31,7 +31,8 @@ namespace spot ...@@ -31,7 +31,8 @@ namespace spot
namespace ltl namespace ltl
{ {
/// A constant (True or False) /// \brief A constant (True or False)
/// \ingroup ltl_ast
class constant : public formula class constant : public formula
{ {
public: public:
......
...@@ -30,8 +30,39 @@ namespace spot ...@@ -30,8 +30,39 @@ namespace spot
{ {
namespace ltl namespace ltl
{ {
/// \defgroup ltl LTL formulae
///
/// This module gathers types and definitions related to LTL formulae.
/// \addtogroup ltl_essential Essential LTL types
/// \ingroup ltl
/// \addtogroup ltl_ast LTL Abstract Syntax Tree
/// \ingroup ltl
/// \addtogroup ltl_environment LTL environments
/// \ingroup ltl
/// LTL environment implementations.
/// \addtogroup ltl_algorithm Algorithms for LTL formulae
/// \ingroup ltl
/// \addtogroup ltl_io Input/Output of LTL formulae
/// \ingroup ltl_algorithm
/// \addtogroup ltl_visitor Derivable visitors
/// \ingroup ltl_algorithm
/// \addtogroup ltl_rewriting Rewriting LTL formulae
/// \ingroup ltl_algorithm
/// \addtogroup ltl_misc Miscellaneous algorithms for LTL formulae
/// \ingroup ltl_algorithm
/// \brief An LTL formula. /// \brief An LTL formula.
/// \ingroup ltl_essential
/// \ingroup ltl_ast
/// ///
/// The only way you can work with a formula is to /// The only way you can work with a formula is to
/// build a spot::ltl::visitor or spot::ltl::const_visitor. /// build a spot::ltl::visitor or spot::ltl::const_visitor.
......
...@@ -34,6 +34,7 @@ namespace spot ...@@ -34,6 +34,7 @@ namespace spot
{ {
/// \brief Multi-operand operators. /// \brief Multi-operand operators.
/// \ingroup ltl_ast
/// ///
/// These operators are considered commutative and associative. /// These operators are considered commutative and associative.
class multop : public ref_formula class multop : public ref_formula
......
...@@ -32,6 +32,7 @@ namespace spot ...@@ -32,6 +32,7 @@ namespace spot
{ {
/// \brief A reference-counted LTL formula. /// \brief A reference-counted LTL formula.
/// \ingroup ltl_ast
class ref_formula : public formula class ref_formula : public formula
{ {
protected: protected:
......
...@@ -32,7 +32,8 @@ namespace spot ...@@ -32,7 +32,8 @@ namespace spot
namespace ltl namespace ltl
{ {
/// Unary operator. /// \brief Unary operators.
/// \ingroup ltl_ast
class unop : public ref_formula class unop : public ref_formula
{ {
public: public:
......
...@@ -31,6 +31,7 @@ namespace spot ...@@ -31,6 +31,7 @@ namespace spot
namespace ltl namespace ltl
{ {
/// \brief Formula visitor that can modify the formula. /// \brief Formula visitor that can modify the formula.
/// \ingroup ltl_essential
/// ///
/// Writing visitors is the prefered way /// Writing visitors is the prefered way
/// to traverse a formula, since it doesn't /// to traverse a formula, since it doesn't
......
...@@ -34,6 +34,7 @@ namespace spot ...@@ -34,6 +34,7 @@ namespace spot
{ {
/// \brief A declarative environment. /// \brief A declarative environment.
/// \ingroup ltl_environment
/// ///
/// This environment recognizes all atomic propositions /// This environment recognizes all atomic propositions
/// that have been previously declared. It will reject other. /// that have been previously declared. It will reject other.
......
// Copyright (C) 2003 Laboratoire d'Informatique de Paris 6 (LIP6), // Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
// département Systèmes Répartis Coopératifs (SRC), Université Pierre // département Systèmes Répartis Coopératifs (SRC), Université Pierre
// et Marie Curie. // et Marie Curie.
// //
...@@ -30,6 +30,7 @@ namespace spot ...@@ -30,6 +30,7 @@ namespace spot
{ {
/// \brief A laxist environment. /// \brief A laxist environment.
/// \ingroup ltl_environment
/// ///
/// This environment recognizes all atomic propositions. /// This environment recognizes all atomic propositions.
/// ///
......
// Copyright (C) 2003 Laboratoire d'Informatique de Paris 6 (LIP6), // Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
// département Systèmes Répartis Coopératifs (SRC), Université Pierre // département Systèmes Répartis Coopératifs (SRC), Université Pierre
// et Marie Curie. // et Marie Curie.
// //
...@@ -29,8 +29,8 @@ namespace spot ...@@ -29,8 +29,8 @@ namespace spot
{ {
namespace ltl namespace ltl
{ {
/// \brief An environment that describes atomic propositions.
/// An environment that describes atomic propositions. /// \ingroup ltl_essential
class environment class environment
{ {
public: public:
......
...@@ -34,6 +34,9 @@ namespace spot ...@@ -34,6 +34,9 @@ namespace spot
{ {
namespace ltl namespace ltl
{ {
/// \addtogroup ltl_io
/// @{
/// \brief A parse diagnostic with its location. /// \brief A parse diagnostic with its location.
typedef std::pair<yy::Location, std::string> parse_error; typedef std::pair<yy::Location, std::string> parse_error;
/// \brief A list of parser diagnostics, as filled by parse. /// \brief A list of parser diagnostics, as filled by parse.
...@@ -69,6 +72,8 @@ namespace spot ...@@ -69,6 +72,8 @@ namespace spot
bool format_parse_errors(std::ostream& os, bool format_parse_errors(std::ostream& os,
const std::string& ltl_string, const std::string& ltl_string,
parse_error_list& error_list); parse_error_list& error_list);
/// @}
} }
} }
......
...@@ -29,6 +29,9 @@ namespace spot ...@@ -29,6 +29,9 @@ namespace spot
{ {
namespace ltl namespace ltl
{ {
/// \addtogroup ltl_misc
/// @{
/// Set of atomic propositions. /// Set of atomic propositions.
typedef std::set<spot::ltl::atomic_prop*> atomic_prop_set; typedef std::set<spot::ltl::atomic_prop*> atomic_prop_set;
...@@ -42,6 +45,8 @@ namespace spot ...@@ -42,6 +45,8 @@ namespace spot
/// set containing all these atomic propositions if \c s is 0. /// set containing all these atomic propositions if \c s is 0.
atomic_prop_set* atomic_prop_set*
atomic_prop_collect(const formula* f, atomic_prop_set* s = 0); atomic_prop_collect(const formula* f, atomic_prop_set* s = 0);
/// @}
} }
} }
#endif #endif
...@@ -28,12 +28,15 @@ namespace spot ...@@ -28,12 +28,15 @@ namespace spot
{ {
namespace ltl namespace ltl
{ {
/// Basic rewritings. /// \brief Basic rewritings.
/// \ingroup ltl_rewriting
formula* basic_reduce(const formula* f); formula* basic_reduce(const formula* f);
/// Whether a formula starts with GF. /// \brief Whether a formula starts with GF.
/// \ingroup ltl_misc
bool is_GF(const formula* f); bool is_GF(const formula* f);
/// Whether a formula starts with FG. /// \brief Whether a formula starts with FG.
/// \ingroup ltl_misc
bool is_FG(const formula* f); bool is_FG(const formula* f);
} }
} }
......
// Copyright (C) 2003 Laboratoire d'Informatique de Paris 6 (LIP6), // Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
// dpartement Systmes Rpartis Coopratifs (SRC), Universit Pierre // dpartement Systmes Rpartis Coopratifs (SRC), Universit Pierre
// et Marie Curie. // et Marie Curie.
// //
...@@ -30,6 +30,7 @@ namespace spot ...@@ -30,6 +30,7 @@ namespace spot
namespace ltl namespace ltl
{ {
/// \brief Clone a formula. /// \brief Clone a formula.
/// \ingroup ltl_visitor
/// ///
/// This visitor is public, because it's convenient /// This visitor is public, because it's convenient
/// to derive from it and override part of its methods. /// to derive from it and override part of its methods.
...@@ -56,6 +57,7 @@ namespace spot ...@@ -56,6 +57,7 @@ namespace spot
}; };
/// \brief Clone a formula. /// \brief Clone a formula.
/// \ingroup ltl_essential
formula* clone(const formula* f); formula* clone(const formula* f);
} }
} }
......
// Copyright (C) 2003 Laboratoire d'Informatique de Paris 6 (LIP6), // Copyright (C) 2003, 2004 Laboratoire d'Informatique de Paris 6 (LIP6),
// dpartement Systmes Rpartis Coopratifs (SRC), Universit Pierre // dpartement Systmes Rpartis Coopratifs (SRC), Universit Pierre
// et Marie Curie. // et Marie Curie.
// //
...@@ -29,6 +29,7 @@ namespace spot ...@@ -29,6 +29,7 @@ namespace spot
namespace ltl namespace ltl
{ {
/// \brief Destroys a formula /// \brief Destroys a formula
/// \ingroup ltl_essential
void destroy(const formula *f); void destroy(const formula *f);
} }
} }
......
...@@ -30,6 +30,7 @@ namespace spot ...@@ -30,6 +30,7 @@ namespace spot
namespace ltl namespace ltl
{ {
/// \brief Write a formula tree using dot's syntax. /// \brief Write a formula tree using dot's syntax.
/// \ingroup ltl_io
/// \param os The stream where it should be output. /// \param os The stream where it should be output.
/// \param f The formula to translate. /// \param f The formula to translate.
/// ///
......
...@@ -30,6 +30,7 @@ namespace spot ...@@ -30,6 +30,7 @@ namespace spot
namespace ltl namespace ltl
{ {
/// \brief Dump a formula tree. /// \brief Dump a formula tree.
/// \ingroup ltl_io
/// \param os The stream where it should be output. /// \param os The stream where it should be output.
/// \param f The formula to dump. /// \param f The formula to dump.
/// ///
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment