Commit 87bcf739 authored by Max Kellermann's avatar Max Kellermann

util/StringUtil: rename strchug_fast() to StripLeft()

parent db6db517
...@@ -60,7 +60,7 @@ playlist_metadata_load(TextFile &file, PlaylistVector &pv, const char *name, ...@@ -60,7 +60,7 @@ playlist_metadata_load(TextFile &file, PlaylistVector &pv, const char *name,
} }
*colon++ = 0; *colon++ = 0;
value = strchug_fast(colon); value = StripLeft(colon);
if (strcmp(line, "mtime") == 0) if (strcmp(line, "mtime") == 0)
pm.mtime = strtol(value, nullptr, 10); pm.mtime = strtol(value, nullptr, 10);
......
...@@ -94,7 +94,7 @@ song_load(TextFile &file, const char *uri, ...@@ -94,7 +94,7 @@ song_load(TextFile &file, const char *uri,
} }
*colon++ = 0; *colon++ = 0;
const char *value = strchug_fast(colon); const char *value = StripLeft(colon);
TagType type; TagType type;
if ((type = tag_name_parse(line)) != TAG_NUM_OF_ITEM_TYPES) { if ((type = tag_name_parse(line)) != TAG_NUM_OF_ITEM_TYPES) {
......
...@@ -96,7 +96,7 @@ config_read_block(FILE *fp, int *count, char *string, Error &error) ...@@ -96,7 +96,7 @@ config_read_block(FILE *fp, int *count, char *string, Error &error)
} }
(*count)++; (*count)++;
line = strchug_fast(line); line = StripLeft(line);
if (*line == 0 || *line == CONF_COMMENT) if (*line == 0 || *line == CONF_COMMENT)
continue; continue;
...@@ -104,7 +104,7 @@ config_read_block(FILE *fp, int *count, char *string, Error &error) ...@@ -104,7 +104,7 @@ config_read_block(FILE *fp, int *count, char *string, Error &error)
/* end of this block; return from the function /* end of this block; return from the function
(and from this "while" loop) */ (and from this "while" loop) */
line = strchug_fast(line + 1); line = StripLeft(line + 1);
if (*line != 0 && *line != CONF_COMMENT) { if (*line != 0 && *line != CONF_COMMENT) {
delete ret; delete ret;
error.Format(config_file_domain, error.Format(config_file_domain,
...@@ -155,7 +155,7 @@ ReadConfigFile(ConfigData &config_data, FILE *fp, Error &error) ...@@ -155,7 +155,7 @@ ReadConfigFile(ConfigData &config_data, FILE *fp, Error &error)
count++; count++;
line = strchug_fast(string); line = StripLeft(string);
if (*line == 0 || *line == CONF_COMMENT) if (*line == 0 || *line == CONF_COMMENT)
continue; continue;
...@@ -205,7 +205,7 @@ ReadConfigFile(ConfigData &config_data, FILE *fp, Error &error) ...@@ -205,7 +205,7 @@ ReadConfigFile(ConfigData &config_data, FILE *fp, Error &error)
return false; return false;
} }
line = strchug_fast(tokenizer.Rest() + 1); line = StripLeft(tokenizer.Rest() + 1);
if (*line != 0 && *line != CONF_COMMENT) { if (*line != 0 && *line != CONF_COMMENT) {
error.Format(config_file_domain, error.Format(config_file_domain,
"line %i: Unknown tokens after '{'", "line %i: Unknown tokens after '{'",
......
...@@ -142,11 +142,11 @@ RouteFilter::Configure(const config_param &param, Error &error) { ...@@ -142,11 +142,11 @@ RouteFilter::Configure(const config_param &param, Error &error) {
// A cowardly default, just passthrough stereo // A cowardly default, just passthrough stereo
const char *routes = param.GetBlockValue("routes", "0>0, 1>1"); const char *routes = param.GetBlockValue("routes", "0>0, 1>1");
while (true) { while (true) {
routes = strchug_fast(routes); routes = StripLeft(routes);
char *endptr; char *endptr;
const unsigned source = strtoul(routes, &endptr, 10); const unsigned source = strtoul(routes, &endptr, 10);
endptr = strchug_fast(endptr); endptr = StripLeft(endptr);
if (endptr == routes || *endptr != '>') { if (endptr == routes || *endptr != '>') {
error.Set(config_domain, error.Set(config_domain,
"Malformed 'routes' specification"); "Malformed 'routes' specification");
...@@ -163,10 +163,10 @@ RouteFilter::Configure(const config_param &param, Error &error) { ...@@ -163,10 +163,10 @@ RouteFilter::Configure(const config_param &param, Error &error) {
if (source >= min_input_channels) if (source >= min_input_channels)
min_input_channels = source + 1; min_input_channels = source + 1;
routes = strchug_fast(endptr + 1); routes = StripLeft(endptr + 1);
unsigned dest = strtoul(routes, &endptr, 10); unsigned dest = strtoul(routes, &endptr, 10);
endptr = strchug_fast(endptr); endptr = StripLeft(endptr);
if (endptr == routes) { if (endptr == routes) {
error.Set(config_domain, error.Set(config_domain,
"Malformed 'routes' specification"); "Malformed 'routes' specification");
......
...@@ -129,7 +129,7 @@ static bool ...@@ -129,7 +129,7 @@ static bool
ParseConfigLine(char *line, const char *dir_name, AllocatedPath &result_dir) ParseConfigLine(char *line, const char *dir_name, AllocatedPath &result_dir)
{ {
// strip leading white space // strip leading white space
line = strchug_fast(line); line = StripLeft(line);
// check for end-of-line or comment // check for end-of-line or comment
if (*line == '\0' || *line == '#') if (*line == '\0' || *line == '#')
...@@ -141,11 +141,11 @@ ParseConfigLine(char *line, const char *dir_name, AllocatedPath &result_dir) ...@@ -141,11 +141,11 @@ ParseConfigLine(char *line, const char *dir_name, AllocatedPath &result_dir)
line += strlen(dir_name); line += strlen(dir_name);
// strip equals sign and spaces around it // strip equals sign and spaces around it
line = strchug_fast(line); line = StripLeft(line);
if (*line != '=') if (*line != '=')
return false; return false;
++line; ++line;
line = strchug_fast(line); line = StripLeft(line);
// check if path is quoted // check if path is quoted
bool quoted = false; bool quoted = false;
......
...@@ -80,7 +80,7 @@ cue_next_quoted(char *p, char **pp) ...@@ -80,7 +80,7 @@ cue_next_quoted(char *p, char **pp)
static const char * static const char *
cue_next_token(char **pp) cue_next_token(char **pp)
{ {
char *p = strchug_fast(*pp); char *p = StripLeft(*pp);
if (*p == 0) if (*p == 0)
return nullptr; return nullptr;
...@@ -90,7 +90,7 @@ cue_next_token(char **pp) ...@@ -90,7 +90,7 @@ cue_next_token(char **pp)
static const char * static const char *
cue_next_value(char **pp) cue_next_value(char **pp)
{ {
char *p = strchug_fast(*pp); char *p = StripLeft(*pp);
if (*p == 0) if (*p == 0)
return nullptr; return nullptr;
......
...@@ -82,7 +82,7 @@ extm3u_parse_tag(const char *line) ...@@ -82,7 +82,7 @@ extm3u_parse_tag(const char *line)
/* 0 means unknown duration */ /* 0 means unknown duration */
duration = 0; duration = 0;
name = strchug_fast(endptr + 1); name = StripLeft(endptr + 1);
if (*name == 0 && duration == 0) if (*name == 0 && duration == 0)
/* no information available; don't allocate a tag /* no information available; don't allocate a tag
object */ object */
...@@ -116,7 +116,7 @@ ExtM3uPlaylist::NextSong() ...@@ -116,7 +116,7 @@ ExtM3uPlaylist::NextSong()
continue; continue;
} }
line_s = strchug_fast(line_s); line_s = StripLeft(line_s);
} while (line_s[0] == '#' || *line_s == 0); } while (line_s[0] == '#' || *line_s == 0);
return new DetachedSong(line_s, std::move(tag)); return new DetachedSong(line_s, std::move(tag));
......
...@@ -52,7 +52,7 @@ M3uPlaylist::NextSong() ...@@ -52,7 +52,7 @@ M3uPlaylist::NextSong()
if (line_s == nullptr) if (line_s == nullptr)
return nullptr; return nullptr;
line_s = strchug_fast(line_s); line_s = StripLeft(line_s);
} while (line_s[0] == '#' || *line_s == 0); } while (line_s[0] == '#' || *line_s == 0);
return new DetachedSong(line_s); return new DetachedSong(line_s);
......
...@@ -27,7 +27,7 @@ ...@@ -27,7 +27,7 @@
#include <string.h> #include <string.h>
const char * const char *
strchug_fast(const char *p) StripLeft(const char *p)
{ {
while (IsWhitespaceNotNull(*p)) while (IsWhitespaceNotNull(*p))
++p; ++p;
...@@ -38,7 +38,7 @@ strchug_fast(const char *p) ...@@ -38,7 +38,7 @@ strchug_fast(const char *p)
char * char *
Strip(char *p) Strip(char *p)
{ {
p = strchug_fast(p); p = StripLeft(p);
size_t length = strlen(p); size_t length = strlen(p);
while (length > 0 && IsWhitespaceNotNull(p[length - 1])) while (length > 0 && IsWhitespaceNotNull(p[length - 1]))
......
...@@ -27,19 +27,16 @@ ...@@ -27,19 +27,16 @@
/** /**
* Returns a pointer to the first non-whitespace character in the * Returns a pointer to the first non-whitespace character in the
* string, or to the end of the string. * string, or to the end of the string.
*
* This is a faster version of g_strchug(), because it does not move
* data.
*/ */
gcc_pure gcc_pure
const char * const char *
strchug_fast(const char *p); StripLeft(const char *p);
gcc_pure gcc_pure
static inline char * static inline char *
strchug_fast(char *p) StripLeft(char *p)
{ {
return const_cast<char *>(strchug_fast((const char *)p)); return const_cast<char *>(StripLeft((const char *)p));
} }
/** /**
......
...@@ -71,7 +71,7 @@ Tokenizer::NextWord(Error &error) ...@@ -71,7 +71,7 @@ Tokenizer::NextWord(Error &error)
/* a whitespace: the word ends here */ /* a whitespace: the word ends here */
*input = 0; *input = 0;
/* skip all following spaces, too */ /* skip all following spaces, too */
input = strchug_fast(input + 1); input = StripLeft(input + 1);
break; break;
} }
...@@ -116,7 +116,7 @@ Tokenizer::NextUnquoted(Error &error) ...@@ -116,7 +116,7 @@ Tokenizer::NextUnquoted(Error &error)
/* a whitespace: the word ends here */ /* a whitespace: the word ends here */
*input = 0; *input = 0;
/* skip all following spaces, too */ /* skip all following spaces, too */
input = strchug_fast(input + 1); input = StripLeft(input + 1);
break; break;
} }
...@@ -185,7 +185,7 @@ Tokenizer::NextString(Error &error) ...@@ -185,7 +185,7 @@ Tokenizer::NextString(Error &error)
/* finish the string and return it */ /* finish the string and return it */
*dest = 0; *dest = 0;
input = strchug_fast(input); input = StripLeft(input);
return word; return word;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment