MMgr v1.0.0
Zero-heap memory manager in C11. One borrowed buffer, carved by asserted offset.
Loading...
Searching...
No Matches
EndianCfg Struct Reference

Arguments for the endian calls, where each call reads only the members it needs. More...

#include <endian.h>

Data Fields

uint8_t *const dst
const uint8_t *const src
const uint64_t val
const mmgr_endian_width width

Detailed Description

Arguments for the endian calls, where each call reads only the members it needs.

Note
wr reads dst, val and width. rd reads src and width. rev reads val and width.
width is what bounds both pointers. wr and rd touch that many bytes of the one they use, or eight when width is not one of the mmgr_endian_width enumerators. rev reads neither pointer.
Warning
Neither pointer is checked. endian.c passes them straight to proximus_operor, which dereferences them with no test and no assertion.

Definition at line 49 of file endian.h.

Field Documentation

◆ dst

uint8_t* const EndianCfg::dst

Destination for wr [BORROWS].

Definition at line 51 of file endian.h.

◆ src

const uint8_t* const EndianCfg::src

Source for rd [BORROWS].

Definition at line 52 of file endian.h.

◆ val

const uint64_t EndianCfg::val

Value for wr, or the value rev reverses.

Definition at line 53 of file endian.h.

◆ width

const mmgr_endian_width EndianCfg::width

Bytes the call moves.

Definition at line 54 of file endian.h.


The documentation for this struct was generated from the following file: