compactIris property
Compacted IRIs indexed by IriTerm; each value is a fixed-length list
of IriRole.values.length slots, accessed via IriRole.index.
Using a nested list instead of Map<(IriTerm, IriRole), CompactIri> avoids
creating a record-tuple heap object on every lookup — critical for the
O(unique_iris × encodings) output phase.
Implementation
final Map<IriTerm, List<CompactIri?>> compactIris;