Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • libcfa/src/collections/string.hfa

    r1324fde r5ad6f0d  
    1010// Created On       : Fri Sep 03 11:00:00 2021
    1111// Last Modified By : Peter A. Buhr
    12 // Last Modified On : Thu Aug 21 09:07:28 2025
    13 // Update Count     : 308
     12// Last Modified On : Sun Apr 13 21:03:35 2025
     13// Update Count     : 284
    1414//
    1515
     
    278278
    279279size_t include( const string & s, const charclass & mask );
    280 static inline size_t include( const string & s, const char * mask ) { return include( s, (charclass){ mask } ); }
    281 static inline size_t include( const string & s, const string & mask ) { return include( s, (charclass){ mask } ); }
    282 static inline size_t include( const char * cs, const charclass & mask ) { return include( (string){ cs }, mask ); }
    283 static inline size_t include( const char * cs, const char * mask ) { return include( (string){ cs }, (charclass){ mask } ); }
    284 static inline size_t include( const char * cs, const string & mask ) { return include( (string){ cs }, (charclass){ mask } ); }
    285 
     280static inline size_t include( const char * cs, const charclass & mask ) { const string s = cs; return include( s, mask ); }
    286281static inline string include( const string & s, const charclass & mask ) { return s( 0, include( s, mask ) ); }
    287 static inline string include( const string & s, const char * mask ) { return s( 0, include( s, (charclass){ mask } ) ); }
    288 static inline string include( const string & s, const string & mask ) { return s( 0, include( s, (charclass){ mask } ) ); }
    289282static inline string include( const char * cs, const charclass & mask ) { const string s = cs; return s( 0, include( s, mask ) ); }
    290 static inline string include( const char * cs, const char * mask ) { const string s = cs; return s( 0, include( s, (charclass){ mask } ) ); }
    291 static inline string include( const char * cs, const string & mask ) { const string s = cs; return s( 0, include( s, (charclass){ mask } ) ); }
    292283
    293284size_t exclude( const string & s, const charclass & mask );
    294 static inline size_t exclude( const string & s, const char * mask ) { return exclude( s, (charclass){ mask } ); }
    295 static inline size_t exclude( const string & s, const string & mask ) { return exclude( s, (charclass){ mask } ); }
    296 static inline size_t exclude( const char * cs, const charclass & mask ) { return exclude( (string){ cs }, mask ); }
    297 static inline size_t exclude( const char * cs, const string & mask ) { return exclude( (string){ cs }, (charclass){ mask } ); }
    298 static inline size_t exclude( const char * cs, const char * mask ) { return exclude( (string){ cs }, (charclass){ mask } ); }
    299 
     285static inline size_t exclude( const char * cs, const charclass & mask ) { const string s = cs; return exclude( s, mask ); }
    300286static inline string exclude( const string & s, const charclass & mask ) { return s( 0, exclude( s, mask ) ); }
    301 static inline string exclude( const string & s, const char * mask ) { return s( 0, exclude( s, (charclass){ mask } ) ); }
    302 static inline string exclude( const string & s, const string & mask ) { return s( 0, exclude( s, (charclass){ mask } ) ); }
    303287static inline string exclude( const char * cs, const charclass & mask ) { const string s = cs; return s( 0, exclude( s, mask ) ); }
    304 static inline string exclude( const char * cs, const string & mask ) { const string s = cs; return s( 0, exclude( s, (charclass){ mask } ) ); }
    305 static inline string exclude( const char * cs, const char * mask ) { const string s = cs; return s( 0, exclude( s, (charclass){ mask } ) ); }
    306 
    307 size_t include( const string & s, int (* f)( int ) );   // for C character-class functions, e.g., isdigit
    308 static inline size_t include( const char * cs, int (* f)( int ) ) { return include( (string){ cs }, f ); }
    309 static inline string include( const string & s, int (* f)( int ) ) { return s( 0, include( s, f ) ); }
    310 static inline string include( const char * cs, int (* f)( int ) ) { const string s = cs; return s( 0, include( s, f ) ); }
    311 
    312 static inline size_t include( const string & s, bool (* f)( char ) ) { return include( s, (int (*)( int ))f ); }
    313 static inline size_t include( const char * cs, bool (* f)( char ) ) { return include( (string){ cs }, f ); }
    314 static inline string include( const string & s, bool (* f)( char ) ) { return s( 0, include( s, f ) ); }
    315 static inline string include( const char * cs, bool (* f)( char ) ) { const string s = cs; return s( 0, include( s, f ) ); }
    316 
    317 size_t exclude( const string & s, int (* f)( int ) );   // for C character-class functions, e.g., isdigit
    318 static inline size_t exclude( const char * cs, int (* f)( int ) ) { return exclude( (string){ cs }, f ); }
    319 static inline string exclude( const string & s, int (* f)( int ) ) { return s( 0, exclude( s, f ) ); }
    320 static inline string exclude( const char * cs, int (* f)( int ) ) { const string s = cs; return s( 0, exclude( s, f ) ); }
    321 
    322 static inline size_t exclude( const string & s, bool (* f)( char ) ) { return exclude( s, (int (*)( int ))f ); }
    323 static inline size_t exclude( const char * cs, bool (* f)( char ) ) { return exclude( (string){ cs }, f ); }
    324 static inline string exclude( const string & s, bool (* f)( char ) ) { return s( 0, exclude( s, f ) ); }
    325 static inline string exclude( const char * cs, bool (* f)( char ) ) { const string s = cs; return s( 0, exclude( s, f ) ); }
     288
     289size_t include( const string & s, int (*f)( int ) );
     290static inline size_t include( const char * cs, int (*f)( int ) ) { const string S = cs; return include( S, f ); }
     291static inline string include( const string & s, int (*f)( int ) ) { return s( 0, include( s, f ) ); }
     292static inline string include( const char * cs, int (*f)( int ) ) { const string s = cs; return s( 0, include( s, f ) ); }
     293
     294size_t exclude( const string & s, int (*f)( int ) );
     295static inline size_t exclude( const char * cs, int (*f)( int ) ) { const string s = cs; return exclude( s, f ); }
     296static inline string exclude( const string & s, int (*f)( int ) ) { return s( 0, exclude( s, f ) ); }
     297static inline string exclude( const char * cs, int (*f)( int ) ) { const string s = cs; return s( 0, exclude( s, f ) ); }
    326298
    327299string replace( const string & s, const string & from, const string & to );
    328 static inline string replace( const char * s, const char * from, const char * to ) { return replace( (string){ s }, (string){ from }, (string){ to } ); }
    329 static inline string replace( const string & s, const char * from, const char * to ) { return replace( s, (string){ from }, (string){ to } ); }
    330 static inline string replace( const string & s, const char * from, const string & to ) { return replace( s, (string){ from }, to ); }
    331 static inline string replace( const string & s, string & from, const char * to ) { return replace( s, from, (string){ to } ); }
    332 
    333 string translate( const string & s, int (* f)( int ) ); // for C character-class functions, e.g., isdigit
    334 static inline string translate( const char * cs, int (* f)( int ) ) { return translate( (string){ cs }, f ); }
    335 
    336 static inline string translate( const string & s, bool (* f)( char ) ) { return translate( s, (int (*)( int ))f ); }
    337 static inline string translate( const char * cs, bool (* f)( char ) ) { return translate( (string){ cs }, f ); }
     300static inline string replace( const char * s, const char * from, const char * to ) { string S = s, From = from, To = to; return replace( S, From, To ); }
     301static inline string replace( const string & s, const char * from, const char * to ) { const string From = from, To = to; return replace( s, From, To ); }
     302static inline string replace( const string & s, const char * from, const string & to ) { const string From = from; return replace( s, From, to ); }
     303static inline string replace( const string & s, string & from, const char * to ) { const string To = to; return replace( s, from, To ); }
     304
     305string translate( const string & s, int (*f)( int ) );
     306static inline string translate( const char * c, int (*f)( int ) ) { const string S = c; return translate( S, f ); }
    338307
    339308#ifndef _COMPILING_STRING_CFA_
Note: See TracChangeset for help on using the changeset viewer.