XU XUv0.8.8
中文

API

#encoding/binary

import: #encoding/binary

counts: 11 fns, 12 methods, 1 types, 0 consts, 0 ifaces

Endian integers and uvarint/varint.

struct Endian

XuAPI
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

XuAPI
pub fn little_endian() Endian

Purpose

Little endian.

Parameters

none

Returns

Endian — a value of this type

big_endian

XuAPI
pub fn big_endian() Endian

Purpose

Big endian.

Parameters

none

Returns

Endian — a value of this type

(Endian) get_u16

XuAPI
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

XuAPI
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

XuAPI
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

XuAPI
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

XuAPI
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

XuAPI
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

XuAPI
pub fn native_endian() Endian

Purpose

Native endian.

Parameters

none

Returns

Endian — a value of this type

(Endian) get_i16

XuAPI
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

XuAPI
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

XuAPI
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

XuAPI
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

XuAPI
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

XuAPI
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

XuAPI
pub fn put_uvarint(x int) string

Purpose

Put uvarint.

Parameters

x int
value (int)

Returns

string — result string

size_uvarint

XuAPI
pub fn size_uvarint(x int) int

Purpose

Size uvarint.

Parameters

x int
value (int)

Returns

int — a value of this type

uvarint

XuAPI
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

XuAPI
pub fn put_varint(x int) string

Purpose

Put varint.

Parameters

x int
value (int)

Returns

string — result string

varint

XuAPI
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

XuAPI
pub fn size_varint(x int) int

Purpose

Size varint.

Parameters

x int
value (int)

Returns

int — a value of this type

append_uvarint

XuAPI
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

XuAPI
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