Pyrogenesis  13997
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Functions | Variables
status.cpp File Reference
#include "precompiled.h"
#include "lib/status.h"
#include <cstring>
#include <cstdio>
#include "lib/posix/posix_errno.h"

Go to the source code of this file.

Functions

StatusDefinitionBucketStatusAddDefinitions (StatusDefinitionBucket *bucket)
 (called via STATUS_ADD_DEFINITIONS) More...
 
static const StatusDefinitionDefinitionFromStatus (Status status)
 
static const StatusDefinitionDefinitionFromErrno (int errno_equivalent)
 
wchar_tStatusDescription (Status status, wchar_t *buf, size_t max_chars)
 generate textual description of a Status. More...
 
int ErrnoFromStatus (Status status)
 
Status StatusFromErrno ()
 
 STATUS_ADD_DEFINITIONS (statusDefs)
 

Variables

static StatusDefinitionBucketbuckets
 
static const StatusDefinition statusDefs []
 

Function Documentation

static const StatusDefinition* DefinitionFromErrno ( int  errno_equivalent)
static

Definition at line 64 of file status.cpp.

static const StatusDefinition* DefinitionFromStatus ( Status  status)
static

Definition at line 49 of file status.cpp.

int ErrnoFromStatus ( Status  status)
Returns
the errno equivalent of a Status.

used in wposix - underlying functions return Status but must be translated to errno at e.g. the mmap interface level. higher-level code that calls mmap will in turn convert back to Status.

Definition at line 93 of file status.cpp.

STATUS_ADD_DEFINITIONS ( statusDefs  )
StatusDefinitionBucket* StatusAddDefinitions ( StatusDefinitionBucket bucket)

(called via STATUS_ADD_DEFINITIONS)

Parameters
bucketis being added; its definitions and numDefinitions must already be initialized.
Returns
previous bucket in list, suitable for initializing bucket->next.

(this function must be callable as a static initializer; initializing next avoids the need for a separate dummy variable)

Definition at line 40 of file status.cpp.

wchar_t* StatusDescription ( Status  status,
wchar_t buf,
size_t  max_chars 
)

generate textual description of a Status.

Parameters
bufdestination buffer (allows generating strings with the code's numerical value if no definition is found)
max_charssize of buffer [characters]
Returns
buf (allows using this function in expressions)

Definition at line 79 of file status.cpp.

Status StatusFromErrno ( )
Returns
Status equivalent of errno, or ERR::FAIL if there's no equivalent.

NB: reset errno to 0 before calling POSIX functions to avoid confusion with previous errors.

Definition at line 105 of file status.cpp.

Variable Documentation

StatusDefinitionBucket* buckets
static

Definition at line 38 of file status.cpp.

const StatusDefinition statusDefs[]
static

Definition at line 116 of file status.cpp.