File tree Expand file tree Collapse file tree 1 file changed +10
-7
lines changed Expand file tree Collapse file tree 1 file changed +10
-7
lines changed Original file line number Diff line number Diff line change 4
4
# Data Layout
5
5
# -----------
6
6
#
7
- # Buffered data are stored in `data` and two position fields are used to keep
8
- # track of buffered data and margin.
7
+ # Buffered data are stored in `data` and three position fields are used to keep
8
+ # track of marked data, buffered data and margin.
9
9
#
10
- # buffered data margin
11
- # |<----------->||<----------->|
12
- # |....xxxxxxxxxXXXXXXXXXXXXXXX..............|
13
- # ^ ^ ^ ^ ^
14
- # 1 markpos bufferpos marginpos endof(data)
10
+ # marked buffer margin
11
+ # |<-------->||<-------->||<-------->|
12
+ # |....xxxxxxxxxxxxXXXXXXXXXXXX...........|
13
+ # ^ ^ ^ ^ ^
14
+ # 1 markpos bufferpos marginpos endof(data)
15
+ #
16
+ # `markpos` is positive iff there are marked data; otherwise it is set to zero.
17
+ # `markpos` ≤ `bufferpos` ≤ `marginpos` must hold whenever possible.
15
18
16
19
mutable struct Buffer
17
20
data:: Vector{UInt8}
You can’t perform that action at this time.
0 commit comments