Hi, Using Quickbook/BoostBook/Doxygen toolkit I've detected some problems while generating the reference section. I've done an small example that reproduces these problems.
To generate the documentation, just put the files in the
$(BOOST_ROOT)/libs/docbug/doc directory and type "bjam --v2". The class
to be documented (also attached in a hpp file) is the following:
//! This is a class
//! template
template<class T, bool bool_param = true>
class buggy
{
private:
//! Non-copyable
//! class
buggy(const buggy&);
//! Non-assignable
//! class
buggy& operator=(const buggy&);
public:
//!Public
//!enumeration
enum enum_name{ enum_value_0, enum_value_1, enum_value_2 };
//! Member class
//! template
template<class U, class V>
class internal
{};
};
These are the problems:
-> The default value of the bool_param template parameter does not
appear in the reference.
-> The copy constructor and assignment operator appear in the public
section of the reference.
-> The "internal" member class does not appear in the reference.
-> The enumeration does not appear in the reference.
The xml file produced by the toolset containing the reference
("docbug_doxygen.doxygen") seems to be correct (the default value
appears, the CC/AO are private, and internal class and enumeration is
referenced).
I'm not sure where this problem lies (maybe in the doxygen2boostbook.xsl
file?) but although I've tested this with a recent boost snapshot
(2007-02-25) I think the problem was present in previous boost releases.
I've also found that even if EXTRACT_PRIVATE = NO is specified for
Doxygen in the Jamfile, Doxygen generates an XML that includes private
functions. I've reported a bug to the Doxygen Bugzilla, but couldn't we
have a boostbook flag to avoid including private functions in the
reference section?
Thanks,
Ion
//! This is a class
//! template
template<class T, bool bool_param = true>
class buggy
{
private:
//! Non-copyable
//! class
buggy(const buggy&);
//! Non-assignable
//! class
buggy& operator=(const buggy&);
public:
//!Public
//!enumeration
enum enum_name{ enum_value_0, enum_value_1, enum_value_2 };
//! Member class
//! template
template<class U, class V>
class internal
{};
};
docbug.qbk
Description: Binary data
Jamfile.v2
Description: Binary data
------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________ Boost-docs mailing list [email protected] Unsubscribe and other administrative requests: https://lists.sourceforge.net/lists/listinfo/boost-docs
