Ignore:
Timestamp:
Jan 18, 2024, 10:17:21 PM (6 months ago)
Author:
Michael Brooks <mlbrooks@…>
Branches:
master
Children:
f988834
Parents:
906d8fa
Message:

Modify substring interface from start-end to start-len, and add a missing test.

File:
1 edited

Legend:

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

    r906d8fa re8b3717  
    3030
    3131// private (not in header)
    32 static void ?{}( string & s, string_res & src, size_t start, size_t end ) {
    33     (s.inner) { malloc() };
    34     ?{}( *s.inner, src, SHARE_EDITS, start, end );
     32static void ?{}( string & s, string_res & src, size_t start, size_t len ) {
     33    (s.inner) { malloc() };
     34    ?{}( *s.inner, src, SHARE_EDITS, start, len );
    3535}
    3636
     
    161161// Slicing
    162162
    163 string ?()( string & s, size_t start, size_t end ) {
    164     string ret = { *s.inner, start, end };
     163string ?()( string & s, size_t start, size_t len ) {
     164    string ret = { *s.inner, start, len };
    165165    return ret`shareEdits;
    166166}
    167167
    168168string ?()( string & s, size_t start ) {
    169     string ret = { *s.inner, start, size( s ) };
     169    string ret = { *s.inner, start, size( s ) - start };
    170170    return ret`shareEdits;
    171171}
     
    286286
    287287string ?[?](string & s, size_t index) {
    288     string ret = { *s.inner, index, index + 1 };
     288    string ret = { *s.inner, index, 1 };
    289289    return ret`shareEdits;
    290290}
Note: See TracChangeset for help on using the changeset viewer.