• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

JuliaLang / julia / #37728

26 Mar 2024 03:46AM UTC coverage: 80.612% (-0.8%) from 81.423%
#37728

push

local

web-flow
Update zlib to 1.3.1 (#53841)

Released January 22, 2024

69920 of 86737 relevant lines covered (80.61%)

14456248.65 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

85.71
/stdlib/Base64/src/buffer.jl
1
# This file is a part of Julia. License is MIT: https://julialang.org/license
2

3
# Data buffer for pipes.
4
mutable struct Buffer
5
    const data::Memory{UInt8}
6
    offset::Int
7
    size::Int
8

9
    function Buffer(bufsize)
10
        data = Memory{UInt8}(undef, bufsize)
1✔
11
        return new(data, 0, 0)
1✔
12
    end
13
end
14

15
Base.empty!(buffer::Buffer) = buffer.size = 0
×
16
Base.getindex(buffer::Buffer, i::Integer) = buffer.data[buffer.offset + i]
348✔
17
Base.setindex!(buffer::Buffer, v::UInt8, i::Integer) = buffer.data[buffer.offset + i] = v
×
18
Base.firstindex(buffer::Buffer) = 1
×
19
Base.lastindex(buffer::Buffer) = buffer.size
100✔
20
Base.pointer(buffer::Buffer) = pointer(buffer.data) + buffer.offset
1✔
21
capacity(buffer::Buffer) = length(buffer.data) - buffer.offset
1✔
22

23
function consumed!(buffer::Buffer, n::Integer)
24
    @assert n ≤ buffer.size
3✔
25
    buffer.offset += n
3✔
26
    buffer.size -= n
3✔
27
end
28

29
function read_to_buffer(io::IO, buffer::Buffer)
2✔
30
    offset = buffer.offset
2✔
31
    copyto!(buffer.data, 1, buffer.data, offset + 1, buffer.size)
2✔
32
    buffer.offset = 0
2✔
33
    if !eof(io)
2✔
34
        n = min(bytesavailable(io), capacity(buffer) - buffer.size)
1✔
35
        unsafe_read(io, pointer(buffer) + buffer.size, n)
1✔
36
        buffer.size += n
1✔
37
    end
38
    return
2✔
39
end
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc