| commit | e429dfb9ccb74e32c5f1800a20318ea2162ef262 | [log] [tgz] |
|---|---|---|
| author | Luke Steensen <luke.steensen@gmail.com> | Thu Jan 21 20:55:43 2016 -0600 |
| committer | Luke Steensen <luke.steensen@gmail.com> | Fri Mar 11 12:21:45 2016 -0600 |
| tree | 6289db10c6a27beb2d5e1f09540bd8c1549a65f3 | |
| parent | 1d40ec03ecefcbad7bb9922e7c6f62b077569354 [diff] |
remove custom error type and read_full Rust 1.6 stabilized `read_exact`, which gives us the same functionality without having to wrap `std::io::Error`. Removing the custom error type makes this a breaking change, and users will have to replace uses of `byteorder::Error` with `std::io::Error`. [breaking-change]
This crate provides convenience methods for encoding and decoding numbers in either big-endian or little-endian order. This is meant to replace the old methods defined on the standard library Reader and Writer traits.
Dual-licensed under MIT or the UNLICENSE.
http://burntsushi.net/rustdoc/byteorder/.
The documentation includes examples.
This crate works with Cargo and is on crates.io. The package is regularly updated. Add it to your Cargo.toml like so:
[dependencies] byteorder = "0.4"
If you want to augment existing Read and Write traits, then import the extension methods like so:
extern crate byteorder; use byteorder::{ReadBytesExt, WriteBytesExt, BigEndian, LittleEndian};
For example:
use std::io::Cursor; use byteorder::{BigEndian, ReadBytesExt}; let mut rdr = Cursor::new(vec![2, 5, 3, 0]); // Note that we use type parameters to indicate which kind of byte order // we want! assert_eq!(517, rdr.read_u16::<BigEndian>().unwrap()); assert_eq!(768, rdr.read_u16::<BigEndian>().unwrap());