From a28d19268a5f3a4ba0fb087eab07dc1f8ceb3ef1 Mon Sep 17 00:00:00 2001 From: Glenn Maynard Date: Thu, 31 Oct 2002 08:04:34 +0000 Subject: [PATCH] simple untemplated trimleft/trimright implementation --- stepmania/src/RageUtil.cpp | 16 ++++++++++++++++ stepmania/src/RageUtil.h | 3 +++ 2 files changed, 19 insertions(+) diff --git a/stepmania/src/RageUtil.cpp b/stepmania/src/RageUtil.cpp index b15ec311e5..a9ac8432d0 100644 --- a/stepmania/src/RageUtil.cpp +++ b/stepmania/src/RageUtil.cpp @@ -763,4 +763,20 @@ float calc_stddev(const float *start, const float *end) return dev; } +void TrimLeft(string &str, const char *s) +{ + int n = 0; + while(n < int(str.size()) && strchr(s, str[n])) + n++; + str.erase(str.begin(), str.begin()+n); +} + +void TrimRight(string &str, const char *s) +{ + int n = str.size(); + while(n >= 0 && strchr(s, str[n-1])) + n--; + + str.erase(str.begin()+n, str.end()); +} diff --git a/stepmania/src/RageUtil.h b/stepmania/src/RageUtil.h index 696c14dc26..3940b00cec 100644 --- a/stepmania/src/RageUtil.h +++ b/stepmania/src/RageUtil.h @@ -184,6 +184,9 @@ HINSTANCE GotoURL(const char *url); float calc_mean(const float *start, const float *end); float calc_stddev(const float *start, const float *end); +void TrimLeft(string &str, const char *s = "\r\n\t "); +void TrimRight(string &str, const char *s = "\r\n\t "); + /* Fix Windows breakage ... */ #ifdef WIN32 #define getcwd _getcwd