WvStreams
Public Member Functions | Static Public Member Functions | Protected Attributes
WvErrorBase Class Reference

A class for managing error numbers and strings. More...

#include <wverror.h>

Inheritance diagram for WvErrorBase:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual bool isok () const
 By default, returns true if geterr() == 0.
virtual int geterr () const
 If isok() is false, return the system error number corresponding to the error, -1 for a special error string (which you can obtain with errstr()) or 0 on end of file.
virtual WvString errstr () const
virtual void seterr (int _errnum)
 Set the errnum variable -- we have an error.
void seterr (WvStringParm specialerr)
void seterr (WVSTRING_FORMAT_DECL)
void seterr_both (int _errnum, WvStringParm specialerr)
void seterr_both (int _errnum, WVSTRING_FORMAT_DECL)
void seterr (const WvErrorBase &err)
void noerr ()
 Reset our error state - there's no error condition anymore.

Static Public Member Functions

static WvString strerror (int errnum)
 A replacement for the operating system ::strerror() function that can map more kinds of error strings (especially in win32).

Protected Attributes

int errnum
WvString errstring

Detailed Description

A class for managing error numbers and strings.

It can have either a system error value, like those defined in errno.h, or an arbitrary error string. In either case, it can return a string representation of the error message.

This object is most useful for using as a base class of your own class, for historical/backwards compatibility reasons. Consider using a WvError instead, and making it a member of your class instead of a parent.

Definition at line 23 of file wverror.h.


Member Function Documentation

virtual bool WvErrorBase::isok ( ) const [inline, virtual]

By default, returns true if geterr() == 0.

Might be overridden so that isok() == false even though no error code has been specified.

Reimplemented in WvEncoderStream, WvReadLineStream, WvTCPConn, WvNullListener, WvFdStream, WvLog, WvStream, WvStreamClone, WvSSLStream, IWvStream, WvDBusServer, WvDSAKey, WvTimeStream, WvBufStream, WvListener, WvTimeoutStream, WvIStreamList, and _WvConStream.

Definition at line 39 of file wverror.h.

Referenced by WvGlob::set().

virtual int WvErrorBase::geterr ( ) const [inline, virtual]

If isok() is false, return the system error number corresponding to the error, -1 for a special error string (which you can obtain with errstr()) or 0 on end of file.

If isok() is true, returns an undefined number.

Reimplemented in WvStreamClone, and WvDBusServer.

Definition at line 48 of file wverror.h.

Referenced by UniIniGen::commit(), UniFileSystemGen::get(), WvStreamClone::geterr(), WvEncoderStream::isok(), UniConfDaemon::listen(), UniIniGen::refresh(), WvStream::seterr(), and WvMagicCircle::WvMagicCircle().

void WvErrorBase::seterr ( int  _errnum) [virtual]

Set the errnum variable -- we have an error.

If called more than once, seterr() doesn't change the error code away from the previous one. That way, we remember the _original_ cause of our problems.

Subclasses may want to override seterr(int) to shut themselves down (eg. WvStream::close()) when an error condition is set.

Note that seterr(WvString) will call seterr(-1).

Reimplemented in WvStream.

Definition at line 144 of file wverror.cc.

Referenced by WvUnixListener::accept(), WvTCPListener::accept(), WvDSAKey::getpem(), WvGlob::set(), WvMagicCircle::WvMagicCircle(), WvPam::WvPam(), WvShmZone::WvShmZone(), and WvTCPListener::WvTCPListener().

void WvErrorBase::noerr ( ) [inline]

Reset our error state - there's no error condition anymore.

Definition at line 78 of file wverror.h.


The documentation for this class was generated from the following files: