| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 | // Formatting library for C++ - mocks of POSIX functions//// Copyright (c) 2012 - present, Victor Zverovich// All rights reserved.//// For the license information refer to format.h.#ifndef FMT_POSIX_TEST_H#define FMT_POSIX_TEST_H#include <errno.h>#include <locale.h>#include <stdio.h>#ifdef __APPLE__#  include <xlocale.h>#endif#ifdef _WIN32#  include <windows.h>#else#  include <sys/param.h>  // for FreeBSD version#  include <sys/types.h>  // for ssize_t#endif#ifndef _MSC_VERstruct stat;#endifnamespace test {#ifndef _MSC_VER// Size type for read and write.typedef size_t size_t;typedef ssize_t ssize_t;int open(const char* path, int oflag, int mode);int fstat(int fd, struct stat* buf);#elsetypedef unsigned size_t;typedef int ssize_t;errno_t sopen_s(int* pfh, const char* filename, int oflag, int shflag,                int pmode);#endif#ifndef _WIN32long sysconf(int name);#elseDWORD GetFileSize(HANDLE hFile, LPDWORD lpFileSizeHigh);#endifint close(int fildes);int dup(int fildes);int dup2(int fildes, int fildes2);FILE* fdopen(int fildes, const char* mode);ssize_t read(int fildes, void* buf, size_t nbyte);ssize_t write(int fildes, const void* buf, size_t nbyte);#ifndef _WIN32int pipe(int fildes[2]);#elseint pipe(int* pfds, unsigned psize, int textmode);#endifFILE* fopen(const char* filename, const char* mode);int fclose(FILE* stream);int(fileno)(FILE* stream);#if defined(FMT_LOCALE) && !defined(_WIN32)locale_t newlocale(int category_mask, const char* locale, locale_t base);#endif}  // namespace test#define FMT_SYSTEM(call) test::call#endif  // FMT_POSIX_TEST_H
 |