Changes in libcfa/src/iostream.hfa [f842032:e0dc038]
- File:
-
- 1 edited
-
libcfa/src/iostream.hfa (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/iostream.hfa
rf842032 re0dc038 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Oct 18 21:21:20202313 // Update Count : 5 8312 // Last Modified On : Mon Oct 16 21:12:01 2023 13 // Update Count : 573 14 14 // 15 15 … … 306 306 // *********************************** istream *********************************** 307 307 308 #define ISTYPE_VOID( T ) void ?|?( istype &, T ) 309 #define ISTYPE_VOID_IMPL( T ) \ 310 void ?|?( istype & is, T t ) { \ 311 (istype &)(is | t); ends( is ); \ 312 } // ?|? 313 308 314 forall( istype & ) 309 315 trait basic_istream { … … 314 320 void nlOn( istype & ); // read newline 315 321 void nlOff( istype & ); // scan newline 322 void ends( istype & os ); // end of output statement 316 323 int fmt( istype &, const char format[], ... ) __attribute__(( format(scanf, 2, 3) )); 317 324 istype & ungetc( istype &, char ); … … 336 343 forall( istype & | basic_istream( istype ) ) { 337 344 istype & ?|?( istype &, bool & ); 345 ISTYPE_VOID( bool & ); 338 346 339 347 istype & ?|?( istype &, char & ); 348 ISTYPE_VOID( char & ); 340 349 istype & ?|?( istype &, signed char & ); 350 ISTYPE_VOID( signed char & ); 341 351 istype & ?|?( istype &, unsigned char & ); 352 ISTYPE_VOID( unsigned char & ); 342 353 343 354 istype & ?|?( istype &, short int & ); 355 ISTYPE_VOID( short int & ); 344 356 istype & ?|?( istype &, unsigned short int & ); 357 ISTYPE_VOID( unsigned short int & ); 345 358 istype & ?|?( istype &, int & ); 359 ISTYPE_VOID( int & ); 346 360 istype & ?|?( istype &, unsigned int & ); 361 ISTYPE_VOID( unsigned int & ); 347 362 istype & ?|?( istype &, long int & ); 363 ISTYPE_VOID( long int & ); 348 364 istype & ?|?( istype &, unsigned long int & ); 365 ISTYPE_VOID( unsigned long int & ); 349 366 istype & ?|?( istype &, long long int & ); 367 ISTYPE_VOID( long long int & ); 350 368 istype & ?|?( istype &, unsigned long long int & ); 369 ISTYPE_VOID( unsigned long long int & ); 351 370 #if defined( __SIZEOF_INT128__ ) 352 371 istype & ?|?( istype &, int128 & ); 372 ISTYPE_VOID( int128 & ); 353 373 istype & ?|?( istype &, unsigned int128 & ); 374 ISTYPE_VOID( unsigned int128 & ); 354 375 #endif // __SIZEOF_INT128__ 355 376 356 377 istype & ?|?( istype &, float & ); 378 ISTYPE_VOID( float & ); 357 379 istype & ?|?( istype &, double & ); 380 ISTYPE_VOID( double & ); 358 381 istype & ?|?( istype &, long double & ); 382 ISTYPE_VOID( long double & ); 359 383 360 384 istype & ?|?( istype &, float _Complex & ); 385 ISTYPE_VOID( float _Complex & ); 361 386 istype & ?|?( istype &, double _Complex & ); 387 ISTYPE_VOID( double _Complex & ); 362 388 istype & ?|?( istype &, long double _Complex & ); 389 ISTYPE_VOID( long double _Complex & ); 363 390 364 391 istype & ?|?( istype &, const char [] ); 392 ISTYPE_VOID( const char [] ); 365 393 366 394 // manipulators 367 395 istype & ?|?( istype &, istype & (*)( istype & ) ); 396 ISTYPE_VOID( istype & (*)( istype & ) ); 368 397 istype & nl( istype & is ); 369 398 istype & nlOn( istype & ); … … 390 419 forall( istype & | basic_istream( istype ) ) { 391 420 istype & ?|?( istype & is, _Istream_Cskip f ); 421 ISTYPE_VOID( _Istream_Cskip ); 392 422 } 393 423 … … 431 461 forall( istype & | basic_istream( istype ) ) { 432 462 istype & ?|?( istype & is, _Istream_Cstr f ); 463 ISTYPE_VOID( _Istream_Cstr ); 433 464 } 434 465 … … 443 474 forall( istype & | basic_istream( istype ) ) { 444 475 istype & ?|?( istype & is, _Istream_Char f ); 476 ISTYPE_VOID( _Istream_Char ); 445 477 } 446 478 … … 461 493 forall( istype & | basic_istream( istype ) ) { \ 462 494 istype & ?|?( istype & is, _Istream_Manip(T) f ); \ 495 ISTYPE_VOID( _Istream_Manip(T) ); \ 463 496 } // ?|? 464 497
Note:
See TracChangeset
for help on using the changeset viewer.