Skip to main content

rd_helpdb/
lib.rs

1//! Reader for installed R package help databases (aliases, `.rdx`/`.rdb`,
2//! help-search, vignette, and demo indexes), built on top of `rd-rds`.
3//!
4//! An installed package directory looks like:
5//!
6//! ```text
7//! <pkg_dir>/help/<pkg>.rdx       # RDS file: index
8//! <pkg_dir>/help/<pkg>.rdb       # concatenated binary records
9//! <pkg_dir>/help/aliases.rds     # RDS: named character vector alias -> topic
10//! <pkg_dir>/Meta/hsearch.rds     # RDS: help-search index
11//! <pkg_dir>/Meta/vignette.rds    # optional RDS: vignette data frame
12//! <pkg_dir>/Meta/demo.rds        # optional RDS: two-column demo matrix
13//! ```
14//!
15//! `rd-helpdb` does not discover installed packages (R's `.libPaths()`
16//! logic is out of scope): [`PackageHelpDb::open`] takes an explicit
17//! package directory.
18
19mod db;
20pub mod demo;
21mod error;
22mod rds;
23mod util;
24pub mod vignette;
25
26pub use db::PackageHelpDb;
27pub use demo::{DemoEntry, DemoIndex};
28pub use error::Error;
29pub use rds::{decode_rdb_record, read_rds_file};
30pub use vignette::{VignetteEntry, VignetteIndex};