Apache Portable Runtime
Macros | Typedefs | Enumerations | Functions
Miscellaneous library routines

Macros

#define APR_ASCII_BLANK   '\040'
 
#define APR_ASCII_CR   '\015'
 
#define APR_ASCII_LF   '\012'
 
#define APR_ASCII_TAB   '\011'
 
#define APR_OFFSET(p_type, field)   ((long) (((char *) (&(((p_type)NULL)->field))) - ((char *) NULL)))
 
#define APR_OFFSETOF(s_type, field)   APR_OFFSET(s_type*,field)
 
#define APR_ALIGN(size, boundary)   (((size) + ((boundary) - 1)) & ~((boundary) - 1))
 
#define APR_ALIGN_DEFAULT(size)   APR_ALIGN(size, 8)
 
#define memmove(a, b, c)   bcopy(b,a,c)
 
#define APR_TYPEDEF_STRUCT(type, incompletion)
 

Typedefs

typedef int apr_signum_t
 

Enumerations

enum  apr_wait_type_t { APR_WAIT_READ, APR_WAIT_WRITE }
 

Functions

void * memchr (const void *s, int c, size_t n)
 

Detailed Description

This is collection of oddballs that didn't fit anywhere else, and might move to more appropriate headers with the release of APR 1.0.

Macro Definition Documentation

#define APR_ALIGN (   size,
  boundary 
)    (((size) + ((boundary) - 1)) & ~((boundary) - 1))

Alignment macros

#define APR_ALIGN_DEFAULT (   size)    APR_ALIGN(size, 8)

Default alignment

#define APR_ASCII_BLANK   '\040'

FALSE TRUE a space

#define APR_ASCII_CR   '\015'

a carrige return

#define APR_ASCII_LF   '\012'

a line feed

#define APR_ASCII_TAB   '\011'

a tab

#define APR_OFFSET (   p_type,
  field 
)    ((long) (((char *) (&(((p_type)NULL)->field))) - ((char *) NULL)))

Finding offsets of elements within structures. Taken from the X code... they've sweated portability of this stuff so we don't have to. Sigh...

Parameters
p_typepointer type name
fielddata field within the structure pointed to
Returns
offset
#define APR_OFFSETOF (   s_type,
  field 
)    APR_OFFSET(s_type*,field)

Finding offsets of elements within structures.

Parameters
s_typestructure type name
fielddata field within the structure
Returns
offset
#define APR_TYPEDEF_STRUCT (   type,
  incompletion 
)
Value:
struct type { \
incompletion \
void *unk[]; \
};

Macro to provide a way to turn an incomplete type into a complete type containing common pointers for a provider.

#define memmove (   a,
  b,
 
)    bcopy(b,a,c)

String and memory functions

Typedef Documentation

typedef int apr_signum_t

signal numbers typedef