Skip to main content

Crate rd_helpdb

Crate rd_helpdb 

Source
Expand description

Reader for installed R package help databases (aliases, .rdx/.rdb, topic metadata, help-search, vignette, and demo indexes), built on top of rd-rds.

An installed package directory looks like:

<pkg_dir>/help/<pkg>.rdx       # RDS file: index
<pkg_dir>/help/<pkg>.rdb       # concatenated binary records
<pkg_dir>/help/aliases.rds     # RDS: named character vector alias -> topic
<pkg_dir>/Meta/Rd.rds          # RDS: topic metadata, independent of help files
<pkg_dir>/Meta/hsearch.rds     # RDS: help-search index
<pkg_dir>/Meta/vignette.rds    # optional RDS: vignette data frame
<pkg_dir>/Meta/demo.rds        # optional RDS: two-column demo matrix

rd-helpdb does not discover installed packages (R’s .libPaths() logic is out of scope): PackageHelpDb::open takes an explicit package directory. HelpTopicIndex::read_installed reads topic metadata without requiring the compiled help database, allowing consumers to retain title-only help.

Re-exports§

pub use demo::DemoEntry;
pub use demo::DemoIndex;
pub use topics::HelpTopicEntry;
pub use topics::HelpTopicIndex;
pub use topics::HelpTopicText;
pub use vignette::VignetteEntry;
pub use vignette::VignetteIndex;

Modules§

demo
Typed access to an installed package’s Meta/demo.rds index.
topics
Typed access to Meta/Rd.rds, independent of the compiled help database.
vignette
Typed access to an installed package’s Meta/vignette.rds index.

Structs§

PackageHelpDb
A reader over an installed R package’s compiled help database: help/<pkg>.rdx + help/<pkg>.rdb, plus the sibling help/aliases.rds and Meta/hsearch.rds, Meta/vignette.rds, and Meta/demo.rds files.

Enums§

Error
Errors produced by rd-helpdb.

Functions§

decode_rdb_record
Decodes a single .rdb record: bytes is the exact (offset, length) slice a .rdx index entry points at, i.e. a 4-byte big-endian uncompressed-size prefix followed by a raw zlib deflate stream. The bounded rd-rds::lazyload record decoder checks the decompressed size, input size, stream completeness, and trailing bytes before parsing.
read_rds_file
Reads a standalone (possibly compressed) .rds file into an rd_rds::RObject.