Changeset 1dec8f3 for libcfa/src/collections/string.hfa
- Timestamp:
- Sep 22, 2025, 2:33:42 PM (5 months ago)
- Branches:
- master
- Children:
- bb5b866
- Parents:
- 7ca6bf1 (diff), 295ed2d1 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)links above to see all the changes relative to each parent. - File:
-
- 1 edited
-
libcfa/src/collections/string.hfa (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/collections/string.hfa
r7ca6bf1 r1dec8f3 10 10 // Created On : Fri Sep 03 11:00:00 2021 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sun Apr 13 21:03:35202513 // Update Count : 28412 // Last Modified On : Sun Sep 14 10:58:28 2025 13 // Update Count : 311 14 14 // 15 15 … … 43 43 void ?{}( string & s, long double _Complex rhs ); 44 44 static inline void ?{}( string & s, int rhs ) { (s){(signed long int) rhs}; } 45 46 // string str( ssize_t rhs );47 // string str( size_t rhs );48 // string str( double rhs );49 // string str( long double rhs );50 // string str( double _Complex rhs );51 // string str( long double _Complex rhs );52 45 53 46 PBOOST string & ?=?( string & s, string c ); … … 68 61 static inline string & strcpy( string & s, const string & c ) { s = c; return s; } 69 62 static inline string & strncpy( string & s, const string & c, size_t n ) { assign( s, c, n ); return s; } 63 char * strncpy( char * dst, string & src, size_t n ); 64 char * ?=?( char *& dst, string & src ); 65 void ?{}( char *& dst, string & src ); 70 66 71 67 // Alternate construction: request shared edits … … 187 183 PBOOST string ?*?( string s, strmul_factor_t factor ); 188 184 string ?*?( const char * s, strmul_factor_t factor ); 189 static inline string ?*?( strmul_factor_t factor, char s ) { return s* factor; }185 static inline string ?*?( strmul_factor_t factor, char c ) { return c * factor; } 190 186 PBOOST static inline string ?*?( strmul_factor_t factor, string s ) { return s * factor; } 191 187 static inline string ?*?( strmul_factor_t factor, const char * s ) { return s * factor; } … … 278 274 279 275 size_t include( const string & s, const charclass & mask ); 280 static inline size_t include( const char * cs, const charclass & mask ) { const string s = cs; return include( s, mask ); } 276 static inline size_t include( const string & s, const char * mask ) { return include( s, (charclass){ mask } ); } 277 static inline size_t include( const string & s, const string & mask ) { return include( s, (charclass){ mask } ); } 278 static inline size_t include( const char * cs, const charclass & mask ) { return include( (string){ cs }, mask ); } 279 static inline size_t include( const char * cs, const char * mask ) { return include( (string){ cs }, (charclass){ mask } ); } 280 static inline size_t include( const char * cs, const string & mask ) { return include( (string){ cs }, (charclass){ mask } ); } 281 281 282 static inline string include( const string & s, const charclass & mask ) { return s( 0, include( s, mask ) ); } 283 static inline string include( const string & s, const char * mask ) { return s( 0, include( s, (charclass){ mask } ) ); } 284 static inline string include( const string & s, const string & mask ) { return s( 0, include( s, (charclass){ mask } ) ); } 282 285 static inline string include( const char * cs, const charclass & mask ) { const string s = cs; return s( 0, include( s, mask ) ); } 286 static inline string include( const char * cs, const char * mask ) { const string s = cs; return s( 0, include( s, (charclass){ mask } ) ); } 287 static inline string include( const char * cs, const string & mask ) { const string s = cs; return s( 0, include( s, (charclass){ mask } ) ); } 283 288 284 289 size_t exclude( const string & s, const charclass & mask ); 285 static inline size_t exclude( const char * cs, const charclass & mask ) { const string s = cs; return exclude( s, mask ); } 290 static inline size_t exclude( const string & s, const char * mask ) { return exclude( s, (charclass){ mask } ); } 291 static inline size_t exclude( const string & s, const string & mask ) { return exclude( s, (charclass){ mask } ); } 292 static inline size_t exclude( const char * cs, const charclass & mask ) { return exclude( (string){ cs }, mask ); } 293 static inline size_t exclude( const char * cs, const string & mask ) { return exclude( (string){ cs }, (charclass){ mask } ); } 294 static inline size_t exclude( const char * cs, const char * mask ) { return exclude( (string){ cs }, (charclass){ mask } ); } 295 286 296 static inline string exclude( const string & s, const charclass & mask ) { return s( 0, exclude( s, mask ) ); } 297 static inline string exclude( const string & s, const char * mask ) { return s( 0, exclude( s, (charclass){ mask } ) ); } 298 static inline string exclude( const string & s, const string & mask ) { return s( 0, exclude( s, (charclass){ mask } ) ); } 287 299 static inline string exclude( const char * cs, const charclass & mask ) { const string s = cs; return s( 0, exclude( s, mask ) ); } 288 289 size_t include( const string & s, int (*f)( int ) ); 290 static inline size_t include( const char * cs, int (*f)( int ) ) { const string S = cs; return include( S, f ); } 291 static inline string include( const string & s, int (*f)( int ) ) { return s( 0, include( s, f ) ); } 292 static inline string include( const char * cs, int (*f)( int ) ) { const string s = cs; return s( 0, include( s, f ) ); } 293 294 size_t exclude( const string & s, int (*f)( int ) ); 295 static inline size_t exclude( const char * cs, int (*f)( int ) ) { const string s = cs; return exclude( s, f ); } 296 static inline string exclude( const string & s, int (*f)( int ) ) { return s( 0, exclude( s, f ) ); } 297 static inline string exclude( const char * cs, int (*f)( int ) ) { const string s = cs; return s( 0, exclude( s, f ) ); } 300 static inline string exclude( const char * cs, const string & mask ) { const string s = cs; return s( 0, exclude( s, (charclass){ mask } ) ); } 301 static inline string exclude( const char * cs, const char * mask ) { const string s = cs; return s( 0, exclude( s, (charclass){ mask } ) ); } 302 303 size_t include( const string & s, int (* f)( int ) ); // for C character-class functions, e.g., isdigit 304 static inline size_t include( const char * cs, int (* f)( int ) ) { return include( (string){ cs }, f ); } 305 static inline string include( const string & s, int (* f)( int ) ) { return s( 0, include( s, f ) ); } 306 static inline string include( const char * cs, int (* f)( int ) ) { const string s = cs; return s( 0, include( s, f ) ); } 307 308 static inline size_t include( const string & s, bool (* f)( char ) ) { return include( s, (int (*)( int ))f ); } 309 static inline size_t include( const char * cs, bool (* f)( char ) ) { return include( (string){ cs }, f ); } 310 static inline string include( const string & s, bool (* f)( char ) ) { return s( 0, include( s, f ) ); } 311 static inline string include( const char * cs, bool (* f)( char ) ) { const string s = cs; return s( 0, include( s, f ) ); } 312 313 size_t exclude( const string & s, int (* f)( int ) ); // for C character-class functions, e.g., isdigit 314 static inline size_t exclude( const char * cs, int (* f)( int ) ) { return exclude( (string){ cs }, f ); } 315 static inline string exclude( const string & s, int (* f)( int ) ) { return s( 0, exclude( s, f ) ); } 316 static inline string exclude( const char * cs, int (* f)( int ) ) { const string s = cs; return s( 0, exclude( s, f ) ); } 317 318 static inline size_t exclude( const string & s, bool (* f)( char ) ) { return exclude( s, (int (*)( int ))f ); } 319 static inline size_t exclude( const char * cs, bool (* f)( char ) ) { return exclude( (string){ cs }, f ); } 320 static inline string exclude( const string & s, bool (* f)( char ) ) { return s( 0, exclude( s, f ) ); } 321 static inline string exclude( const char * cs, bool (* f)( char ) ) { const string s = cs; return s( 0, exclude( s, f ) ); } 298 322 299 323 string replace( const string & s, const string & from, const string & to ); 300 static inline string replace( const char * s, const char * from, const char * to ) { string S = s, From = from, To = to; return replace( S, From, To ); } 301 static inline string replace( const string & s, const char * from, const char * to ) { const string From = from, To = to; return replace( s, From, To ); } 302 static inline string replace( const string & s, const char * from, const string & to ) { const string From = from; return replace( s, From, to ); } 303 static inline string replace( const string & s, string & from, const char * to ) { const string To = to; return replace( s, from, To ); } 304 305 string translate( const string & s, int (*f)( int ) ); 306 static inline string translate( const char * c, int (*f)( int ) ) { const string S = c; return translate( S, f ); } 324 static inline string replace( const char * s, const char * from, const char * to ) { return replace( (string){ s }, (string){ from }, (string){ to } ); } 325 static inline string replace( const string & s, const char * from, const char * to ) { return replace( s, (string){ from }, (string){ to } ); } 326 static inline string replace( const string & s, const char * from, const string & to ) { return replace( s, (string){ from }, to ); } 327 static inline string replace( const string & s, string & from, const char * to ) { return replace( s, from, (string){ to } ); } 328 329 string translate( const string & s, int (* f)( int ) ); // for C character-class functions, e.g., isdigit 330 static inline string translate( const char * cs, int (* f)( int ) ) { return translate( (string){ cs }, f ); } 331 332 static inline string translate( const string & s, bool (* f)( char ) ) { return translate( s, (int (*)( int ))f ); } 333 static inline string translate( const char * cs, bool (* f)( char ) ) { return translate( (string){ cs }, f ); } 307 334 308 335 #ifndef _COMPILING_STRING_CFA_
Note:
See TracChangeset
for help on using the changeset viewer.