Go to the documentation of this file.
55 void (*destroy)(
void*),
61 void (*destroy)(
void*,
size_t));
69 #define GRPC_SLICE_MALLOC(len) grpc_slice_malloc(len)
GPRAPI int grpc_slice_cmp(grpc_slice a, grpc_slice b)
Returns <0 if a < b, ==0 if a == b, >0 if a > b The order is arbitrary, and is not guaranteed to be s...
GPRAPI grpc_slice grpc_slice_new(void *p, size_t len, void(*destroy)(void *))
Create a slice pointing at some data.
GPRAPI grpc_slice grpc_slice_split_tail_maybe_ref(grpc_slice *s, size_t split, grpc_slice_ref_whom ref_whom)
The same as grpc_slice_split_tail, but with an option to skip altering refcounts (grpc_slice_split_ta...
GPRAPI int grpc_slice_is_equivalent(grpc_slice a, grpc_slice b)
Do two slices point at the same memory, with the same length If a or b is inlined,...
GPRAPI grpc_slice grpc_slice_new_with_user_data(void *p, size_t len, void(*destroy)(void *), void *user_data)
Equivalent to grpc_slice_new, but with a separate pointer that is passed to the destroy function.
GPRAPI int grpc_slice_buf_start_eq(grpc_slice a, const void *b, size_t blen)
return non-zero if the first blen bytes of a are equal to b
GPRAPI grpc_slice grpc_slice_split_tail(grpc_slice *s, size_t split)
Splits s into two: modifies s to be s[0:split], and returns a new slice, sharing a refcount with s,...
GPRAPI grpc_slice grpc_slice_from_copied_buffer(const char *source, size_t len)
Create a slice by copying a buffer.
GPRAPI int grpc_slice_slice(grpc_slice haystack, grpc_slice needle)
return the index of the first occurrence of needle in haystack, or -1 if it's not found
GPRAPI void grpc_slice_unref(grpc_slice s)
Decrement the ref count of s.
GPRAPI int grpc_slice_chr(grpc_slice s, char c)
GPRAPI grpc_slice grpc_slice_dup(grpc_slice a)
Return a slice pointing to newly allocated memory that has the same contents as s.
@ GRPC_SLICE_REF_TAIL
Definition: slice.h:107
grpc_slice_ref_whom
Definition: slice.h:106
GPRAPI grpc_slice grpc_slice_from_static_string(const char *source)
Create a slice pointing to constant memory.
GPRAPI grpc_slice grpc_slice_ref(grpc_slice s)
Increment the refcount of s.
GPRAPI int grpc_slice_eq(grpc_slice a, grpc_slice b)
GPRAPI grpc_slice grpc_slice_malloc_large(size_t length)
GPRAPI grpc_slice grpc_slice_split_head(grpc_slice *s, size_t split)
Splits s into two: modifies s to be s[split:s.length], and returns a new slice, sharing a refcount wi...
GPRAPI grpc_slice grpc_slice_sub_no_ref(grpc_slice s, size_t begin, size_t end)
The same as grpc_slice_sub, but without altering the ref count.
A grpc_slice s, if initialized, represents the byte range s.bytes[0..s.length-1].
Definition: slice_type.h:63
GPRAPI char * grpc_slice_to_c_string(grpc_slice s)
Return a copy of slice as a C string.
@ GRPC_SLICE_REF_HEAD
Definition: slice.h:108
GPRAPI grpc_slice grpc_slice_sub(grpc_slice s, size_t begin, size_t end)
Return a result slice derived from s, which shares a ref count with s, where result....
GPRAPI int grpc_slice_str_cmp(grpc_slice a, const char *b)
GPRAPI grpc_slice grpc_slice_from_copied_string(const char *source)
Create a slice by copying a string.
GPRAPI int grpc_slice_rchr(grpc_slice s, char c)
return the index of the last instance of c in s, or -1 if not found
@ GRPC_SLICE_REF_BOTH
Definition: slice.h:109
GPRAPI grpc_slice grpc_slice_from_static_buffer(const void *source, size_t len)
Create a slice pointing to constant memory.
GPRAPI grpc_slice grpc_slice_malloc(size_t length)
Equivalent to grpc_slice_new(malloc(len), len, free), but saves one malloc() call.
GPRAPI grpc_slice grpc_slice_new_with_len(void *p, size_t len, void(*destroy)(void *, size_t))
Equivalent to grpc_slice_new, but with a two argument destroy function that also takes the slice leng...
GPRAPI grpc_slice grpc_empty_slice(void)
GPRAPI grpc_slice grpc_slice_copy(grpc_slice s)
Copy slice - create a new slice that contains the same data as s.