Go to the documentation of this file.
15 #include "absl/strings/internal/memutil.h"
21 namespace strings_internal {
24 const unsigned char* us1 =
reinterpret_cast<const unsigned char*
>(s1);
25 const unsigned char* us2 =
reinterpret_cast<const unsigned char*
>(s2);
27 for (
size_t i = 0;
i <
len;
i++) {
36 char*
memdup(
const char* s,
size_t slen) {
38 if ((
copy = malloc(slen)) ==
nullptr)
return nullptr;
40 return reinterpret_cast<char*
>(
copy);
43 char*
memrchr(
const char* s,
int c,
size_t slen) {
44 for (
const char*
e =
s + slen - 1;
e >=
s;
e--) {
45 if (*
e == c)
return const_cast<char*
>(
e);
50 size_t memspn(
const char* s,
size_t slen,
const char* accept) {
57 if (slen-- == 0)
return p - 1 -
s;
58 for (spanp = accept; (sc = *spanp++) !=
'\0';)
59 if (sc == c)
goto cont;
70 for (spanp =
reject; (sc = *spanp++) !=
'\0';)
71 if (sc == c)
return p - 1 -
s;
76 char*
mempbrk(
const char* s,
size_t slen,
const char* accept) {
80 for (; slen; ++
s, --slen) {
81 for (scanp = accept; (sc = *scanp++) !=
'\0';)
82 if (sc == *
s)
return const_cast<char*
>(
s);
89 const char*
memmatch(
const char* phaystack,
size_t haylen,
const char* pneedle,
94 if (haylen < neelen)
return nullptr;
97 const char* hayend = phaystack + haylen - neelen + 1;
100 while ((
match =
static_cast<const char*
>(
101 memchr(phaystack, pneedle[0], hayend - phaystack)))) {
102 if (memcmp(
match, pneedle, neelen) == 0)
105 phaystack =
match + 1;
char ascii_tolower(unsigned char c)
int memcasecmp(const char *s1, const char *s2, size_t len)
unsigned char match[65280+2]
static int copy(grpc_slice_buffer *input, grpc_slice_buffer *output)
#define ABSL_NAMESPACE_END
char * memrchr(const char *s, int c, size_t slen)
memcpy(mem, inblock.get(), min(CONTAINING_RECORD(inblock.get(), MEMBLOCK, data) ->size, size))
#define ABSL_NAMESPACE_BEGIN
char * memdup(const char *s, size_t slen)
char * mempbrk(const char *s, size_t slen, const char *accept)
const char * memmatch(const char *phaystack, size_t haylen, const char *pneedle, size_t neelen)
size_t memcspn(const char *s, size_t slen, const char *reject)
size_t memspn(const char *s, size_t slen, const char *accept)
grpc
Author(s):
autogenerated on Fri May 16 2025 02:59:24