Boost logo

Boost :

From: brass goowy (brass_at_[hidden])
Date: 2008-03-01 23:29:34


Brian Wood writes: >Recently, I suggested there should be serialization support wrt >the Range library - >http://lists.boost.org/Archives/boost/2008/01/132294.php. >I'm writing to inform you of my plans in this regard. This input: > >Msgs > (sub_range<list<short> >) @OUT >} > >to the C++ Middleware Writer, http://home.seventy7.com/cgi-bin/samb.cgi, >results in this output: > >#include <boost/range/sub_range.hpp> >#include <list> >#include <Buffer.hh> >using boost::sub_range; > > >struct Msgs >{ >inline >Msgs() {} >inline >~Msgs() {} > >inline >int >Send(Buffer* buf, const sub_range<list<short> >& about1) >{ > unsigned int headCount = 0; > headCount = about1.size(); > if (!buf->Receive(&headCount, sizeof(int))) { > buf->ews_.SetErrorWords(1, __FILE__, __LINE__); > return 0; > } > list<short>::const_iterator rit1 = boost::begin(about1); > list<short>::const_iterator rit2 = boost::end(about1); > for (; rit1 != rit2; ++rit1) { > if (!buf->Receive(&(*rit1), sizeof(short))) { > buf->ews_.SetErrorWords(1, __FILE__, __LINE__); > return 0; > } > } > > if (!buf->SendStoredData()) { > buf->ews_.SetErrorWords(2, __FILE__, __LINE__); > return 0; > } > return 1; >} > >}; > >This functionality isn't available online yet. G-d willing, it >will be available by the middle of next month. Update: the functionality is now available online. Brian Wood Ebenezer Enterprises www.webebenezer.net


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk