Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/libcfa/iostream

    re1780a2 r53a6c2a  
    1010// Created On       : Wed May 27 17:56:53 2015
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Wed Aug  9 16:42:47 2017
    13 // Update Count     : 131
     12// Last Modified On : Fri Jul  7 08:35:59 2017
     13// Update Count     : 118
    1414//
    1515
     
    4646}; // ostream
    4747
    48 // trait writeable( otype T ) {
    49 //      forall( dtype ostype | ostream( ostype ) ) ostype * ?|?( ostype *, T );
    50 // }; // writeable
    51 
    52 trait writeable( otype T, dtype ostype | ostream( ostype ) ) {
    53         ostype * ?|?( ostype *, T );
     48trait writeable( otype T ) {
     49        forall( dtype ostype | ostream( ostype ) ) ostype * ?|?( ostype *, T );
    5450}; // writeable
    5551
     
    8177
    8278// tuples
    83 forall( dtype ostype, otype T, ttype Params | writeable( T, ostype ) | { ostype * ?|?( ostype *, Params ); } )
    84 ostype * ?|?( ostype * os, T arg, Params rest );
     79forall( dtype ostype, otype T, ttype Params | ostream( ostype ) | writeable( T ) | { ostype * ?|?( ostype *, Params ); } ) ostype * ?|?( ostype * os, T arg, Params rest );
    8580
    8681// manipulators
     
    9590
    9691// writes the range [begin, end) to the given stream
    97 forall( dtype ostype, otype elt_type | writeable( elt_type, ostype ), otype iterator_type | iterator( iterator_type, elt_type ) )
    98 void write( iterator_type begin, iterator_type end, ostype * os );
     92forall( otype elt_type | writeable( elt_type ), otype iterator_type | iterator( iterator_type, elt_type ), dtype os_type | ostream( os_type ) )
     93void write( iterator_type begin, iterator_type end, os_type *os );
    9994
    100 forall( dtype ostype, otype elt_type | writeable( elt_type, ostype ), otype iterator_type | iterator( iterator_type, elt_type ) )
    101 void write_reverse( iterator_type begin, iterator_type end, ostype * os );
     95forall( otype elt_type | writeable( elt_type ), otype iterator_type | iterator( iterator_type, elt_type ), dtype os_type | ostream( os_type ) )
     96void write_reverse( iterator_type begin, iterator_type end, os_type *os );
    10297
    10398//---------------------------------------
Note: See TracChangeset for help on using the changeset viewer.