cbreeden/fontkit

Versioned tables waste space

Opened this issue · 0 comments

Versioned tables may need to pass along the buffer reference for accurately constructing Offset and Array types. In which case, a versioned table creator must then be able to pass the buffer reference to the table variants. This would require implementing a DecodeWith on versioned table variants. This would give table variants an undesirable decoding API unless they are decoded with their parents enum (this is probably desirable anyway).

Add DecodeWith derive for versioned variants, maybe something semantic like DecodeInherited for tables that inherit buffer from their parser.