Treat `.rbs` signature files as a first-class input source

#11 · open · 0 comments

View on GitHub ↗

dazuma

Today `.rbs` files reach the template only through the provenance-marker strip (`YARD::AgentDocs::ProvenanceMarker`); treating them as a first-class input source is undecided and forces format decisions not settled anywhere. Known sub-questions: - **Unnamed block params.** YARD's RBS method handler synthesizes `arg0`, so `Prime.each` renders as `Prime.each(ubound, generator) { |arg0| ... } → void` while the discarded RBS marker held the real names (`ubound = nil, generator = EratosthenesGenerator.new, &block`). Recovering call-seq from the marker to repair this was considered during the marker-strip work and deliberately left out as a separate concern. - **`.rb`/`.rbs` merge semantics** when both document the same object. In `base64-0.3.0` the module docstring is attributed to both files and the `.rbs` text wins, while `Base64.encode64` is `.rb`-only. - **Whether RBS-declared types should feed `**Type:**`/`@param` rendering at all.**

Comments