Document the public Wave standard-library API surface
- Dominant language
- Rust
- Stars
- 53
- Forks
- 16
- Avg merge
- 4h 22m
- Merged PRs (30d)
- 46
Description
Tracked by #375.
## Problem
There is no single inventory of public declarations under std. Users must inspect implementation files to discover whether a name is public, privately imported, target-specific, or re-exported.
## Scope
- Inventory public functions, types, constants, and public imports by module.
- Record exact signatures and target availability.
- Distinguish portable modules from std::sys and std::libc.
- Include a short example of selected and namespaced imports.
- Call out commonly confused names such as std::fs::file::fs_open versus std::sys::fs::open.
- Do not redesign or rename APIs in this issue.
A small repository script may be added if it keeps the inventory deterministic without introducing a documentation generator dependency.
## Completion criteria
- [ ] Every current public std symbol is discoverable by module.
- [ ] Private imports are not presented as public API.
- [ ] Platform-specific entries identify their target conditions.
- [ ] The documented signatures match the Wave source.
- [ ] Contributor instructions explain how to refresh the inventory.
Contributor guide
Research direction
Start by inspecting the public declarations under std and the existing contributor instructions, then compare portable modules with std::sys and std::libc. Document each public symbol with its exact signature, target conditions, imports, and examples, and ensure the contributor instructions explain how to refresh the deterministic inventory.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100