Provided by: libbobcat-dev_2.20.01-1_amd64 bug

NAME

       FBB::A2x - Objects performing ascii-to-x (anything) conversions

SYNOPSIS

       #include <bobcat/a2x>
       Linking option: -lbobcat

DESCRIPTION

       FBB::A2x  objects offer the C++ equivalent of the standard C conversion functions atoi(3),
       atol(3), atof(3) etc.  A2x objects generalize these C functions to any type  that  can  be
       extracted  from  an  istream object. Since FBB::A2x represents the object-variant of the C
       functions, and is therefore type-safe and extensible, their use is greatly preferred  over
       using the standard C functions.

NAMESPACE

       FBB
       All  constructors,  members, and operators, mentioned in this man-page, are defined in the
       namespace FBB.

INHERITS FROM

       std::istringstream

CONSTRUCTORS

       o      A2x():
              This constructor constructs an empty A2x object. No information  can  be  converted
              from a  thus constructed A2x object.

       o      A2x(char const *text):
              This  constructor stores text. If text represents a textual value of some type, the
              A2x object may be used to initialize or assign this value to  a  variable  of  that
              particular type. Extraction, however is also still possible.

       o      A2x(std::string const &str):
              This  constructor  stores  the  text  contained  in  str. If this text represents a
              textual value of some type, the A2x object may be used to initialize or assign this
              value  to  a  variable  of that particular type. Extraction is also still possible.
              The copy constructor is available.

STATIC MEMBER FUNCTION

       o      bool lastFail():
              This member returns true if the last conversion failed (i.e., the  object’s  fail()
              member  returned  true  and returns false otherwise).  This member allows checks on
              the success of the extraction/conversion using anonymous A2x  objects.  The  member
              also returns true when no conversions have as yet been performed.
              Note  that this member is a thread-unsafe static member: in a multithreaded program
              locks may be required to ensure that the proper conversion result is inspected.

MEMBER FUNCTION

       All members of the istringstream class are available.

       o      Type to():
              This member returns any type Type supporting extractions from i[string]streams.  If
              the  extraction  fails,  the  A2x object’s good() member will return false, and the
              Type’s default value is returned. This  operator  was  implemented  as  a  template
              member  function.  There  is also a type conversion operator available (see below),
              but the member function variant may be preferred over the  conversion  operator  in
              situations  where  explicit  disambiguation  is  required  (e.g.,  in cases where a
              conversion has no obvious type solution such as direct insertions)  An  example  is
              provided in the EXAMPLE section below.

OVERLOADED OPERATORS

       o      operator Type():
              Conversion  to  any  type Type supporting extractions from i[string]streams. If the
              extraction fails, the A2x object’s good() member will return false, and the  Type’s
              default  value  is  returned.  This  operator  was implemented as a template member
              function.

       o      istream &operator>>(istream &, Type &):
              Extraction to any type Type supporting extractions from  i[string]streams.  If  the
              extraction  fails, the A2x object’s good() member will return false, and the Type’s
              default value is returned (this facility is implied by the  fact  that  this  class
              inherits from istringstream, but it’s probably useful to stress that the extraction
              operation is still available).

       o      A2x &operator=(char const *):
              Stores new text in the A2x object, resets the  status  flags  to  ios::good.  If  a
              0-pointer is passed, an empty string is stored.

       o      A2x &operator=(std::string const &):
              Stores  the  text  stored in the std::string argument in the A2x object, resets the
              status flags to ios::good.

       o      A2x &operator=(A2x const &):
              The standard overloaded assignment operator is available

EXAMPLE

           int x = A2x("12");

           A2x a2x("12.50");

           double d;

           d = a2x;

           a2x = "err";

           d = a2x;        // d now 0

           a2x = " a";

           char c = a2x;   // c now ’a’

                           // explicit conversion to `double’
           cout << A2x("12.4").to<double>() << endl;

FILES

       bobcat/a2x - defines the class interface

SEE ALSO

       bobcat(7), x2a(3bobcat), atoi(3), atol(3), atof(3), strtod(3), strtol(3), strdoul(3)

BUGS

       None Reported.

DISTRIBUTION FILES

       o      bobcat_2.20.01-x.dsc: detached signature;

       o      bobcat_2.20.01-x.tar.gz: source archive;

       o      bobcat_2.20.01-x_i386.changes: change log;

       o      libbobcat1_2.20.01-x_*.deb: debian package holding the libraries;

       o      libbobcat1-dev_2.20.01-x_*.deb: debian package holding the libraries,  headers  and
              manual pages;

       o      http://sourceforge.net/projects/bobcat: public archive location;

BOBCAT

       Bobcat is an acronym of `Brokken’s Own Base Classes And Templates’.

COPYRIGHT

       This  is  free  software,  distributed  under  the terms of the GNU General Public License
       (GPL).

AUTHOR

       Frank B. Brokken (f.b.brokken@rug.nl).