Re: [boost] Re: an xml-binary persistence library
Robert Ramey <[EMAIL PROTECTED]> writes: > It turns out that ALL the issues raised in the review, including > those that I dismissed, are being addressed. I didn't really intend > to do this I had resolved to improve the quality of the implementation > and leave most of the feature decisions unchanged as I saw them > as ireconcilable trade offs. I was much surprised to discover that > improving the implementation made apparent that what I had > thought were trade offs where in fact artifacts of implementation > stratagy decisions. > > Note to potential library submitters: The boost review process is > far more rigorous than what one is normally accustomed to and I > suspect that few are really prepared for it. On the other hand, > I have no doubt that this the reason for the incredible high quality > and utility of the boost libraries. The only thing I can't explain > why anyone would subject himself to this. Yet here I am. >From your previous paragraph it appears the process was highly valuable and did exactly what it's supposed to do... you seem to have survived it without being unduly discouraged, and you have even been inspired to look at the problem domain more deeply and generally. I'm really glad to see that, and am really looking forward to the review of your revised library! -- Dave Abrahams Boost Consulting www.boost-consulting.com ___ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Re: [boost] Sandbox iterator adaptors update
Vladimir Prus <[EMAIL PROTECTED]> writes: > David Abrahams wrote: > >> > I've a very basic question for now: how to I convert "*rst" files in >> > documentation to something nice-looking, like hmtl? >> >> ReStructuredText: >> http://docutils.sourceforge.net/README.html#quick-start >> >> Use the html.py script in the tools/ directory > > Thanks, it worked. I've some initial comments now. > > 1. The documentation seems incomplete. It is. We were really only advertising the code so far. > I can't find the description of methods for "Derived" class of > iterator_facade, for example. Um, that's private, so it won't be documented (thanks Thomas!) > 2. What is the relation with "new iterator categories". Am I > supposed to pass old categories as template parameters to > facade/adapter. New or old; either one should work. > 3. The attached code does not compile with gcc 3.2, saying that: > >/usr/include/c++/3.2/bits/stl_iterator_base_types.h:123: no type named ` > iterator_category' in `class my_old_iterator' > > The message is correct, but... I've explicitly specified iterator category > when declaring iterator adaptor. Am I doing something wrong? Yes, lots! You need to implement at least advance, increment, equal, and dereference in your derived iterator class in order to make a forward iterator. Also, since your Base type is not an iterator, you need to supply a difference_type for your adapted iterator (and there's no eol at eof ;-)). Also, for your particular application it looks like you might do better by just using iterator_facade rather than iterator_adaptor. I quote: To automate the repetitive work of constructing iterators, we propose ``iterator_facade``, an iterator base class template which provides the rich interface of standard iterators and delegates its implementation to member functions of the derived class. We also propose ``iterator_adaptor``, a base class generator designed specifically for creating iterator adaptors. Because iterators usually have many of the features of their underlying iterator type, the default features of ``iterator_adaptor`` are those of its base [#base]_. The user can selectively replace these features in a derived iterator class. .. [#base] The term "Base" is not meant to imply the use of inheritance. We have followed the lead of the standard library, which provides a base() function to access the underlying iterator object of a reverse - iterator adaptor. > TIA, > Volodya > > > ___ > Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost -- Dave Abrahams Boost Consulting www.boost-consulting.com ___ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
[boost] Re: boost::dynamic_bitset supports multi-thread?
On Fri, 18 Apr 2003 9:20:59 +0800, "jacon wang" <[EMAIL PROTECTED]> wrote: >hi, >I want to know if boost::dynamic_bitset supports multi-thread. >Now,when I use boost::dynamic_bitset with VC++ 6.0 and use run-time >libarary multi-threaded dll,It will cause a INTERNAL COMPILER ERROR(1001). >So I'm confused.Could anyone give me some advice? ICEs (Internal compiler errors) are problems in the compiler (a.k.a. bugs) detected by the compiler itself. You can think of them as sorts of asserts in the compiler code. So, they should never happen. Please, try to post a complete (short) example to reproduce the problem and I'll see if there's a way to avoid it. Genny. ___ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
[boost] Re: [config] New workaround macro
On Thu, 17 Apr 2003 16:09:11 +0100, "John Maddock" <[EMAIL PROTECTED]> wrote: >The names are a little long Yeah, I don't like them either :-) But I was afraid shorter names would have been considered imprecise. If we can bear a little abuse of language I think we could accept: BOOST_EXPLICIT_TEMPLATE_TYPE BOOST_APPEND_EXPLICIT_TEMPLATE_TYPE BOOST_EXPLICIT_TEMPLATE_NON_TYPE BOOST_APPEND_EXPLICIT_TEMPLATE_NON_TYPE If this inspires you any variation, that's welcome too :-) Genny. ___ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
[boost] boost::dynamic_bitset supports multi-thread?
hi, I want to know if boost::dynamic_bitset supports multi-thread. Now,when I use boost::dynamic_bitset with VC++ 6.0 and use run-time libarary multi-threaded dll,It will cause a INTERNAL COMPILER ERROR(1001). So I'm confused.Could anyone give me some advice? Thanks in advance. 2003-04-18 -- Engineering is the art of making what you want from things you can get. ___ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Re: [boost] Sandbox iterator adaptors update
David Abrahams wrote: > > I've a very basic question for now: how to I convert "*rst" files in > > documentation to something nice-looking, like hmtl? > > ReStructuredText: > http://docutils.sourceforge.net/README.html#quick-start > > Use the html.py script in the tools/ directory Thanks, it worked. I've some initial comments now. 1. The documentation seems incomplete. I can't find the description of methods for "Derived" class of iterator_facade, for example. 2. What is the relation with "new iterator categories". Am I supposed to pass old categories as template parameters to facade/adapter. 3. The attached code does not compile with gcc 3.2, saying that: /usr/include/c++/3.2/bits/stl_iterator_base_types.h:123: no type named ` iterator_category' in `class my_old_iterator' The message is correct, but... I've explicitly specified iterator category when declaring iterator adaptor. Am I doing something wrong? TIA, Volodya #include #include #include class my_old_iterator { public: my_old_iterator() : m_i(0) {} void advance() { ++m_i; } int current() { return m_i; } bool eof() { return m_i == 10; } private: int m_i; }; class adapted_iterator : public boost::iterator_adaptor< adapted_iterator, my_old_iterator, int, std::forward_iterator_tag> { public: }; int main() { adapted_iterator i, e; }___ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost