Changes in libcfa/src/fstream.cfa [9d362a0:58b6d1b]
- File:
-
- 1 edited
-
libcfa/src/fstream.cfa (modified) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/fstream.cfa
r9d362a0 r58b6d1b 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Dec 24 18:33:38201813 // Update Count : 30412 // Last Modified On : Tue Jun 5 17:02:56 2018 13 // Update Count : 281 14 14 // 15 15 … … 20 20 #include <stdarg.h> // varargs 21 21 #include <string.h> // strlen 22 #include <stdbool.h> // true/false 22 23 #include <float.h> // DBL_DIG, LDBL_DIG 23 24 #include <complex.h> // creal, cimag … … 26 27 #define IO_MSG "I/O error: " 27 28 28 void ?{}( ofstream & os, void * file, bool sepDefault, bool sepOnOff, bool nlOnOff, bool prt, const char * separator, const char * tupleSeparator ) {29 void ?{}( ofstream & os, void * file, _Bool sepDefault, _Bool sepOnOff, const char * separator, const char * tupleSeparator ) { 29 30 os.file = file; 30 31 os.sepDefault = sepDefault; 31 32 os.sepOnOff = sepOnOff; 32 os.nlOnOff = nlOnOff;33 os.prt = prt;34 33 sepSet( os, separator ); 35 34 sepSetCur( os, sepGet( os ) ); … … 38 37 39 38 // private 40 bool sepPrt( ofstream & os ) { setNL( os, false ); return os.sepOnOff; }39 _Bool sepPrt( ofstream & os ) { setNL( os, false ); return os.sepOnOff; } 41 40 void sepReset( ofstream & os ) { os.sepOnOff = os.sepDefault; } 42 void sepReset( ofstream & os, bool reset ) { os.sepDefault = reset; os.sepOnOff = os.sepDefault; }41 void sepReset( ofstream & os, _Bool reset ) { os.sepDefault = reset; os.sepOnOff = os.sepDefault; } 43 42 const char * sepGetCur( ofstream & os ) { return os.sepCur; } 44 43 void sepSetCur( ofstream & os, const char * sepCur ) { os.sepCur = sepCur; } 45 bool getNL( ofstream & os ) { return os.sawNL; } 46 void setNL( ofstream & os, bool state ) { os.sawNL = state; } 47 bool getANL( ofstream & os ) { return os.nlOnOff; } 48 bool getPrt( ofstream & os ) { return os.prt; } 49 void setPrt( ofstream & os, bool state ) { os.prt = state; } 44 _Bool getNL( ofstream & os ) { return os.sawNL; } 45 void setNL( ofstream & os, _Bool state ) { os.sawNL = state; } 50 46 51 47 // public … … 62 58 void sepOff( ofstream & os ) { os.sepOnOff = false; } 63 59 64 bool sepDisable( ofstream & os ) {65 bool temp = os.sepDefault;60 _Bool sepDisable( ofstream & os ) { 61 _Bool temp = os.sepDefault; 66 62 os.sepDefault = false; 67 63 sepReset( os ); … … 69 65 } // sepDisable 70 66 71 bool sepEnable( ofstream & os ) {72 bool temp = os.sepDefault;67 _Bool sepEnable( ofstream & os ) { 68 _Bool temp = os.sepDefault; 73 69 os.sepDefault = true; 74 70 if ( os.sepOnOff ) sepReset( os ); // start of line ? 75 71 return temp; 76 72 } // sepEnable 77 78 void nlOn( ofstream & os ) { os.nlOnOff = true; }79 void nlOff( ofstream & os ) { os.nlOnOff = false; }80 73 81 74 const char * sepGet( ofstream & os ) { return os.separator; } … … 103 96 void open( ofstream & os, const char * name, const char * mode ) { 104 97 FILE *file = fopen( name, mode ); 105 #ifdef __CFA_DEBUG__ 106 if ( file == 0 ) { 107 fprintf( stderr, IO_MSG "open output file \"%s\", ", name ); 108 perror( 0 ); 109 exit( EXIT_FAILURE ); 110 } // if 111 #endif // __CFA_DEBUG__ 112 (os){ file, true, false, true, false, " ", ", " }; 98 // if ( file == 0 ) { // do not change unless successful 99 // fprintf( stderr, IO_MSG "open output file \"%s\", ", name ); 100 // perror( 0 ); 101 // exit( EXIT_FAILURE ); 102 // } // if 103 (os){ file, true, false, " ", ", " }; 113 104 } // open 114 105 … … 150 141 va_end( args ); 151 142 152 setPrt( os, true ); // called in output cascade153 143 sepReset( os ); // reset separator 154 144 return len; 155 145 } // fmt 156 146 157 static ofstream soutFile = { (FILE *)(&_IO_2_1_stdout_), true, false, true, false," ", ", " };147 static ofstream soutFile = { (FILE *)(&_IO_2_1_stdout_), true, false, " ", ", " }; 158 148 ofstream & sout = soutFile; 159 static ofstream serrFile = { (FILE *)(&_IO_2_1_stderr_), true, false, true, false," ", ", " };149 static ofstream serrFile = { (FILE *)(&_IO_2_1_stderr_), true, false, " ", ", " }; 160 150 ofstream & serr = serrFile; 161 151 … … 188 178 void open( ifstream & is, const char * name, const char * mode ) { 189 179 FILE *file = fopen( name, mode ); 190 #ifdef __CFA_DEBUG__ 191 if ( file == 0 ) { 192 fprintf( stderr, IO_MSG "open input file \"%s\", ", name ); 193 perror( 0 ); 194 exit( EXIT_FAILURE ); 195 } // if 196 #endif // __CFA_DEBUG__ 180 // if ( file == 0 ) { // do not change unless successful 181 // fprintf( stderr, IO_MSG "open input file \"%s\", ", name ); 182 // perror( 0 ); 183 // exit( EXIT_FAILURE ); 184 // } // if 197 185 is.file = file; 198 186 } // open
Note:
See TracChangeset
for help on using the changeset viewer.