ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
book_internal.h
Go to the documentation of this file.
1
22#pragma once
23
24#include <stddef.h>
25#include <stdint.h>
26
27#include "ra8_attributes.h"
28#include "ra8_err.h"
29
44
77 uint32_t* out_chunk_bytes,
78 uint64_t* out_total,
79 uint32_t* out_count);
80
103RA8_PRIV uint64_t priv_book_container_table_entry(const uint8_t* table, uint32_t idx);
104
129RA8_PRIV uint32_t priv_book_crc32_extend(uint32_t crc, const uint8_t* data, size_t len);
130
136typedef enum : uint32_t {
140
165RA8_PRIV bool priv_book_is_block(const char* name);
166
197RA8_PRIV bool
198priv_book_emit_text(char* out, size_t cap, size_t* pos, const char* str, bool* at_break);
199
226RA8_PRIV bool priv_book_emit_break(char* out, size_t cap, size_t* pos, bool* at_break);
bool priv_book_is_block(const char *name)
Test whether an element name is a block-level HTML element.
Definition book_xhtml.c:470
book_container_field_off_t
Byte offsets of the fixed "RBKC" container-header fields.
@ k_book_cont_off_total
uint64 LE: flat-blob inflated total.
@ k_book_cont_off_count
uint32 LE: number of chunks.
@ k_book_cont_off_chunk_bytes
uint32 LE: inflated bytes per chunk.
@ k_book_cont_off_reserved
uint32 LE: reserved, must be 0.
bool priv_book_emit_break(char *out, size_t cap, size_t *pos, bool *at_break)
Append a paragraph break, collapsing consecutive block-level breaks.
Definition book_xhtml.c:583
bool priv_book_emit_text(char *out, size_t cap, size_t *pos, const char *str, bool *at_break)
Append a whitespace-collapsed text run to the output buffer.
Definition book_xhtml.c:526
uint64_t priv_book_container_table_entry(const uint8_t *table, uint32_t idx)
Decode one uint64 LE chunk-table entry from unaligned container bytes.
Definition book.c:325
uint32_t priv_book_crc32_extend(uint32_t crc, const uint8_t *data, size_t len)
Extend a finalized CRC-32/ISO-HDLC with another byte span.
Definition book.c:86
book_xhtml_bound_t
Bounds for the iterative, recursion-free DOM walks (resident + paged).
@ k_book_xhtml_stack
Max pending open/close walk entries.
@ k_book_xhtml_iter_x
Iteration-guard multiplier over node_count.
ra8_err_t priv_book_container_header_fields(const uint8_t *hdr, uint32_t *out_chunk_bytes, uint64_t *out_total, uint32_t *out_count)
Parse + validate the fixed 24-byte "RBKC" container header.
Definition book.c:290
Annotation-attribute framework macros for ra8-firmware.
#define RA8_PRIV
Module-private helper: shared across TUs but only inside one library.
Error Code Definitions for ra8-firmware.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Definition ra8_err.h:546