> <quote>
> my_program ( 0, 1) ( 1, 3) (( 0, 1), 15 ), (( 0,1), (7.8) )
> This is input  of 2 points circle and line.
> </quote>
> 
> This isn't a simple parsing task anymore.
> 
> Regards Hartmut

Depends.

Imagine we have defined input operators for Shape classes
istream& operator>>( istream&, Point& );  // accept format (x,y); in other
case throw an exception
istream& operator>>( istream&, Circle& ); // accept format ((x,y), r); in
other case throw an exception
istream& operator>>( istream&, Line& );   // accept format ((x1,y1),
(x2,y2)) in other case throw an exception

They could even exist by itself without CLA processing needs. Each one of
them is easily implemented (with tokenizer for example). Now In combination
with chain_lookup_policy we could have a cla::parser that accept above
syntax with arbitrary order of elements. The idea is originated by the
article "Industrial strength Pluggable Factories" that could be found
online.

Gennadiy.
_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost

Reply via email to