pub trait WriteBytes {
// Required methods
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>;
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>;
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>;
}
Expand description
Trait to enable writing bytes to a writer.
Required Methods§
Sourcefn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
Returns the amount of bytes written.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl WriteBytes for i8
impl WriteBytes for i8
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i8;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i8;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i8;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for i16
impl WriteBytes for i16
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i16;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i16;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i16;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for i32
impl WriteBytes for i32
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i32;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i32;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i32;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for i64
impl WriteBytes for i64
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i64;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i64;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i64;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for i128
impl WriteBytes for i128
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i128;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i128;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_i128;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for isize
impl WriteBytes for isize
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_isize;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_isize;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_isize;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for u8
impl WriteBytes for u8
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u8;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u8;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u8;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for u16
impl WriteBytes for u16
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u16;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u16;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u16;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for u32
impl WriteBytes for u32
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u32;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u32;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u32;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for u64
impl WriteBytes for u64
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u64;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u64;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u64;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for u128
impl WriteBytes for u128
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u128;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u128;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_u128;
buf.write_ne(num).unwrap();
Source§impl WriteBytes for usize
impl WriteBytes for usize
Source§fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_be_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as big endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_usize;
buf.write_be(num).unwrap();
Source§fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_le_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer as little endian.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_usize;
buf.write_le(num).unwrap();
Source§fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
fn write_ne_bytes<W: Write>(&self, writer: &mut W) -> Result<usize>
Write bytes to a writer using native endianness.
As the target platform’s native endianness is used, portable code
likely wants to use write_be_bytes
or write_le_bytes
, as
appropriate instead.
§Examples
use std::io::Cursor;
use omnom::prelude::*;
let mut buf = Cursor::new(vec![0; 15]);
let num = 12_usize;
buf.write_ne(num).unwrap();