Ignore:
Timestamp:
Sep 14, 2013, 5:50:45 PM (6 years ago)
Author:
benlitz
Message:

core: added StartsWith and EndsWith function for strings, and a sign function for numeric types

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/lol/base/string.h

    r2851 r2917  
    157157                return i;
    158158        return -1;
     159    }
     160
     161    bool StartsWith(char const* token) const
     162    {
     163        const char* p = C();
     164        while (*token != '\0')
     165        {
     166            if (*p != *token)
     167                return false;
     168
     169            ++p;
     170            ++token;
     171        }
     172
     173        return true;
     174    }
     175
     176    bool EndsWith(char const* token) const
     177    {
     178        const char* p = C();
     179        int token_idx = strlen(token) - 1;
     180        int c_idx = strlen(p) - 1;
     181
     182        if (c_idx < token_idx)
     183            return false;
     184
     185        while (token_idx >= 0)
     186        {
     187            if (token[token_idx] != p[c_idx])
     188                return false;
     189
     190            --token_idx;
     191            --c_idx;
     192        }
     193
     194        return true;
    159195    }
    160196
Note: See TracChangeset for help on using the changeset viewer.