1use byteorder::{BigEndian, LittleEndian, WriteBytesExt};
2use std::io::{Result, Write};
3
4pub fn btoken_w<W: Write>(writer: &mut W, tag: &[u8]) -> Result<()> {
5 writer.write_all(tag)
6}
7
8#[inline]
9pub fn u32_le_w<W: Write>(writer: &mut W, n: u32) -> Result<()> {
10 writer.write_u32::<LittleEndian>(n)?;
11 Ok(())
12}
13
14#[inline]
15pub fn u32_be_w<W: Write>(writer: &mut W, n: u32) -> Result<()> {
16 writer.write_u32::<BigEndian>(n)?;
17 Ok(())
18}
19
20#[inline]
21pub fn u24_le_w<W: Write>(writer: &mut W, n: u32) -> Result<()> {
22 writer.write_u24::<LittleEndian>(n)?;
23 Ok(())
24}
25
26#[inline]
27pub fn u24_be_w<W: Write>(writer: &mut W, n: u32) -> Result<()> {
28 writer.write_u24::<BigEndian>(n)?;
29 Ok(())
30}
31
32#[inline]
33pub fn u16_le_w<W: Write>(writer: &mut W, n: u16) -> Result<()> {
34 writer.write_u16::<LittleEndian>(n)?;
35 Ok(())
36}
37
38#[inline]
39pub fn u16_be_w<W: Write>(writer: &mut W, n: u16) -> Result<()> {
40 writer.write_u16::<BigEndian>(n)?;
41 Ok(())
42}