author | William Roberts <williamr@symbian.org> |
Tue, 16 Mar 2010 16:12:26 +0000 | |
branch | Symbian2 |
changeset 2 | 2fe1408b6811 |
parent 0 | 061f57f2323e |
child 4 | 837f303aceeb |
permissions | -rw-r--r-- |
2
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
1 |
/* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
2 |
* © Portions copyright (c) 2006-2007 Nokia Corporation. All rights reserved. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
3 |
* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
4 |
* Copyright (c) 1999 |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
5 |
* Silicon Graphics Computer Systems, Inc. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
6 |
* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
7 |
* Copyright (c) 1999 |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
8 |
* Boris Fomitchev |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
9 |
* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
10 |
* This material is provided "as is", with absolutely no warranty expressed |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
11 |
* or implied. Any use is at your own risk. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
12 |
* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
13 |
* Permission to use or copy this software for any purpose is hereby granted |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
14 |
* without fee, provided the above notices are retained on all copies. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
15 |
* Permission to modify the code and to distribute modified code is granted, |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
16 |
* provided the above notices are retained, and a notice that the code was |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
17 |
* modified is included with the above copyright notice. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
18 |
* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
19 |
*/ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
20 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
21 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
22 |
// WARNING: This is an internal header file, included by other C++ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
23 |
// standard library headers. You should not attempt to use this header |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
24 |
// file directly. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
25 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
26 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
27 |
#ifndef _STLP_STDIO_FILE_H |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
28 |
#define _STLP_STDIO_FILE_H |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
29 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
30 |
// This file provides a low-level interface between the internal |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
31 |
// representation of struct FILE, from the C stdio library, and |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
32 |
// the C++ I/O library. The C++ I/O library views a FILE object as |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
33 |
// a collection of three pointers: the beginning of the buffer, the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
34 |
// current read/write position, and the end of the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
35 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
36 |
// The interface: |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
37 |
// - char* _FILE_[IO]_begin(const FILE *__f); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
38 |
// Returns a pointer to the beginning of the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
39 |
// - char* _FILE_[IO]_next(const FILE *__f); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
40 |
// Returns the current read/write position within the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
41 |
// - char* _FILE_[IO]_end(const FILE *__f); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
42 |
// Returns a pointer immediately past the end of the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
43 |
// - char* _FILE_[IO]_avail(const FILE *__f); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
44 |
// Returns the number of characters remaining in the buffer, i.e. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
45 |
// _FILE_[IO]_end(__f) - _FILE_[IO]_next(__f). |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
46 |
// - char& _FILE_[IO]_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
47 |
// Increments the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
48 |
// character at the old position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
49 |
// - char& _FILE_[IO]_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
50 |
// Increments the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
51 |
// character at the old position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
52 |
// - char& _FILE_[IO]_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
53 |
// Decrements the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
54 |
// character at the old position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
55 |
// - char& _FILE_[IO]_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
56 |
// Decrements the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
57 |
// character at the old position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
58 |
// - void _FILE_[IO]_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
59 |
// Increments the current read/write position by __n. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
60 |
// - void _FILE_[IO]_set(FILE *__f, char* __begin, char* __next, char* __end); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
61 |
// Sets the beginning of the bufer to __begin, the current read/write |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
62 |
// position to __next, and the buffer's past-the-end pointer to __end. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
63 |
// If any of those pointers is null, then all of them must be null. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
64 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
65 |
// Each function comes in two versions, one for a FILE used as an input |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
66 |
// buffer and one for a FILE used as an output buffer. In some stdio |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
67 |
// implementations the two functions are identical, but in others they are |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
68 |
// not. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
69 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
70 |
#ifndef _STLP_CSTDIO |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
71 |
# include <cstdio> |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
72 |
#endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
73 |
#ifndef _STLP_CSTDDEF |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
74 |
# include <cstddef> |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
75 |
#endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
76 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
77 |
#if defined(__MSL__) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
78 |
# include <unix.h> // get the definition of fileno |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
79 |
#endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
80 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
81 |
_STLP_BEGIN_NAMESPACE |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
82 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
83 |
#if !defined(_STLP_WINCE) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
84 |
//---------------------------------------------------------------------- |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
85 |
// Implementation for the IRIX C library. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
86 |
// Solaris interface looks to be identical. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
87 |
#if !defined(_STLP_USE_GLIBC) && \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
88 |
( defined(__sgi) || \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
89 |
( defined(__sun) && ! defined (_LP64) ) || \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
90 |
defined (__osf__) || defined(__DECCXX) || \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
91 |
defined (_STLP_MSVC) || defined (__ICL) || defined (__MINGW32__) || defined(__DJGPP) ||\ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
92 |
defined (_AIX) || defined (_CRAY)) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
93 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
94 |
#if defined ( _MSC_VER ) || defined (__ICL) || defined (__MINGW32__) || defined(__DJGPP) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
95 |
typedef char* _File_ptr_type; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
96 |
#else |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
97 |
typedef unsigned char* _File_ptr_type; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
98 |
#endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
99 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
100 |
inline int _FILE_fd(const FILE *__f) { return __f->_file; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
101 |
inline char* _FILE_I_begin(const FILE *__f) { return (char*) __f->_base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
102 |
inline char* _FILE_I_next(const FILE *__f) { return (char*) __f->_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
103 |
inline char* _FILE_I_end(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
104 |
{ return (char*) __f->_ptr + __f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
105 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
106 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
107 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
108 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
109 |
{ --__f->_cnt; return *(char*) (++__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
110 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
111 |
{ --__f->_cnt; return *(char*) (__f->_ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
112 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
113 |
{ ++__f->_cnt; return *(char*) (--__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
114 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
115 |
{ ++__f->_cnt; return *(char*) (__f->_ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
116 |
inline void _FILE_I_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
117 |
{ __f->_ptr += __n; __f->_cnt -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
118 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
119 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* __end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
120 |
__f->_base = (_File_ptr_type) __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
121 |
__f->_ptr = (_File_ptr_type) __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
122 |
__f->_cnt = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
123 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
124 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
125 |
# define _STLP_FILE_I_O_IDENTICAL 1 |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
126 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
127 |
#elif defined(__EMX__) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
128 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
129 |
inline int _FILE_fd(const FILE* __f) { return __f->_handle; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
130 |
inline char* _FILE_I_begin(const FILE* __f) { return (char*) __f->_buffer; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
131 |
inline char* _FILE_I_next(const FILE* __f) { return (char*) __f->_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
132 |
inline char* _FILE_I_end(const FILE* __f) { return (char *) __f->_ptr + __f->_rcount; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
133 |
inline ptrdiff_t _FILE_I_avail(const FILE* __f) { return __f->_rcount; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
134 |
inline char& _FILE_I_preincr(FILE* __f) { --__f->_rcount; return *(char*) (++__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
135 |
inline char& _FILE_I_postincr(FILE* __f) { --__f->_rcount; return *(char*) (__f->_ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
136 |
inline char& _FILE_I_predecr(FILE* __f) { ++__f->_rcount; return *(char*) (--__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
137 |
inline char& _FILE_I_postdecr(FILE* __f) { ++__f->_rcount; return *(char*) (__f->_ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
138 |
inline void _FILE_I_bump(FILE* __f, int __n) { __f->_ptr += __n; __f->_rcount -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
139 |
inline void _FILE_I_set(FILE* __f, char* __begin, char* __next, char* __end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
140 |
__f->_buffer = __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
141 |
__f->_ptr = __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
142 |
__f->_rcount = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
143 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
144 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
145 |
inline char* _FILE_O_begin(const FILE* __f) { return (char*) __f->_buffer; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
146 |
inline char* _FILE_O_next(const FILE* __f) { return (char*) __f->_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
147 |
inline char* _FILE_O_end(const FILE* __f) { return (char*) __f->_ptr + __f->_wcount; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
148 |
inline ptrdiff_t _FILE_O_avail(const FILE* __f) { return __f->_wcount; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
149 |
inline char& _FILE_O_preincr(FILE* __f) { --__f->_wcount; return *(char*) (++__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
150 |
inline char& _FILE_O_postincr(FILE* __f) { --__f->_wcount; return *(char*) (__f->_ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
151 |
inline char& _FILE_O_predecr(FILE* __f) { ++__f->_wcount; return *(char*) (--__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
152 |
inline char& _FILE_O_postdecr(FILE* __f) { ++__f->_wcount; return *(char*) (__f->_ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
153 |
inline void _FILE_O_bump(FILE* __f, int __n) { __f->_ptr += __n; __f->_wcount -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
154 |
inline void _FILE_O_set(FILE* __f, char* __begin, char* __next, char* __end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
155 |
__f->_buffer = __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
156 |
__f->_ptr = __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
157 |
__f->_wcount = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
158 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
159 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
160 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
161 |
# undef _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
162 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
163 |
# elif defined(_STLP_SCO_OPENSERVER) || defined(__NCR_SVR) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
164 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
165 |
typedef unsigned char* _File_ptr_type; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
166 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
167 |
inline int _FILE_fd(const FILE *__f) { return __f->__file; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
168 |
inline char* _FILE_I_begin(const FILE *__f) { return (char*) __f->__base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
169 |
inline char* _FILE_I_next(const FILE *__f) { return (char*) __f->__ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
170 |
inline char* _FILE_I_end(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
171 |
{ return (char*) __f->__ptr + __f->__cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
172 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
173 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->__cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
174 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
175 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
176 |
{ --__f->__cnt; return *(char*) (++__f->__ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
177 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
178 |
{ --__f->__cnt; return *(char*) (__f->__ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
179 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
180 |
{ ++__f->__cnt; return *(char*) (--__f->__ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
181 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
182 |
{ ++__f->__cnt; return *(char*) (__f->__ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
183 |
inline void _FILE_I_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
184 |
{ __f->__ptr += __n; __f->__cnt -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
185 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
186 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* __end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
187 |
__f->__base = (_File_ptr_type) __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
188 |
__f->__ptr = (_File_ptr_type) __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
189 |
__f->__cnt = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
190 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
191 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
192 |
# define _STLP_FILE_I_O_IDENTICAL 1 |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
193 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
194 |
# elif defined(__sun) && defined( _LP64) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
195 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
196 |
typedef long _File_ptr_type; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
197 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
198 |
inline int _FILE_fd(const FILE *__f) { return (int) __f->__pad[2]; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
199 |
inline char* _FILE_I_begin(const FILE *__f) { return (char*) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
200 |
__f->__pad[1]; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
201 |
inline char* _FILE_I_next(const FILE *__f) { return (char*) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
202 |
__f->__pad[0]; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
203 |
inline char* _FILE_I_end(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
204 |
{ return (char*) __f->__pad[0] + __f->__pad[3]; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
205 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
206 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->__pad[3]; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
207 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
208 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
209 |
{ --__f->__pad[3]; return *(char*) (++__f->__pad[0]); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
210 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
211 |
{ --__f->__pad[3]; return *(char*) (__f->__pad[0]++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
212 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
213 |
{ ++__f->__pad[3]; return *(char*) (--__f->__pad[0]); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
214 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
215 |
{ ++__f->__pad[3]; return *(char*) (__f->__pad[0]--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
216 |
inline void _FILE_I_bump(FILE *__f, long __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
217 |
{ __f->__pad[0] += __n; __f->__pad[3] -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
218 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
219 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
220 |
__end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
221 |
__f->__pad[1] = (_File_ptr_type) __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
222 |
__f->__pad[0] = (_File_ptr_type) __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
223 |
__f->__pad[3] = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
224 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
225 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
226 |
# define _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
227 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
228 |
#elif defined (__CYGWIN__) || defined(__FreeBSD__) || defined(__NetBSD__) \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
229 |
|| defined(__amigaos__) || ( defined(__GNUC__) && defined(__APPLE__) ) || defined (_STLP_VXWORKS_TORNADO) \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
230 |
|| defined (__SYMBIAN32__) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
231 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
232 |
inline int _FILE_fd(const FILE *__f) { return __f->_file; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
233 |
inline char* _FILE_I_begin(const FILE *__f) { return (char*) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
234 |
__f->_bf._base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
235 |
inline char* _FILE_I_next(const FILE *__f) { return (char*) __f->_p; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
236 |
inline char* _FILE_I_end(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
237 |
{ return (char*) __f->_p + __f->_r; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
238 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
239 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->_r; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
240 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
241 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
242 |
{ --__f->_r; --__f->_bf._size; return *(char*) (++__f->_p); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
243 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
244 |
{ --__f->_r; --__f->_bf._size; return *(char*) (__f->_p++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
245 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
246 |
{ ++__f->_r; ++ __f->_bf._size; return *(char*) (--__f->_p); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
247 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
248 |
{ ++__f->_r; ++__f->_bf._size; return *(char*) (__f->_p--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
249 |
inline void _FILE_I_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
250 |
{ __f->_p += __n; __f->_bf._size+=__n; __f->_r -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
251 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
252 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
253 |
__end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
254 |
__f->_bf._base = (unsigned char*) __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
255 |
__f->_p = (unsigned char*) __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
256 |
__f->_r = __f->_bf._size = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
257 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
258 |
inline char* _FILE_O_begin(const FILE *__f) { return (char*) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
259 |
__f->_bf._base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
260 |
inline char* _FILE_O_next(const FILE *__f) { return (char*) __f->_p; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
261 |
inline char* _FILE_O_end(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
262 |
{ return (char*) __f->_p + __f->_w; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
263 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
264 |
inline ptrdiff_t _FILE_O_avail(const FILE *__f) { return __f->_w; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
265 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
266 |
inline char& _FILE_O_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
267 |
{ --__f->_w; --__f->_bf._size; return *(char*) (++__f->_p); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
268 |
inline char& _FILE_O_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
269 |
{ --__f->_w; --__f->_bf._size; return *(char*) (__f->_p++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
270 |
inline char& _FILE_O_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
271 |
{ ++__f->_w; ++__f->_bf._size; return *(char*) (--__f->_p); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
272 |
inline char& _FILE_O_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
273 |
{ ++__f->_w; ++__f->_bf._size; return *(char*) (__f->_p--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
274 |
inline void _FILE_O_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
275 |
{ __f->_p += __n; __f->_bf._size+=__n; __f->_w -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
276 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
277 |
inline void _FILE_O_set(FILE *__f, char* __begin, char* __next, char* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
278 |
__end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
279 |
__f->_bf._base = (unsigned char*) __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
280 |
__f->_p = (unsigned char*) __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
281 |
__f->_w = __f->_bf._size = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
282 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
283 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
284 |
# undef _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
285 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
286 |
#elif defined(_STLP_USE_GLIBC) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
287 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
288 |
inline int _FILE_fd(const FILE *__f) { return __f->_fileno; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
289 |
inline char* _FILE_I_begin(const FILE *__f) { return __f->_IO_read_base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
290 |
inline char* _FILE_I_next(const FILE *__f) { return __f->_IO_read_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
291 |
inline char* _FILE_I_end(const FILE *__f) { return __f->_IO_read_end; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
292 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
293 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
294 |
{ return __f->_IO_read_end - __f->_IO_read_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
295 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
296 |
inline char& _FILE_I_preincr(FILE *__f) { return *++__f->_IO_read_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
297 |
inline char& _FILE_I_postincr(FILE *__f) { return *__f->_IO_read_ptr++; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
298 |
inline char& _FILE_I_predecr(FILE *__f) { return *--__f->_IO_read_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
299 |
inline char& _FILE_I_postdecr(FILE *__f) { return *__f->_IO_read_ptr--; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
300 |
inline void _FILE_I_bump(FILE *__f, int __n) { __f->_IO_read_ptr += __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
301 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
302 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* __end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
303 |
__f->_IO_read_base = __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
304 |
__f->_IO_read_ptr = __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
305 |
__f->_IO_read_end = __end; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
306 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
307 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
308 |
inline char* _FILE_O_begin(const FILE *__f) { return __f->_IO_write_base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
309 |
inline char* _FILE_O_next(const FILE *__f) { return __f->_IO_write_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
310 |
inline char* _FILE_O_end(const FILE *__f) { return __f->_IO_write_end; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
311 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
312 |
inline ptrdiff_t _FILE_O_avail(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
313 |
{ return __f->_IO_write_end - __f->_IO_write_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
314 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
315 |
inline char& _FILE_O_preincr(FILE *__f) { return *++__f->_IO_write_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
316 |
inline char& _FILE_O_postincr(FILE *__f) { return *__f->_IO_write_ptr++; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
317 |
inline char& _FILE_O_predecr(FILE *__f) { return *--__f->_IO_write_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
318 |
inline char& _FILE_O_postdecr(FILE *__f) { return *__f->_IO_write_ptr--; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
319 |
inline void _FILE_O_bump(FILE *__f, int __n) { __f->_IO_write_ptr += __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
320 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
321 |
inline void _FILE_O_set(FILE *__f, char* __begin, char* __next, char* __end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
322 |
__f->_IO_write_base = __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
323 |
__f->_IO_write_ptr = __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
324 |
__f->_IO_write_end = __end; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
325 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
326 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
327 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
328 |
#elif defined(__hpux) /* && defined(__hppa) && defined(__HP_aCC)) */ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
329 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
330 |
#ifndef _INCLUDE_HPUX_SOURCE |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
331 |
extern "C" unsigned char *__bufendtab[]; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
332 |
# undef _bufend |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
333 |
# define _bufend(__p) \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
334 |
(*(((__p)->__flag & _IOEXT) ? &(((_FILEX *)(__p))->__bufendp) \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
335 |
: &(__bufendtab[(__p) - __iob]))) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
336 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
337 |
# define _bufsiz(__p) (_bufend(__p) - (__p)->__base) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
338 |
#endif /* _INCLUDE_HPUX_SOURCE */ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
339 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
340 |
#if defined(_STLP_HPACC_BROKEN_BUFEND) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
341 |
# undef _bufend |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
342 |
# define _bufend(__p) \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
343 |
(*(((__p)->__flag & _IOEXT) ? &((__REINTERPRET_CAST(_FILEX*,(__p)))->__bufendp) \ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
344 |
: &(__bufendtab[__REINTERPRET_CAST(FILE*,(__p)) - __iob]))) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
345 |
#endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
346 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
347 |
inline int _FILE_fd(const FILE *__f) { return fileno(__CONST_CAST(FILE *,__f)); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
348 |
inline char* _FILE_I_begin(const FILE *__f) { return (__REINTERPRET_CAST(char*, __f->__base)); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
349 |
inline char* _FILE_I_next(const FILE *__f) { return (__REINTERPRET_CAST(char*, __f->__ptr)); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
350 |
inline char* _FILE_I_end(const FILE *__f) { return (__REINTERPRET_CAST(char*, __f->__ptr +__f->__cnt)); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
351 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
352 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->__cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
353 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
354 |
inline char& _FILE_I_preincr(FILE *__f) { --__f->__cnt; return *__REINTERPRET_CAST(char*, ++__f->__ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
355 |
inline char& _FILE_I_postincr(FILE *__f) { --__f->__cnt; return *__REINTERPRET_CAST(char*, __f->__ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
356 |
inline char& _FILE_I_predecr(FILE *__f) { ++__f->__cnt; return *__REINTERPRET_CAST(char*,--__f->__ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
357 |
inline char& _FILE_I_postdecr(FILE *__f) { ++__f->__cnt; return *__REINTERPRET_CAST(char*,__f->__ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
358 |
inline void _FILE_I_bump(FILE *__f, int __n) { __f->__cnt -= __n; __f->__ptr += __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
359 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
360 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* __end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
361 |
# if defined(__hpux) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
362 |
if( (unsigned long) (__f - &__iob[0]) > _NFILE) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
363 |
__f->__flag |= _IOEXT; // used by stdio's _bufend macro and goodness knows what else... |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
364 |
# endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
365 |
__f->__cnt = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
366 |
__f->__base = __REINTERPRET_CAST(unsigned char*, __begin); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
367 |
__f->__ptr = __REINTERPRET_CAST(unsigned char*, __next); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
368 |
_bufend(__f) = __REINTERPRET_CAST(unsigned char*, __end); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
369 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
370 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
371 |
// For HPUX stdio, input and output FILE manipulation is identical. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
372 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
373 |
# define _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
374 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
375 |
#elif defined (__BORLANDC__) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
376 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
377 |
typedef unsigned char* _File_ptr_type; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
378 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
379 |
inline int _FILE_fd(const FILE *__f) { return __f->fd; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
380 |
inline char* _FILE_I_begin(const FILE *__f) { return (char*) __f->buffer; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
381 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
382 |
inline char* _FILE_I_next(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
383 |
{ return (char*)__f->curp; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
384 |
inline char* _FILE_I_end(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
385 |
{ return (char*) __f->curp + __f->level; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
386 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
387 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->level; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
388 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
389 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
390 |
{ --__f->level; return *(char*) (++__f->curp); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
391 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
392 |
{ --__f->level; return *(char*) (__f->curp++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
393 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
394 |
{ ++__f->level; return *(char*) (--__f->curp); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
395 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
396 |
{ ++__f->level; return *(char*) (__f->curp--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
397 |
inline void _FILE_I_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
398 |
{ __f->curp += __n; __f->level -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
399 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
400 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
401 |
__end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
402 |
__f->buffer = (_File_ptr_type) __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
403 |
__f->curp = (_File_ptr_type) __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
404 |
__f->level = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
405 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
406 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
407 |
# define _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
408 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
409 |
#elif defined( __MWERKS__ ) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
410 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
411 |
// using MWERKS-specific defines here to detect other OS targets |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
412 |
// dwa: I'm not sure they provide fileno for all OS's, but this should |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
413 |
// work for Win32 and WinCE |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
414 |
# if __dest_os == __mac_os |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
415 |
inline int _FILE_fd(const FILE *__f) { return ::fileno(__CONST_CAST(FILE*, __f)); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
416 |
# else |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
417 |
inline int _FILE_fd(const FILE *__f) { return ::_fileno(__CONST_CAST(FILE*, __f)); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
418 |
# endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
419 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
420 |
// Returns a pointer to the beginning of the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
421 |
inline char* _FILE_I_begin(const FILE *__f) { return __REINTERPRET_CAST(char*, __f->buffer); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
422 |
// Returns the current read/write position within the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
423 |
inline char* _FILE_I_next(const FILE *__f) { return __REINTERPRET_CAST(char*, __f->buffer_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
424 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
425 |
// Returns a pointer immediately past the end of the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
426 |
inline char* _FILE_I_end(const FILE *__f) { return __REINTERPRET_CAST(char*, __f->buffer_ptr + __f->buffer_len); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
427 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
428 |
// Returns the number of characters remaining in the buffer, i.e. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
429 |
// _FILE_[IO]_end(__f) - _FILE_[IO]_next(__f). |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
430 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->buffer_len; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
431 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
432 |
// Increments the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
433 |
// character at the old position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
434 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
435 |
{ --__f->buffer_len; return *(char*) (++__f->buffer_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
436 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
437 |
{ --__f->buffer_len; return *(char*) (__f->buffer_ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
438 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
439 |
{ ++__f->buffer_len; return *(char*) (--__f->buffer_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
440 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
441 |
{ ++__f->buffer_len; return *(char*) (__f->buffer_ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
442 |
inline void _FILE_I_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
443 |
{ __f->buffer_ptr += __n; __f->buffer_len -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
444 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
445 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* __end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
446 |
__f->buffer = __REINTERPRET_CAST(unsigned char*, __begin); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
447 |
__f->buffer_ptr = __REINTERPRET_CAST(unsigned char*, __next); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
448 |
__f->buffer_len = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
449 |
__f->buffer_size = __end - __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
450 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
451 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
452 |
# define _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
453 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
454 |
#elif defined(__DMC__) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
455 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
456 |
inline int _FILE_fd(const FILE *__f) { return __f->_file; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
457 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
458 |
// Returns a pointer to the beginning of the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
459 |
inline char* _FILE_I_begin(const FILE *__f) { return __f->_base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
460 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
461 |
// Returns the current read/write position within the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
462 |
inline char* _FILE_I_next(const FILE *__f) { return __f->_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
463 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
464 |
// Returns a pointer immediately past the end of the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
465 |
inline char* _FILE_I_end(const FILE *__f) { return __f->_ptr + __f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
466 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
467 |
// Returns the number of characters remaining in the buffer, i.e. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
468 |
// _FILE_[IO]_end(__f) - _FILE_[IO]_next(__f). |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
469 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
470 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
471 |
// Increments the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
472 |
// character at the NEW position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
473 |
inline char& _FILE_I_preincr(FILE *__f) { --__f->_cnt; return *(++__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
474 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
475 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
476 |
// Increments the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
477 |
// character at the old position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
478 |
inline char& _FILE_I_postincr(FILE *__f) { --__f->_cnt; return *(__f->_ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
479 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
480 |
// Decrements the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
481 |
// character at the NEW position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
482 |
inline char& _FILE_I_predecr(FILE *__f) { ++__f->_cnt; return *(--__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
483 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
484 |
// Decrements the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
485 |
// character at the old position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
486 |
inline char& _FILE_I_postdecr(FILE *__f) { ++__f->_cnt; return *(__f->_ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
487 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
488 |
// Increments the current read/write position by __n. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
489 |
inline void _FILE_I_bump(FILE *__f, int __n) { __f->_cnt -= __n; __f->_ptr += __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
490 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
491 |
// Sets the beginning of the bufer to __begin, the current read/write |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
492 |
// position to __next, and the buffer's past-the-end pointer to __end. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
493 |
// If any of those pointers is null, then all of them must be null. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
494 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* __end) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
495 |
{ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
496 |
__f->_base = __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
497 |
__f->_ptr = __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
498 |
__f->_cnt = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
499 |
__f->_bufsiz = __end - __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
500 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
501 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
502 |
# define _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
503 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
504 |
#elif defined(__MRC__) || defined(__SC__) //*TY 02/24/2000 - added support for MPW |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
505 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
506 |
inline int _FILE_fd(const FILE *__f) { return __f->_file; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
507 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
508 |
// Returns a pointer to the beginning of the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
509 |
inline char* _FILE_I_begin(const FILE *__f) { return (char*) __f->_base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
510 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
511 |
// Returns the current read/write position within the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
512 |
inline char* _FILE_I_next(const FILE *__f) { return (char*) __f->_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
513 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
514 |
// Returns a pointer immediately past the end of the buffer. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
515 |
inline char* _FILE_I_end(const FILE *__f) { return (char*)__f->_end; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
516 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
517 |
// Returns the number of characters remaining in the buffer, i.e. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
518 |
// _FILE_[IO]_end(__f) - _FILE_[IO]_next(__f). |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
519 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
520 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
521 |
// Increments the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
522 |
// character at the NEW position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
523 |
inline char& _FILE_I_preincr(FILE *__f) { --__f->_cnt; return*(char*) (++__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
524 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
525 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
526 |
// Increments the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
527 |
// character at the old position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
528 |
inline char& _FILE_I_postincr(FILE *__f) { --__f->_cnt; return*(char*) (__f->_ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
529 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
530 |
// Decrements the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
531 |
// character at the NEW position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
532 |
inline char& _FILE_I_predecr(FILE *__f) { ++__f->_cnt; return*(char*) (--__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
533 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
534 |
// Decrements the current read/write position by 1, returning the |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
535 |
// character at the old position. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
536 |
inline char& _FILE_I_postdecr(FILE *__f) { ++__f->_cnt; return*(char*) (__f->_ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
537 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
538 |
// Increments the current read/write position by __n. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
539 |
inline void _FILE_I_bump(FILE *__f, int __n) { __f->_cnt -= __n; __f->_ptr += __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
540 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
541 |
// Sets the beginning of the bufer to __begin, the current read/write |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
542 |
// position to __next, and the buffer's past-the-end pointer to __end. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
543 |
// If any of those pointers is null, then all of them must be null. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
544 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* __end) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
545 |
{ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
546 |
__f->_base = (unsigned char*)__begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
547 |
__f->_ptr = (unsigned char*)__next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
548 |
__f->_end = (unsigned char*)__end; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
549 |
__f->_cnt = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
550 |
__f->_size = __end - __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
551 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
552 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
553 |
# define _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
554 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
555 |
#elif defined (__MVS__) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
556 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
557 |
typedef unsigned char* _File_ptr_type; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
558 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
559 |
inline int _FILE_fd(const FILE *__f) { return fileno(__CONST_CAST(FILE |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
560 |
*,__f)); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
561 |
inline char* _FILE_I_begin(const FILE *__f) { return (char*) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
562 |
__f->__fp->__bufPtr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
563 |
inline char* _FILE_I_next(const FILE *__f) { return (char*) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
564 |
__f->__fp->__bufPtr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
565 |
inline char* _FILE_I_end(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
566 |
{ return (char*) __f->__fp->__bufPtr + __f->__fp->__countIn; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
567 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
568 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
569 |
__f->__fp->__countIn; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
570 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
571 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
572 |
{ --__f->__fp->__countIn; return *(char*) (++__f->__fp->__bufPtr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
573 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
574 |
{ --__f->__fp->__countIn; return *(char*) (__f->__fp->__bufPtr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
575 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
576 |
{ ++__f->__fp->__countIn; return *(char*) (--__f->__fp->__bufPtr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
577 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
578 |
{ ++__f->__fp->__countIn; return *(char*) (__f->__fp->__bufPtr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
579 |
inline void _FILE_I_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
580 |
{ __f->__fp->__bufPtr += __n; __f->__fp->__countIn -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
581 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
582 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
583 |
__end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
584 |
// __f->_base = (_File_ptr_type) __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
585 |
if(__f->__fp) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
586 |
__f->__fp->__bufPtr = (_File_ptr_type) __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
587 |
__f->__fp->__countIn = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
588 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
589 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
590 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
591 |
inline char* _FILE_O_begin(const FILE *__f) { return (char*)__f->__fp->__bufPtr;} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
592 |
inline char* _FILE_O_next(const FILE *__f) { return (char*) __f->__fp->__bufPtr;} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
593 |
inline char* _FILE_O_end(const FILE *__f) { return (char*) __f->__fp->__bufPtr + __f->__fp->__countOut; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
594 |
inline ptrdiff_t _FILE_O_avail(const FILE *__f) { return __f->__fp->__countOut; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
595 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
596 |
inline char& _FILE_O_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
597 |
{ --__f->__fp->__countOut; return *(char*) (++__f->__fp->__bufPtr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
598 |
inline char& _FILE_O_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
599 |
{ --__f->__fp->__countOut; return *(char*) (__f->__fp->__bufPtr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
600 |
inline char& _FILE_O_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
601 |
{ ++__f->__fp->__countOut; return *(char*) (--__f->__fp->__bufPtr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
602 |
inline char& _FILE_O_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
603 |
{ ++__f->__fp->__countOut; return *(char*) (__f->__fp->__bufPtr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
604 |
inline void _FILE_O_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
605 |
{ __f->__fp->__bufPtr += __n; __f->__fp->__countOut -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
606 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
607 |
inline void _FILE_O_set(FILE *__f, char* __begin, char* __next, char* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
608 |
__end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
609 |
// __f->_base = (_File_ptr_type) __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
610 |
if(__f->__fp) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
611 |
__f->__fp->__bufPtr = (_File_ptr_type) __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
612 |
__f->__fp->__countOut = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
613 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
614 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
615 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
616 |
#elif defined(__QNXNTO__) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
617 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
618 |
inline int _FILE_fd(const FILE *__f) { return __f->_handle; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
619 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
620 |
inline char* _FILE_I_begin(const FILE *__f) { return |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
621 |
(char*) __f->_base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
622 |
inline char* _FILE_I_next(const FILE *__f) { return |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
623 |
(char*) __f->_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
624 |
inline char* _FILE_I_end(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
625 |
{ return (char*) __f->_ptr + __f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
626 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
627 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
628 |
__f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
629 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
630 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
631 |
{ --__f->_cnt; return *(char*) (++__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
632 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
633 |
{ --__f->_cnt; return *(char*) (__f->_ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
634 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
635 |
{ ++__f->_cnt; return *(char*) (--__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
636 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
637 |
{ ++__f->_cnt; return *(char*) (__f->_ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
638 |
inline void _FILE_I_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
639 |
{ __f->_ptr += __n; __f->_cnt -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
640 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
641 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
642 |
__next, char* |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
643 |
__end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
644 |
__f->_base = (unsigned char*) __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
645 |
__f->_ptr = (unsigned char*) __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
646 |
__f->_cnt = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
647 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
648 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
649 |
# define _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
650 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
651 |
#elif defined(__WATCOMC__) // Nikolaev |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
652 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
653 |
inline int _FILE_fd (const FILE *__f) { return __f->_handle;} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
654 |
inline char* _FILE_I_begin (const FILE *__f) { return __REINTERPRET_CAST(char*, __f->_link); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
655 |
inline char* _FILE_I_next (const FILE *__f) { return __REINTERPRET_CAST(char*, __f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
656 |
inline char* _FILE_I_end (const FILE *__f) { return __REINTERPRET_CAST(char*, __f->_ptr + __f->_cnt); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
657 |
inline ptrdiff_t _FILE_I_avail (const FILE *__f) { return __f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
658 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
659 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
660 |
{ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
661 |
--__f->_cnt; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
662 |
return *__REINTERPRET_CAST(char*, ++__f->_ptr); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
663 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
664 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
665 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
666 |
{ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
667 |
--__f->_cnt; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
668 |
return *__REINTERPRET_CAST(char*, __f->_ptr++); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
669 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
670 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
671 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
672 |
{ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
673 |
++__f->_cnt; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
674 |
return *__REINTERPRET_CAST(char*, --__f->_ptr); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
675 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
676 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
677 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
678 |
{ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
679 |
++__f->_cnt; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
680 |
return *__REINTERPRET_CAST(char*, __f->_ptr--); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
681 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
682 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
683 |
inline void _FILE_I_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
684 |
{ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
685 |
__f->_ptr += __n; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
686 |
__f->_cnt -= __n; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
687 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
688 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
689 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* __end) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
690 |
{ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
691 |
__f->_link = __REINTERPRET_CAST(__stream_link*, __begin); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
692 |
__f->_ptr = __REINTERPRET_CAST(unsigned char*, __next); |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
693 |
__f->_cnt = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
694 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
695 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
696 |
# define _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
697 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
698 |
#elif defined (__Lynx__) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
699 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
700 |
// the prototypes are taken from LynxOS patch for STLport 4.0 |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
701 |
inline int _FILE_fd(const FILE *__f) { return __f->_fd; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
702 |
inline char* _FILE_I_begin(const FILE *__f) { return (char*) __f->_base; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
703 |
inline char* _FILE_I_next(const FILE *__f) { return (char*) __f->_ptr; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
704 |
inline char* _FILE_I_end(const FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
705 |
{ return (char*) __f->_ptr + __f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
706 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
707 |
inline ptrdiff_t _FILE_I_avail(const FILE *__f) { return __f->_cnt; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
708 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
709 |
inline char& _FILE_I_preincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
710 |
{ --__f->_cnt; return *(char*) (++__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
711 |
inline char& _FILE_I_postincr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
712 |
{ --__f->_cnt; return *(char*) (__f->_ptr++); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
713 |
inline char& _FILE_I_predecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
714 |
{ ++__f->_cnt; return *(char*) (--__f->_ptr); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
715 |
inline char& _FILE_I_postdecr(FILE *__f) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
716 |
{ ++__f->_cnt; return *(char*) (__f->_ptr--); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
717 |
inline void _FILE_I_bump(FILE *__f, int __n) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
718 |
{ __f->_ptr += __n; __f->_cnt -= __n; } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
719 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
720 |
inline void _FILE_I_set(FILE *__f, char* __begin, char* __next, char* __end) { |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
721 |
__f->_base = __begin; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
722 |
__f->_ptr = __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
723 |
__f->_cnt = __end - __next; |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
724 |
} |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
725 |
# define _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
726 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
727 |
#else /* A C library that we don't have an implementation for. */ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
728 |
#ifndef __SYMBIAN32__ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
729 |
# error The C++ I/O library is not configured for this compiler |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
730 |
#else |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
731 |
#pragma message "The C++ I/O library is not configured for this compiler" |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
732 |
#endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
733 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
734 |
#endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
735 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
736 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
737 |
// For most stdio's , input and output FILE manipulation is identical. |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
738 |
# ifdef _STLP_FILE_I_O_IDENTICAL |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
739 |
inline char* _FILE_O_begin(const FILE *__f) { return _FILE_I_begin(__f); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
740 |
inline char* _FILE_O_next(const FILE *__f) { return _FILE_I_next(__f); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
741 |
inline char* _FILE_O_end(const FILE *__f) { return _FILE_I_end(__f); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
742 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
743 |
inline ptrdiff_t _FILE_O_avail(const FILE *__f) { return _FILE_I_avail(__f); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
744 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
745 |
inline char& _FILE_O_preincr(FILE *__f) { return _FILE_I_preincr(__f); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
746 |
inline char& _FILE_O_postincr(FILE *__f) { return _FILE_I_postincr(__f); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
747 |
inline char& _FILE_O_predecr(FILE *__f) { return _FILE_I_predecr(__f); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
748 |
inline char& _FILE_O_postdecr(FILE *__f) { return _FILE_I_postdecr(__f); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
749 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
750 |
inline void _FILE_O_bump(FILE *__f, int __n) { _FILE_I_bump(__f, __n); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
751 |
inline void _FILE_O_set(FILE *__f, char* __begin, char* __next, char* __end) |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
752 |
{ _FILE_I_set(__f, __begin, __next, __end); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
753 |
# endif |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
754 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
755 |
#else |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
756 |
inline int _FILE_fd(const FILE *__f) { return (int)::_fileno(__CONST_CAST(FILE *, __f)); } |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
757 |
#endif /* _STLP_WINCE */ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
758 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
759 |
_STLP_END_NAMESPACE |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
760 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
761 |
#endif /* _STLP_STDIO_FILE_H */ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
762 |
|
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
763 |
// Local Variables: |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
764 |
// mode:C++ |
2fe1408b6811
Final list of Symbian^2 public API header files
William Roberts <williamr@symbian.org>
parents:
0
diff
changeset
|
765 |
// End: |