Changeset ee70ff5 for libcfa/src/collections/string.cfa
- Timestamp:
- Apr 2, 2025, 11:12:18 PM (9 months ago)
- Branches:
- master
- Children:
- 9aa8dcc
- Parents:
- f8913b7c
- File:
-
- 1 edited
-
libcfa/src/collections/string.cfa (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
libcfa/src/collections/string.cfa
rf8913b7c ree70ff5 10 10 // Created On : Fri Sep 03 11:00:00 2021 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Apr 1 09:17:34202513 // Update Count : 2 8812 // Last Modified On : Wed Apr 2 14:12:35 2025 13 // Update Count : 295 14 14 // 15 15 … … 223 223 224 224 ofstream & ?|?( ofstream & os, _Ostream_Manip(string) f ) { 225 size_t l en = size( f.val );226 char cstr[l en+ 1]; // room for null terminator227 for ( i; l en) cstr[i] = f.val[i]; // copy string228 cstr[l en] = '\0';// terminate225 size_t l = len( f.val ); 226 char cstr[l + 1]; // room for null terminator 227 for ( i; l ) cstr[i] = f.val[i]; // copy string 228 cstr[l] = '\0'; // terminate 229 229 _Ostream_Manip(const char *) cf @= { cstr, f.wd, f.pc, f.base, {f.all} }; 230 230 return os | cf | nonl; … … 254 254 255 255 string ?()( string & s, ssize_t start, ssize_t len ) { 256 if ( start < 0 ) { start += s`len; }256 if ( start < 0 ) { start += len( s ); } 257 257 if ( len < 0 ) { len = -len; start -= len; } 258 if ( start > s`len) return (string){ "" };259 if ( start + len > s`len ) len = s`len- start;258 if ( start > len( s ) ) return (string){ "" }; 259 if ( start + len > len( s ) ) len = len( s ) - start; 260 260 string ret = { *s.inner, start, len }; 261 261 return ret`share; … … 263 263 264 264 string ?()( string & s, ssize_t start ) { 265 if ( start < 0 ) { start += s`len; }266 string ret = { *s.inner, start, size( s ) - start };265 if ( start < 0 ) { start += len( s ); } 266 string ret = { *s.inner, start, len( s ) - start }; 267 267 return ret`share; 268 268 } … … 299 299 // Getter 300 300 301 size_t size( const string & s ) {302 return size( *s.inner );301 size_t len( const string & s ) { 302 return len( *s.inner ); 303 303 } 304 304 … … 362 362 } 363 363 364 string ?+?( const char * s1, string & s2 ) {364 string ?+?( const char * s1, const string & s2 ) { 365 365 string ret = s1; 366 366 ret += s2; … … 371 371 string ret = s; 372 372 ret += c; 373 return ret; 374 } 375 376 string ?+?( char c1, char c2 ) { 377 string ret = c1; 378 ret += c2; 373 379 return ret; 374 380 }
Note:
See TracChangeset
for help on using the changeset viewer.