Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
z
Classes
Class List
Class Hierarchy
Class Members
All
:
[
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
[
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
Enumerations
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Properties
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
z
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
grpc
src
core
ext
transport
chttp2
transport
context_list.h
Go to the documentation of this file.
1
/*
2
*
3
* Copyright 2018 gRPC authors.
4
*
5
* Licensed under the Apache License, Version 2.0 (the "License");
6
* you may not use this file except in compliance with the License.
7
* You may obtain a copy of the License at
8
*
9
* http://www.apache.org/licenses/LICENSE-2.0
10
*
11
* Unless required by applicable law or agreed to in writing, software
12
* distributed under the License is distributed on an "AS IS" BASIS,
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
* See the License for the specific language governing permissions and
15
* limitations under the License.
16
*
17
*/
18
19
#ifndef GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_CONTEXT_LIST_H
20
#define GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_CONTEXT_LIST_H
21
22
#include <
grpc/support/port_platform.h
>
23
24
#include <stddef.h>
25
26
#include "
src/core/ext/transport/chttp2/transport/frame.h
"
27
#include "
src/core/lib/iomgr/buffer_list.h
"
28
#include "
src/core/lib/iomgr/error.h
"
29
30
namespace
grpc_core
{
32
class
ContextList
{
33
public
:
34
/* Creates a new element with \a context as the value and appends it to the
35
* list. */
36
static
void
Append
(
ContextList
** head,
grpc_chttp2_stream
* s);
37
38
/* Executes a function \a fn with each context in the list and \a ts. It also
39
* frees up the entire list after this operation. It is intended as a callback
40
* and hence does not take a ref on \a error */
41
static
void
Execute
(
void
*
arg
,
Timestamps
* ts,
grpc_error_handle
error
);
42
43
private
:
44
void
*
trace_context_
=
nullptr
;
45
ContextList
*
next_
=
nullptr
;
46
size_t
byte_offset_
= 0;
47
};
48
49
void
grpc_http2_set_write_timestamps_callback
(
50
void
(*
fn
)(
void
*,
Timestamps
*,
grpc_error_handle
error
));
51
void
grpc_http2_set_fn_get_copied_context
(
void
* (*
fn
)(
void
*));
52
}
/* namespace grpc_core */
53
54
#endif
/* GRPC_CORE_EXT_TRANSPORT_CHTTP2_TRANSPORT_CONTEXT_LIST_H */
grpc_core::ContextList::trace_context_
void * trace_context_
Definition:
context_list.h:44
buffer_list.h
grpc_core
Definition:
call_metric_recorder.h:31
error
grpc_error_handle error
Definition:
retry_filter.cc:499
grpc_core::ContextList::Append
static void Append(ContextList **head, grpc_chttp2_stream *s)
Definition:
context_list.cc:34
grpc_core::ContextList
Definition:
context_list.h:32
grpc_core::ContextList::Execute
static void Execute(void *arg, Timestamps *ts, grpc_error_handle error)
Definition:
context_list.cc:47
grpc_core::Timestamps
Definition:
buffer_list.h:90
grpc_core::ContextList::next_
ContextList * next_
Definition:
context_list.h:45
grpc_chttp2_stream
Definition:
src/core/ext/transport/chttp2/transport/internal.h:456
generate-asm-lcov.fn
fn
Definition:
generate-asm-lcov.py:146
arg
Definition:
cmdline.cc:40
error.h
frame.h
grpc_core::grpc_http2_set_write_timestamps_callback
void grpc_http2_set_write_timestamps_callback(void(*fn)(void *, Timestamps *, grpc_error_handle error))
Definition:
context_list.cc:63
grpc_core::grpc_http2_set_fn_get_copied_context
void grpc_http2_set_fn_get_copied_context(void *(*fn)(void *))
Definition:
context_list.cc:68
grpc_error
Definition:
error_internal.h:42
grpc_core::ContextList::byte_offset_
size_t byte_offset_
Definition:
context_list.h:46
port_platform.h
grpc
Author(s):
autogenerated on Thu Mar 13 2025 02:58:55