API
#encoding/binary
Xu 0.8.8 API
import: #encoding/binary
counts: 11 fns, 12 methods, 1 types, 0 consts, 0 ifaces
Endian integers and uvarint/varint.
struct Endian
pub struct Endian {
pub little bool
}
Purpose
`encoding/binary` (little_endian / big_endian Endian values with get_u16/32/64 and put_u16/32/64). models the byte orders as empty structs with methods; Xu has no methods on enums — the checker rejects any non-struct receiver ("method receiver must be a struct"), so Endian is a struct carrying a single `little bool` (behavior-identical, no enum is used). get_* assemble from a shared borrow `&[]int` after a full bounds check (Err, never a partial read); put_* write through an exclusive borrow `&mut []int` and validate the whole range before the first store (Err, never a partial write). All byte assembly/disassembly goes through masks (`& 0xFF`, `<< 8`, `>> 56`), so u64 bit patterns round-trip through i64 with no arithmetic-overflow path (put/get of the high bit are bit-exact via `& 0xFF` byte extraction).
Parameters
little bool- field (bool)
little_endian
pub fn little_endian() Endian
Purpose
Little endian.
Parameters
none
Returns
Endian — a value of this type
big_endian
pub fn big_endian() Endian
Purpose
Big endian.
Parameters
none
Returns
Endian — a value of this type
(Endian) get_u16
pub fn (e Endian) get_u16(data &[]int, off int) int
Purpose
Method on `Endian`: read u16. Throws on failure.
Parameters
e Endian- receiver Endian (value receiver)
data &[]int- data (borrowed; caller keeps it; type &[]int)
off int- offset (int)
Returns
int — a value of this type
(Endian) get_u32
pub fn (e Endian) get_u32(data &[]int, off int) int
Purpose
Method on `Endian`: read u32. Throws on failure.
Parameters
e Endian- receiver Endian (value receiver)
data &[]int- data (borrowed; caller keeps it; type &[]int)
off int- offset (int)
Returns
int — a value of this type
(Endian) get_u64
pub fn (e Endian) get_u64(data &[]int, off int) int
Purpose
Method on `Endian`: read u64. Throws on failure.
Parameters
e Endian- receiver Endian (value receiver)
data &[]int- data (borrowed; caller keeps it; type &[]int)
off int- offset (int)
Returns
int — a value of this type
(Endian) put_u16
pub fn (e Endian) put_u16(data &mut []int, off int, v int) int
Purpose
Method on `Endian`: put u16. Throws on failure.
Parameters
e Endian- receiver Endian (value receiver)
data &mut []int- data (exclusive borrow; type &mut []int)
off int- offset (int)
v int- value (int)
Returns
int — a value of this type
(Endian) put_u32
pub fn (e Endian) put_u32(data &mut []int, off int, v int) int
Purpose
Method on `Endian`: put u32. Throws on failure.
Parameters
e Endian- receiver Endian (value receiver)
data &mut []int- data (exclusive borrow; type &mut []int)
off int- offset (int)
v int- value (int)
Returns
int — a value of this type
(Endian) put_u64
pub fn (e Endian) put_u64(data &mut []int, off int, v int) int
Purpose
Method on `Endian`: put u64. Throws on failure.
Parameters
e Endian- receiver Endian (value receiver)
data &mut []int- data (exclusive borrow; type &mut []int)
off int- offset (int)
v int- value (int)
Returns
int — a value of this type
native_endian
pub fn native_endian() Endian
Purpose
Native endian.
Parameters
none
Returns
Endian — a value of this type
(Endian) get_i16
pub fn (e Endian) get_i16(data &[]int, off int) int
Purpose
Method on `Endian`: read i16.
Parameters
e Endian- receiver Endian (value receiver)
data &[]int- data (borrowed; caller keeps it; type &[]int)
off int- offset (int)
Returns
int — a value of this type
(Endian) get_i32
pub fn (e Endian) get_i32(data &[]int, off int) int
Purpose
Method on `Endian`: read i32.
Parameters
e Endian- receiver Endian (value receiver)
data &[]int- data (borrowed; caller keeps it; type &[]int)
off int- offset (int)
Returns
int — a value of this type
(Endian) get_i64
pub fn (e Endian) get_i64(data &[]int, off int) int
Purpose
Method on `Endian`: read i64.
Parameters
e Endian- receiver Endian (value receiver)
data &[]int- data (borrowed; caller keeps it; type &[]int)
off int- offset (int)
Returns
int — a value of this type
(Endian) put_i16
pub fn (e Endian) put_i16(data &mut []int, off int, v int) int
Purpose
Method on `Endian`: put i16.
Parameters
e Endian- receiver Endian (value receiver)
data &mut []int- data (exclusive borrow; type &mut []int)
off int- offset (int)
v int- value (int)
Returns
int — a value of this type
(Endian) put_i32
pub fn (e Endian) put_i32(data &mut []int, off int, v int) int
Purpose
Method on `Endian`: put i32.
Parameters
e Endian- receiver Endian (value receiver)
data &mut []int- data (exclusive borrow; type &mut []int)
off int- offset (int)
v int- value (int)
Returns
int — a value of this type
(Endian) put_i64
pub fn (e Endian) put_i64(data &mut []int, off int, v int) int
Purpose
Method on `Endian`: put i64.
Parameters
e Endian- receiver Endian (value receiver)
data &mut []int- data (exclusive borrow; type &mut []int)
off int- offset (int)
v int- value (int)
Returns
int — a value of this type
put_uvarint
pub fn put_uvarint(x int) string
Purpose
Put uvarint.
Parameters
x int- value (int)
Returns
string — result string
size_uvarint
pub fn size_uvarint(x int) int
Purpose
Size uvarint.
Parameters
x int- value (int)
Returns
int — a value of this type
uvarint
pub fn uvarint(s &string) int
Purpose
uvarint; returns int. Throws on failure.
Parameters
s &string- source string (borrowed; caller keeps it; type &string)
Returns
int — a value of this type
put_varint
pub fn put_varint(x int) string
Purpose
Put varint.
Parameters
x int- value (int)
Returns
string — result string
varint
pub fn varint(s &string) int
Purpose
varint; returns int. Throws on failure.
Parameters
s &string- source string (borrowed; caller keeps it; type &string)
Returns
int — a value of this type
size_varint
pub fn size_varint(x int) int
Purpose
Size varint.
Parameters
x int- value (int)
Returns
int — a value of this type
append_uvarint
pub fn append_uvarint(dst string, x int) string
Purpose
Append uvarint.
Parameters
dst string- destination (string)
x int- value (int)
Returns
string — result string
append_varint
pub fn append_varint(dst string, x int) string
Purpose
Append varint.
Parameters
dst string- destination (string)
x int- value (int)
Returns
string — result string