/usr/share/doc/libbobcat2-dev/man/errno.3.html is in libbobcat-dev 2.20.01-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 | <html><head>
<title>FBB::Errno</title>
<link rev="made" href="mailto:Frank B. Brokken: f.b.brokken@rug.nl">
</head>
<body text="#27408B" bgcolor="#FFFAF0">
<hr>
<h1>FBB::Errno</h1>
<h2>libbobcat1-dev_2.20.01-x.tar.gz</h2>
<h2>2005-2011</h2>
<html><head>
<link rev="made" href="mailto:Frank B. Brokken: f.b.brokken@rug.nl">
</head>
<body text="#27408B" bgcolor="#FFFAF0">
<hr>
<h1></h1>
<html><head>
<title>FBB::Errno(3bobcat)</title>
<link rev="made" href="mailto:Frank B. Brokken: f.b.brokken@rug.nl">
</head>
<body text="#27408B" bgcolor="#FFFAF0">
<hr>
<h1>FBB::Errno(3bobcat)</h1>
<h2>libbobcat1-dev_2.20.01-x.tar.gz Error handler</h2>
<h2>2005-2011</h2>
<p>
<h2>NAME</h2>FBB::Errno - Throwable objects handling error conditions
<p>
<h2>SYNOPSIS</h2>
<strong>#include <bobcat/errno></strong><br>
Linking option: <em>-lbobcat</em>
<p>
<h2>DESCRIPTION</h2>
<strong>FBB::Errno</strong> objects may be thrown in exceptions. As they are also
<strong>std::ostringstream</strong> objects, information may be inserted into them.
Facilitities are offered to insert information into, and to throw anonymous
<strong>FBB::Errno</strong> objects.
<p>
<h2>NAMESPACE</h2>
<strong>FBB</strong><br>
All constructors, members, operators and manipulators, mentioned in this
man-page, are defined in the namespace <strong>FBB</strong>.
<p>
<h2>INHERITS FROM</h2>
<strong>std::ostringstream, std::exception</strong>
<p>
<h2>CONSTRUCTORS</h2>
<ul>
<li> <strong>Errno()</strong>:<br>
This constructor stores the current system <em>errno</em> value and its textual
interpretation. No textual <em>errno</em> conversion is stored if <em>errno</em> equals
0.
<li> <strong>Errno(char const *prefix)</strong>:<br>
This constructor stores the current system <em>errno</em> value. To this, the
textual interpretation of <strong>errno</strong> is added unless <strong>errno</strong> equals 0. If, in
this situation, <strong>prefix</strong> is a non-empty string, the text <em>: </em> is first
appended to the prefix.
<li> <strong>Errno(int errnr, char const *text = 0)</strong>:<br>
This constructor stores the provided <em>errnr</em> value, and the <em>text</em>
text. The <em>text</em> argument may be omitted or empty, in which case no text
will be prefixed to any additionally inserted information. With this version
of <strong>FBB::Errno</strong>, no <em>: </em> is added to a non-empty <em>text</em> argument.
</ul>
The copy constructor is available.
<p>
<h2>MEMBER FUNCTIONS</h2>
All members of <strong>std::ostringstream</strong> and <strong> std::exception</strong> are
available, as <strong>FBB::Errno</strong> inherits from these classes.
<ul>
<li> <strong>char const *why() const</strong>:<br>
Returns the initialized and inserted text. <em>No</em> separators are inserted
by the <strong>FBB::Errno</strong> object between the initializatin text and any text
inserted later. If separators are required, the user of the <strong>FBB::Errno</strong>
object must insert these explicitly. The same text is returned by <em>char
const *what() const</em>, which is part of <em>std::exception</em>'s interface.
<li> <strong>int which() const</strong>:<br>
Returns the internally stored <strong>errno</strong> value: either the system-<strong>errno</strong>
value, or the value provided by the third constructor.
</ul>
<p>
<h2>OVERLOADED OPERATORS</h2>
<ul>
<li> <strong>Errno const &operator<<(Errno const &in, Type const &t)</strong>:<br>
This overloaded insertion operator can be used to insert values of any
type that can also be inserted into an <em>ostringstream</em> object. It is
implemented as a template, with the generic <em>Type</em> representing the type of
the value to be inserted.
</ul>
The overloaded assignment operator is not available.
<p>
<h2>STATIC MEMBERS</h2>
<p>
The following convenience functions can be used for controlled opening of
<em>std::istream, std::ostream</em> and <em>std::fstream</em> objects. If opening fails
an <em>FBB::Errno(1)</em> exception is thrown containing a short message stating
that the named stream could not be opened. If the stream was already open it
is closed first.
<p>
<ul>
<li> <strong>static void open(std::ifstream &in, std::string const &name,
std::ios::openmode mode = std::ios::in)</strong>:<br>
Convenience function opening the object <em>ifstream in</em> refers to.
<li> <strong>static void open(std::ofstream &out, std::string const &name,
std::ios::openmode mode = std::ios::out)</strong>:<br>
Convenience function opening (creating) the object <em>ofstream out</em>
refers to.
<li> <strong>static void open(std::fstream &out, std::string const &name,
std::ios::openmode mode)</strong>:<br>
Convenience function opening the object <em>fstream out</em>
refers to.
</ul>
<p>
<h2>EXAMPLE</h2>
The following example shows the normal use of the manipulators:
<pre>
if (exceptionalCondition)
throw FBB::Errno(1, "Failure") << ": Exceptional condition occurred";
</pre>
<p>
<h2>FILES</h2>
<em>bobcat/errno</em> - defines the class interface
<p>
<h2>SEE ALSO</h2>
<strong>bobcat</strong>(7)
<p>
<h2>BUGS</h2>
None Reported.
<p>
<h2>DISTRIBUTION FILES</h2>
<ul>
<li> <em>bobcat_2.20.01-x.dsc</em>: detached signature;
<li> <em>bobcat_2.20.01-x.tar.gz</em>: source archive;
<li> <em>bobcat_2.20.01-x_i386.changes</em>: change log;
<li> <em>libbobcat1_2.20.01-x_*.deb</em>: debian package holding the
libraries;
<li> <em>libbobcat1-dev_2.20.01-x_*.deb</em>: debian package holding the
libraries, headers and manual pages;
<li> <em>http://sourceforge.net/projects/bobcat</em>: public archive location;
</ul>
<p>
<h2>BOBCAT</h2>
Bobcat is an acronym of `Brokken's Own Base Classes And Templates'.
<p>
<h2>COPYRIGHT</h2>
This is free software, distributed under the terms of the
GNU General Public License (GPL).
<p>
<h2>AUTHOR</h2>
Frank B. Brokken (<strong>f.b.brokken@rug.nl</strong>).
<p>
|