9#ifndef _LOG4CPP_PORTABILITYIMPL_HH
10#define _LOG4CPP_PORTABILITYIMPL_HH
14#ifdef LOG4CPP_CSTDLIB_NOT_IN_STD
17 static inline char* getenv(
const char* name) {
18 return ::getenv(name);
20 static inline int atoi(
const char* nptr) {
23 static inline unsigned long int strtoul(
const char* nptr,
char** endptr,
int base) {
24 return ::strtol(nptr, endptr, base);
26 static inline void abort(
void) {
33#ifdef LOG4CPP_CSTRING_NOT_IN_STD
36 static inline void* memmove(
void* dest,
const void* src,
size_t n) {
37 return ::memmove(dest, src, n);
42#ifdef LOG4CPP_CTIME_NOT_IN_STD
45 static inline size_t strftime(
char* strDest,
size_t maxsize,
const char* format,
const struct tm* timeptr) {
46 return ::strftime(strDest, maxsize, format, timeptr);
48 static inline struct tm*
localtime(
const time_t* timer) {
49 return ::localtime(timer);
57#ifdef LOG4CPP_CMATH_NOT_IN_STD
60 static inline int abs(
int i) {
67 template <
typename T>
const T&
min(
const T& a,
const T& b) {
71 template <
typename T>
const T&
max(
const T& a,
const T& b) {
The top level namespace for all 'Log for C++' types and classes.
Definition AbortAppender.hh:16
void localtime(const ::time_t *time, ::tm *t)
Definition Localtime.cpp:27
const T & max(const T &a, const T &b)
Definition PortabilityImpl.hh:71
const T & min(const T &a, const T &b)
Definition PortabilityImpl.hh:67
Definition Portability.hh:61