lib/string/strtok/stpsep.[ch]: stpsep(): Add function
This function is somewhat simpler to use than strsep(3) in some cases. Signed-off-by: Alejandro Colomar <alx@kernel.org>
This commit is contained in:
committed by
Serge Hallyn
parent
843c151f2c
commit
39da15614e
10
lib/string/strtok/stpsep.c
Normal file
10
lib/string/strtok/stpsep.c
Normal file
@@ -0,0 +1,10 @@
|
||||
// SPDX-FileCopyrightText: 2024, Alejandro Colomar <alx@kernel.org>
|
||||
// SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include "string/strtok/stpsep.h"
|
||||
|
||||
|
||||
extern inline char *stpsep(char *s, const char *delim);
|
||||
33
lib/string/strtok/stpsep.h
Normal file
33
lib/string/strtok/stpsep.h
Normal file
@@ -0,0 +1,33 @@
|
||||
// SPDX-FileCopyrightText: 2024, Alejandro Colomar <alx@kernel.org>
|
||||
// SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
|
||||
#ifndef SHADOW_INCLUDE_LIB_STRING_STRTOK_STPSEP_H_
|
||||
#define SHADOW_INCLUDE_LIB_STRING_STRTOK_STPSEP_H_
|
||||
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "attr.h"
|
||||
|
||||
|
||||
ATTR_STRING(1) ATTR_STRING(2)
|
||||
inline char *stpsep(char *s, const char *delim);
|
||||
|
||||
|
||||
// Similar to strsep(3),
|
||||
// but return the next token, and don't update the input pointer.
|
||||
// Similar to strtok(3),
|
||||
// but don't store a state, and don't skip empty fields.
|
||||
inline char *
|
||||
stpsep(char *s, const char *delim)
|
||||
{
|
||||
strsep(&s, delim);
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
|
||||
#endif // include guard
|
||||
Reference in New Issue
Block a user