diff options
Diffstat (limited to 'src/BString.cc')
-rw-r--r-- | src/BString.cc | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/BString.cc b/src/BString.cc index 262a9fa..74156bf 100644 --- a/src/BString.cc +++ b/src/BString.cc @@ -111,3 +111,23 @@ Balau::String & Balau::String::do_iconv(const char * from, const char * _to) { return *this; } + +Balau::String::List Balau::String::split(char c) { + char * d, * p, * f; + List r; + + d = p = strdup(); + + while (true) { + f = ::strchr(p, c); + if (!f) + break; + *f = 0; + r.push_back(p); + p = f + 1; + } + + r.push_back(p); + free(d); + return r; +} |