focal (3) a2x.3bobcat.gz

Provided by: libbobcat-dev_5.02.00-1build1_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++ string conversion functions like stol,
       stoul, stod etc. These standard C++  string  functions  are  extremely  useful  and  should  probably  be
       preferred  over  using  the  members  of  A2x  objects,  but  A2x  offers  additional benefits in that it
       generalizes these functions to any type that can be extracted from a istream objects.

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 and move constructors are 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 returns the value of a thread_local static member: different threads  cannot
              inspect other threads’ lastFail status.

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 returns 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 istreams. 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 member template.

       o      istream &operator>>(istream &, Type &):
              Extraction to any type Type supporting extractions from istreams. If the extraction fails, the A2x
              object’s good() member returns 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.

       The 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)

BUGS

       None Reported.

DISTRIBUTION FILES

       o      bobcat_5.02.00-x.dsc: detached signature;

       o      bobcat_5.02.00-x.tar.gz: source archive;

       o      bobcat_5.02.00-x_i386.changes: change log;

       o      libbobcat1_5.02.00-x_*.deb: debian package holding the libraries;

       o      libbobcat1-dev_5.02.00-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’.

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

AUTHOR

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