Commit 1ec9cebe authored by Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz
Browse files

Move \ingroup before \brief in all Doxygen comments.

Using \ingroup between \brief and the rest of the documentation causes
Doxygen to concatenate the brief with the rest of the doc.

* src/sanity/style.test: Warn when \ingroup is found
on the line after \brief.
* src/kripke/fairkripke.hh, src/kripke/kripke.hh,
src/kripke/kripkeprint.hh, src/ltlast/atomic_prop.hh,
src/ltlast/automatop.hh, src/ltlast/binop.hh, src/ltlast/bunop.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/ltlfile.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/mark.hh, src/ltlvisit/nenoform.hh, src/ltlvisit/postfix.hh,
src/ltlvisit/randomltl.hh, src/ltlvisit/reduce.hh,
src/ltlvisit/relabel.hh, src/ltlvisit/simpfg.hh,
src/ltlvisit/simplify.hh, src/ltlvisit/tunabbrev.hh,
src/ltlvisit/wmunabbrev.hh, src/misc/bddalloc.hh, src/misc/bddlt.hh,
src/misc/freelist.hh, src/misc/hash.hh, src/misc/ltstr.hh,
src/misc/minato.hh, src/misc/modgray.hh, src/misc/optionmap.hh,
src/misc/version.hh, src/saba/explicitstateconjunction.hh,
src/saba/saba.hh, src/saba/sabacomplementtgba.hh, src/saba/sabastate.hh,
src/saba/sabasucciter.hh, src/sabaalgos/sabadotty.hh,
src/sabaalgos/sabareachiter.hh, src/ta/ta.hh, src/ta/taproduct.hh,
src/ta/tgta.hh, src/taalgos/reachiter.hh, src/taalgos/tgba2ta.hh,
src/tgba/futurecondcol.hh, src/tgba/sba.hh, src/tgba/state.hh,
src/tgba/succiter.hh, src/tgba/tgba.hh, src/tgba/tgbabddconcrete.hh,
src/tgba/tgbabddconcreteproduct.hh, src/tgba/tgbakvcomplement.hh,
src/tgba/tgbaproduct.hh, src/tgba/tgbasafracomplement.hh,
src/tgba/tgbascc.hh, src/tgba/tgbasgba.hh, src/tgba/tgbatba.hh,
src/tgba/tgbaunion.hh, src/tgba/wdbacomp.hh, src/tgbaalgos/bfssteps.hh,
src/tgbaalgos/degen.hh, src/tgbaalgos/dotty.hh,
src/tgbaalgos/dottydec.hh, src/tgbaalgos/dupexp.hh,
src/tgbaalgos/eltl2tgba_lacim.hh, src/tgbaalgos/lbtt.hh,
src/tgbaalgos/ltl2taa.hh, src/tgbaalgos/ltl2tgba_fm.hh,
src/tgbaalgos/ltl2tgba_lacim.hh, src/tgbaalgos/neverclaim.hh,
src/tgbaalgos/powerset.hh, src/tgbaalgos/projrun.hh,
src/tgbaalgos/randomgraph.hh, src/tgbaalgos/reachiter.hh,
src/tgbaalgos/reducerun.hh, src/tgbaalgos/replayrun.hh,
src/tgbaalgos/rundotdec.hh, src/tgbaalgos/save.hh,
src/tgbaalgos/stripacc.hh, src/tgbaalgos/translate.hh: Move \ingroup
before \brief.
parent 0ec3f784
......@@ -26,8 +26,9 @@
namespace spot
{
/// \brief Manage a map of options.
/// \ingroup misc_tools
/// \brief Manage a map of options.
///
/// Each option is defined by a string and is associated to an integer value.
class option_map
{
......
......@@ -22,8 +22,8 @@
namespace spot
{
/// \brief Return Spot's version.
/// \ingroup misc_tools
/// \brief Return Spot's version.
const char* version();
}
......
......@@ -25,8 +25,8 @@
namespace spot
{
/// \brief Basic implementation of saba_state_conjunction.
/// \ingroup saba_essentials
/// \brief Basic implementation of saba_state_conjunction.
///
/// This class provides a basic implementation to
/// iterate over a conjunction of states of a saba.
......
......@@ -36,8 +36,8 @@ namespace spot
/// \addtogroup saba_essentials Essential SABA types
/// \ingroup saba
/// \brief A State-based Alternating (Generalized) Büchi Automaton.
/// \ingroup saba_essentials
/// \brief A State-based Alternating (Generalized) Büchi Automaton.
///
/// Browsing such automaton can be achieved using two functions:
/// \c get_init_state, and \c succ_iter. The former returns
......
......@@ -25,8 +25,8 @@
namespace spot
{
/// \brief Complement a TGBA and produce a SABA.
/// \ingroup saba
/// \brief Complement a TGBA and produce a SABA.
///
/// The original TGBA is transformed into a States-based
/// Büchi Automaton.
......
......@@ -26,8 +26,8 @@
namespace spot
{
/// \brief Abstract class for saba states.
/// \ingroup saba_essentials
/// \brief Abstract class for saba states.
class saba_state
{
public:
......@@ -78,8 +78,8 @@ namespace spot
}
};
/// \brief Strict Weak Ordering for \c saba_state*.
/// \ingroup saba_essentials
/// \brief Strict Weak Ordering for \c saba_state*.
///
/// This is meant to be used as a comparison functor for
/// STL \c map whose key are of type \c saba_state*.
......@@ -101,8 +101,8 @@ namespace spot
}
};
/// \brief An Equivalence Relation for \c saba_state*.
/// \ingroup saba_essentials
/// \brief An Equivalence Relation for \c saba_state*.
///
/// This is meant to be used as a comparison functor for
/// Sgi \c hash_map whose key are of type \c saba_state*.
......@@ -125,9 +125,9 @@ namespace spot
}
};
/// \brief Hash Function for \c saba_state*.
/// \ingroup saba_essentials
/// \ingroup hash_funcs
/// \brief Hash Function for \c saba_state*.
///
/// This is meant to be used as a hash functor for
/// Sgi's \c hash_map whose key are of type \c saba_state*.
......@@ -155,9 +155,9 @@ namespace spot
typedef boost::shared_ptr<const saba_state> shared_saba_state;
/// \ingroup saba_essentials
/// \brief Strict Weak Ordering for \c shared_saba_state
/// (shared_ptr<const saba_state*>).
/// \ingroup saba_essentials
///
/// This is meant to be used as a comparison functor for
/// STL \c map whose key are of type \c shared_saba_state.
......@@ -182,9 +182,9 @@ namespace spot
}
};
/// \ingroup saba_essentials
/// \brief An Equivalence Relation for \c shared_saba_state
/// (shared_ptr<const saba_state*>).
/// \ingroup saba_essentials
///
/// This is meant to be used as a comparison functor for
/// Sgi \c hash_map whose key are of type \c shared_saba_state.
......@@ -210,10 +210,10 @@ namespace spot
}
};
/// \brief Hash Function for \c shared_saba_state
/// (shared_ptr<const saba_state*>).
/// \ingroup saba_essentials
/// \ingroup hash_funcs
/// \brief Hash Function for \c shared_saba_state
/// (shared_ptr<const saba_state*>).
///
/// This is meant to be used as a hash functor for
/// Sgi's \c hash_map whose key are of type
......
......@@ -23,8 +23,8 @@
namespace spot
{
/// \brief Iterate over a conjunction of saba_state.
/// \ingroup saba_essentials
/// \brief Iterate over a conjunction of saba_state.
///
/// This class provides the basic functionalities required to
/// iterate over a conjunction of states of a saba.
......@@ -87,8 +87,8 @@ namespace spot
};
/// \brief Iterate over the successors of a saba_state.
/// \ingroup saba_essentials
/// \brief Iterate over the successors of a saba_state.
///
/// This class provides the basic functionalities required to
/// iterate over the successors of a state of a saba. Since
......
......@@ -25,8 +25,8 @@ namespace spot
{
class saba;
/// \brief Print reachable states in dot format.
/// \ingroup saba_io
/// \brief Print reachable states in dot format.
std::ostream&
saba_dotty_reachable(std::ostream& os,
const saba* g);
......
......@@ -26,8 +26,8 @@
namespace spot
{
/// \brief Iterate over all reachable states of a spot::saba.
/// \ingroup saba_generic
/// \brief Iterate over all reachable states of a spot::saba.
class saba_reachable_iterator
{
public:
......@@ -112,9 +112,9 @@ namespace spot
seen_map seen; ///< States already seen.
};
/// \ingroup saba_generic
/// \brief An implementation of spot::saba_reachable_iterator that browses
/// states depth first.
/// \ingroup saba_generic
class saba_reachable_iterator_depth_first : public saba_reachable_iterator
{
public:
......@@ -127,9 +127,9 @@ namespace spot
std::stack<const saba_state*> todo; ///< A stack of states yet to explore.
};
/// \ingroup saba_generic
/// \brief An implementation of spot::saba_reachable_iterator that browses
/// states breadth first.
/// \ingroup saba_generic
class saba_reachable_iterator_breadth_first : public saba_reachable_iterator
{
public:
......
......@@ -63,6 +63,18 @@ for dir in "${INCDIR-..}" "${INCDIR-..}"/../iface; do
grep Copyright $file >/dev/null ||
diag "missing copyright"
# A doxygen comments such as
#
# | \brief foo
# | \ingroup bar
# |
# | baz
#
# will be output as "foobaz." But if the first two lines
# are reversed, it's output correctly.
perl -ne '/(.*\\brief.*\n.*\\ingroup.*)/ && print("$1\n") && exit(1)' \
-0777 $file || diag "always put 'ingroup' before 'brief'"
# Strip comments and strings.
sed 's,[ ]*//.*,,;s,"[^"]*","",g' < $file > $tmp
......
......@@ -44,8 +44,8 @@ namespace spot
/// \addtogroup ta_essentials Essential TA types
/// \ingroup ta
/// \brief A Testing Automaton.
/// \ingroup ta_essentials
/// \brief A Testing Automaton.
///
/// The Testing Automata (TA) were introduced by
/// Henri Hansen, Wojciech Penczek and Antti Valmari
......@@ -174,8 +174,8 @@ namespace spot
};
/// \brief Iterate over the successors of a state.
/// \ingroup ta_essentials
/// \brief Iterate over the successors of a state.
///
/// This class provides the basic functionalities required to
/// iterate over the successors of a state, as well as querying
......
......@@ -26,8 +26,8 @@
namespace spot
{
/// \brief A state for spot::ta_product.
/// \ingroup ta_emptiness_check
/// \brief A state for spot::ta_product.
///
/// This state is in fact a pair of state: the state from the TA
/// automaton and that of Kripke structure.
......@@ -132,9 +132,9 @@ namespace spot
};
/// \ingroup ta_emptiness_check
/// \brief A lazy product between a Testing automaton and a Kripke structure.
/// (States are computed on the fly.)
/// \ingroup ta_emptiness_check
class ta_product : public ta
{
public:
......
......@@ -24,8 +24,8 @@
namespace spot
{
/// \brief A Transition-based Generalized Testing Automaton (TGTA).
/// \ingroup ta_essentials
/// \brief A Transition-based Generalized Testing Automaton (TGTA).
///
/// Transition-based Generalized Testing Automaton (TGTA) is a new kind of
/// automaton that combines features from both TA and TGBA.
......
......@@ -27,8 +27,8 @@
namespace spot
{
/// \brief Iterate over all reachable states of a spot::ta.
/// \ingroup ta_generic
/// \brief Iterate over all reachable states of a spot::ta.
class ta_reachable_iterator
{
public:
......@@ -94,9 +94,9 @@ namespace spot
seen_map seen; ///< States already seen.
};
/// \ingroup ta_generic
/// \brief An implementation of spot::ta_reachable_iterator that browses
/// states depth first.
/// \ingroup ta_generic
class ta_reachable_iterator_depth_first : public ta_reachable_iterator
{
public:
......@@ -111,9 +111,9 @@ namespace spot
std::stack<const state*> todo; ///< A stack of states yet to explore.
};
/// \ingroup ta_generic
/// \brief An implementation of spot::ta_reachable_iterator that browses
/// states breadth first.
/// \ingroup ta_generic
class ta_reachable_iterator_breadth_first : public ta_reachable_iterator
{
public:
......
......@@ -26,8 +26,8 @@
namespace spot
{
/// \brief Build a spot::ta_explicit* (TA) from an LTL formula.
/// \ingroup tgba_ta
/// \brief Build a spot::ta_explicit* (TA) from an LTL formula.
///
/// This is based on the following paper.
/// \verbatim
......@@ -85,10 +85,10 @@ namespace spot
bool single_pass_emptiness_check = false,
bool artificial_livelock_state_mode = false);
/// \brief Build a spot::tgta_explicit* (TGTA) from an LTL formula.
/// \ingroup tgba_ta
/// \param tgba_to_convert The TGBA automaton to convert into a TGTA automaton
/// \brief Build a spot::tgta_explicit* (TGTA) from an LTL formula.
///
/// \param tgba_to_convert The TGBA automaton to convert into a TGTA automaton
/// \param atomic_propositions_set The set of atomic propositions used in the
/// input TGBA \a tgba_to_convert
///
......
......@@ -23,8 +23,8 @@
namespace spot
{
/// \brief Wrap a tgba to offer information about upcoming conditions.
/// \ingroup tgba
/// \brief Wrap a tgba to offer information about upcoming conditions.
///
/// This class is a spot::tgba wrapper that simply add a new method,
/// future_conditions(), to any spot::tgba.
......
......@@ -23,8 +23,8 @@
namespace spot
{
/// \brief A State-based Generalized Büchi Automaton.
/// \ingroup tgba_essentials
/// \brief A State-based Generalized Büchi Automaton.
///
/// An SBA is a TGBA in which the outgoing transitions of
/// a state are either all accepting (in which case the
......
......@@ -33,8 +33,8 @@
namespace spot
{
/// \brief Abstract class for states.
/// \ingroup tgba_essentials
/// \brief Abstract class for states.
class state
{
public:
......@@ -98,8 +98,8 @@ namespace spot
}
};
/// \brief Strict Weak Ordering for \c state*.
/// \ingroup tgba_essentials
/// \brief Strict Weak Ordering for \c state*.
///
/// This is meant to be used as a comparison functor for
/// STL \c map whose key are of type \c state*.
......@@ -121,8 +121,8 @@ namespace spot
}
};
/// \brief An Equivalence Relation for \c state*.
/// \ingroup tgba_essentials
/// \brief An Equivalence Relation for \c state*.
///
/// This is meant to be used as a comparison functor for
/// Sgi \c hash_map whose key are of type \c state*.
......@@ -145,9 +145,9 @@ namespace spot
}
};
/// \brief Hash Function for \c state*.
/// \ingroup tgba_essentials
/// \ingroup hash_funcs
/// \brief Hash Function for \c state*.
///
/// This is meant to be used as a hash functor for
/// Sgi's \c hash_map whose key are of type \c state*.
......@@ -177,9 +177,9 @@ namespace spot
inline void shared_state_deleter(state* s) { s->destroy(); }
/// \ingroup tgba_essentials
/// \brief Strict Weak Ordering for \c shared_state
/// (shared_ptr<const state*>).
/// \ingroup tgba_essentials
///
/// This is meant to be used as a comparison functor for
/// STL \c map whose key are of type \c shared_state.
......@@ -203,9 +203,9 @@ namespace spot
}
};
/// \ingroup tgba_essentials
/// \brief An Equivalence Relation for \c shared_state
/// (shared_ptr<const state*>).
/// \ingroup tgba_essentials
///
/// This is meant to be used as a comparison functor for
/// Sgi \c hash_map whose key are of type \c shared_state.
......@@ -231,9 +231,9 @@ namespace spot
}
};
/// \brief Hash Function for \c shared_state (shared_ptr<const state*>).
/// \ingroup tgba_essentials
/// \ingroup hash_funcs
/// \brief Hash Function for \c shared_state (shared_ptr<const state*>).
///
/// This is meant to be used as a hash functor for
/// Sgi's \c hash_map whose key are of type
......
......@@ -26,8 +26,8 @@
namespace spot
{
/// \brief Iterate over the successors of a state.
/// \ingroup tgba_essentials
/// \brief Iterate over the successors of a state.
///
/// This class provides the basic functionalities required to
/// iterate over the successors of a state, as well as querying
......
......@@ -41,8 +41,8 @@ namespace spot
/// \addtogroup tgba_essentials Essential TGBA types
/// \ingroup tgba
/// \brief A Transition-based Generalized Büchi Automaton.
/// \ingroup tgba_essentials
/// \brief A Transition-based Generalized Büchi Automaton.
///
/// The acronym TGBA (Transition-based Generalized Büchi Automaton)
/// was coined by Dimitra Giannakopoulou and Flavio Lerda
......
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