Boost logo

Boost :

Subject: Re: [boost] Boost.Conversion - pre review request
From: Vicente Botet (vicente.botet_at_[hidden])
Date: 2011-07-09 10:09:41

Gordon Woodhull wrote:
> On Jul 9, 2011, at 2:52 AM, Jeroen Habraken wrote:
>> On 9 July 2011 04:10, Gordon Woodhull <gordon_at_[hidden]> wrote:
>>> (Jeroen, if you're reading this, can you convert to/from e.g.
>>> hexadecimal with Coerce?)
>> It isn't possible at the moment but it is to be re-added during the
>> Google Summer of Code. The syntax will probably look something like
>> coerce::as<int>("0x17", tag::hex());
> Aha, that's why I asked. Not currently compatible with Boost.Conversion:
> just as there's no way to supply iostream manipulators for Convert-style
> formatting, there's no way to supply tags for Coerce-style.
> Vicente, do you have any thoughts on whether extra parameters could be
> added generically?


I don't think that these kind of specific conversions could be added to
simple type-to-type conversions. As I signaled during the Boost.Convert
review I will use instead an auxiliary string stream and output and input
the types we want to convert using as many manipulators as the user wants.

I have added an example here
that shows how I will apply these kind of conversions. As you can see this
example doesn't make use of the Boost.Conversion generic functions when
manipulators are needed. Instead it uses either a template io stream
(extractor_stream) that is able to extract the type given as parameter when
the extract manipulator is used or a io stream ( via_stream) that is able to
extract any type given as parameter of the manipulator extract_to.

As you can see the user can define is not too many lines of code these kind
of io streams.


View this message in context:
Sent from the Boost - Dev mailing list archive at

Boost list run by bdawes at, gregod at, cpdaniel at, john at