mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-01 08:04:22 +08:00
8a55c1e2c9
It finds all occurrences of a single character and replaces them with a multi character string. This will be used in a test in a following commit. Reviewed-by: Ian Rogers <irogers@google.com> Signed-off-by: James Clark <james.clark@arm.com> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Chen Zhongjin <chenzhongjin@huawei.com> Cc: Eduard Zingerman <eddyz87@gmail.com> Cc: Haixin Yu <yuhaixin.yhx@linux.alibaba.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jing Zhang <renyu.zj@linux.alibaba.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: John Garry <john.g.garry@oracle.com> Cc: Kajol Jain <kjain@linux.ibm.com> Cc: Kan Liang <kan.liang@linux.intel.com> Cc: Leo Yan <leo.yan@linaro.org> Cc: Liam Howlett <liam.howlett@oracle.com> Cc: Madhavan Srinivasan <maddy@linux.ibm.com> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Mike Leach <mike.leach@linaro.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Ravi Bangoria <ravi.bangoria@amd.com> Cc: Will Deacon <will@kernel.org> Cc: Yang Jihong <yangjihong1@huawei.com> Cc: linux-arm-kernel@lists.infradead.org Link: https://lore.kernel.org/r/20230904095104.1162928-4-james.clark@arm.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
45 lines
1.2 KiB
C
45 lines
1.2 KiB
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#ifndef PERF_STRING_H
|
|
#define PERF_STRING_H
|
|
|
|
#include <linux/string.h>
|
|
#include <linux/types.h>
|
|
#include <sys/types.h> // pid_t
|
|
#include <stddef.h>
|
|
#include <string.h>
|
|
|
|
extern const char *graph_dotted_line;
|
|
extern const char *dots;
|
|
|
|
s64 perf_atoll(const char *str);
|
|
bool strglobmatch(const char *str, const char *pat);
|
|
bool strglobmatch_nocase(const char *str, const char *pat);
|
|
bool strlazymatch(const char *str, const char *pat);
|
|
static inline bool strisglob(const char *str)
|
|
{
|
|
return strpbrk(str, "*?[") != NULL;
|
|
}
|
|
int strtailcmp(const char *s1, const char *s2);
|
|
|
|
char *asprintf_expr_inout_ints(const char *var, bool in, size_t nints, int *ints);
|
|
|
|
static inline char *asprintf_expr_in_ints(const char *var, size_t nints, int *ints)
|
|
{
|
|
return asprintf_expr_inout_ints(var, true, nints, ints);
|
|
}
|
|
|
|
static inline char *asprintf_expr_not_in_ints(const char *var, size_t nints, int *ints)
|
|
{
|
|
return asprintf_expr_inout_ints(var, false, nints, ints);
|
|
}
|
|
|
|
char *asprintf__tp_filter_pids(size_t npids, pid_t *pids);
|
|
|
|
char *strpbrk_esc(char *str, const char *stopset);
|
|
char *strdup_esc(const char *str);
|
|
|
|
unsigned int hex(char c);
|
|
char *strreplace_chars(char needle, const char *haystack, const char *replace);
|
|
|
|
#endif /* PERF_STRING_H */
|