FBB::X2a - Objects performing x-to-Ascii conversions
#include <bobcat/x2a>
Linking option: -lbobcat
FBB:X2a objects convert values of any (insertable) type to
text. The returned text is automatically made available as a standard
C++ string.
X2a was developed well before the std::to_string
function became available. In many cases that latter function can often be
used instead of using X2a: it is available for standard types.
However, if another type must be used then X2a may still come in
handy.
FBB
All constructors, members, operators and manipulators, mentioned in this
man-page, are defined in the namespace FBB.
- o
- X2a(T const &value):
In this constructor T may be any type that can be inserted into an
o[string]stream.
- o
- X2a(double value, size_t behind):
Double value is truncated to behind digits behind the decimal
dot. If a value doesn’t occupy behind digits behind the
decimal point, then missing digits are added as 0. For example, a
value of 7.1, will be displayed as 7.10 if two digits behind the decimal
dot are requested. A value of 7 will be displayed as 7.00.
- o
- X2a(double value, size_t width, size_t behind, std::ios::fmtflags
flags = std::ios::right):
The value is displayed over width character positions, extending the
amount if the value so requires. The converted value is placed
right-aligned into the field of width characters.
The copy constructor and the copy assignment operator are
available.
- 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.
All members of std::ostringstream are available, as
FBB::X2a inherits from this class. In particular
ostringstream::str() can be used to obtain the content of an
X2a object’s text buffer.
- o
- operator std::ostream &operator<<(std::ostream &ostr, X2a
const &x2a):
This conversion operator inserts the textual representation of the
x2a parameter value into the provided ostream.
- o
- operator std::string const() const:
this conversion operator returns the information stored inside the
FBB::X2a object.
string is(X2a(5)); // initializes `is’ with "5"
string ds(X2a(5.25)); // initializes `ds’ with "5.25"
cout << X2a(7.0 / 3, 4) << endl;
// display a value using 4 digits behind the
// decimal dot.
cout << X2a(7.0 / 3, 8, 4) << endl;
// display a value over 8 positions, right
// adjusted, 4 digits behind the decimal dot.
cout << X2a(7.0 / 3, 8, 4, std::ios::left) << endl;
// display a value over 8 positions, left
// adjusted, 4 digits behind the decimal dot.
bobcat/x2a - defines the class interface
- o
- https://fbb-git.gitlab.io/bobcat/: gitlab project page;
- o
- bobcat_6.02.02-x.dsc: detached signature;
- o
- bobcat_6.02.02-x.tar.gz: source archive;
- o
- bobcat_6.02.02-x_i386.changes: change log;
- o
- libbobcat1_6.02.02-x_*.deb: debian package containing the
libraries;
- o
- libbobcat1-dev_6.02.02-x_*.deb: debian package containing the
libraries, headers and manual pages;
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).
Frank B. Brokken (f.b.brokken@rug.nl).