diff options
| author | Arda Serdar Pektezol <1669855+pektezol@users.noreply.github.com> | 2022-10-17 01:12:02 +0300 |
|---|---|---|
| committer | Arda Serdar Pektezol <1669855+pektezol@users.noreply.github.com> | 2022-10-17 01:12:02 +0300 |
| commit | ea2384b37ed84567906beb3c877ea419e35b86dc (patch) | |
| tree | 7d6698225087893a14abd0aeb277fbdd79a3015b /README.md | |
| parent | update for github username change (diff) | |
| parent | Merge pull request #3 from BiSaXa/dev (diff) | |
| download | bitreader-ea2384b37ed84567906beb3c877ea419e35b86dc.tar.gz bitreader-ea2384b37ed84567906beb3c877ea419e35b86dc.tar.bz2 bitreader-ea2384b37ed84567906beb3c877ea419e35b86dc.zip | |
Merge branch 'main' of https://github.com/BiSaXa/BitReader
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 34 |
1 files changed, 26 insertions, 8 deletions
| @@ -15,24 +15,42 @@ $ go get github.com/pektezol/bitreader | |||
| 15 | ```go | 15 | ```go |
| 16 | import "github.com/pektezol/bitreader" | 16 | import "github.com/pektezol/bitreader" |
| 17 | 17 | ||
| 18 | // data: []byte Data to read from byte array | 18 | // data: io.Reader Data to read from a io stream |
| 19 | // le: bool Little-endian(true) or big-endian(false) state | 19 | // le: bool Little-endian(true) or big-endian(false) state |
| 20 | reader := bitreader.Reader(data, le) | 20 | reader := bitreader.Reader(data, le) |
| 21 | 21 | ||
| 22 | // read first bit | 22 | // Read First Bit |
| 23 | state, err := reader.ReadBit() | 23 | state, err := reader.ReadBool() |
| 24 | 24 | ||
| 25 | // skip bits/bytes | 25 | // Skip Bits/Bytes |
| 26 | err := reader.SkipBits(8) | 26 | err := reader.SkipBits(8) |
| 27 | err := reader.SkipBytes(4) | 27 | err := reader.SkipBytes(4) |
| 28 | 28 | ||
| 29 | // read bits | 29 | // Read Bits/Bytes |
| 30 | value, err := reader.ReadBits(11) | 30 | value, err := reader.ReadBytes(4) |
| 31 | value, err := reader.ReadBits(64) // up to 64 bits | 31 | value, err := reader.ReadBits(64) // up to 64 bits |
| 32 | |||
| 33 | // Wrapper functions | ||
| 34 | state := reader.TryReadBool() // bool | ||
| 35 | value := reader.TryReadInt1() // uint8 | ||
| 36 | value := reader.TryReadInt8() // uint8 | ||
| 37 | value := reader.TryReadInt16() // uint16 | ||
| 38 | value := reader.TryReadInt32() // uint32 | ||
| 39 | value := reader.TryReadInt64() // uint64 | ||
| 40 | value := reader.TryReadFloat32() // float32 | ||
| 41 | value := reader.TryReadFloat64() // float64 | ||
| 32 | ``` | 42 | ``` |
| 33 | 43 | ||
| 34 | ## Error Handling | 44 | ## Error Handling |
| 35 | ReadBits(x), ReadBit(), SkipBits(x) and SkipBytes(x) functions returns an error message when they don't work as expected. It is advised to always handle errors. | 45 | ReadBits(x), ReadBytes(x), ReadBool(), SkipBits(x) and SkipBytes(x) functions returns an error message when they don't work as expected. It is advised to always handle errors. \ |
| 46 | Wrapper functions, however, only returns the value and panics if an error is encountered. | ||
| 47 | |||
| 48 | ## Bug Report / Feature Request | ||
| 49 | Using [Github Issues](https://github.com/BiSaXa/BitReader/issues/new/choose), you can report a bug that you encountered and/or request a feature that you would like to be added. | ||
| 50 | |||
| 51 | ## Documentation | ||
| 52 | |||
| 53 | Full documentation can be found in https://pkg.go.dev/github.com/bisaxa/bitreader | ||
| 36 | 54 | ||
| 37 | ## License | 55 | ## License |
| 38 | This project is licensed under [MIT License](LICENSE). \ No newline at end of file | 56 | This project is licensed under [MIT License](LICENSE). \ No newline at end of file |