blob: eb03fea7c992e1f456fa0da148fab0b1c0cb7038 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
[](https://godoc.org/github.com/dsoprea/go-utility/filesystem)
[](https://travis-ci.org/dsoprea/go-utility)
[](https://coveralls.io/github/dsoprea/go-utility?branch=master)
[](https://goreportcard.com/report/github.com/dsoprea/go-utility)
# bounceback
An `io.ReadSeeker` and `io.WriteSeeker` that returns to the right place before
reading or writing. Useful when the same file resource is being reused for reads
or writes throughout that file.
# list_files
A recursive path walker that supports filters.
# seekable_buffer
A memory structure that satisfies `io.ReadWriteSeeker`.
# copy_bytes_between_positions
Given an `io.ReadWriteSeeker`, copy N bytes from one position to an earlier
position.
# read_counter, write_counter
Wrap `io.Reader` and `io.Writer` structs in order to report how many bytes were
transferred.
# readseekwritecloser
Provides the ReadWriteSeekCloser interface that combines a RWS and a Closer.
Also provides a no-op wrapper to augment a plain RWS with a closer.
# boundedreadwriteseek
Wraps a ReadWriteSeeker such that no seeks can be at an offset less than a
specific-offset.
# calculateseek
Provides a reusable function with which to calculate seek offsets.
# progress_wrapper
Provides `io.Reader` and `io.Writer` wrappers that also trigger callbacks after
each call. The reader wrapper also invokes the callback upon EOF.
# does_exist
Check whether a file/directory exists using a file-path.
# graceful_copy
Do a copy but correctly handle short-writes and reads that might return a non-
zero read count *and* EOF.
# readseeker_to_readerat
A wrapper that allows an `io.ReadSeeker` to be used as a `io.ReaderAt`.
# simplefileinfo
An implementation of `os.FileInfo` to support testing.
|