Class: Ucode::Models::Audit::CodepointRange
- Inherits:
-
Lutaml::Model::Serializable
- Object
- Lutaml::Model::Serializable
- Ucode::Models::Audit::CodepointRange
- Defined in:
- lib/ucode/models/audit/codepoint_range.rb
Overview
A contiguous run of covered codepoints.
‘first_cp`/`last_cp` are inclusive integer endpoints. A single-codepoint “range” has first_cp == last_cp and renders as `U+XXXX` (no dash).
Produced by the cmap coverage coalescer from the font’s cmap. The range view replaces a flat per-codepoint list — a 60k-codepoint CJK font produces tens of ranges rather than 60k strings.
Instance Method Summary collapse
-
#to_s ⇒ String
Human-readable form: ‘U+XXXX` for single codepoints, `U+XXXX-U+XXXX` for true ranges.
Instance Method Details
#to_s ⇒ String
Human-readable form: ‘U+XXXX` for single codepoints, `U+XXXX-U+XXXX` for true ranges.
29 30 31 32 33 34 35 |
# File 'lib/ucode/models/audit/codepoint_range.rb', line 29 def to_s if first_cp == last_cp format("U+%04<cp>X", cp: first_cp) else format("U+%04<first>X-U+%04<last>X", first: first_cp, last: last_cp) end end |