Deref polymorphism (using Deref to emulate inheritance) is a Rust anti-pattern. I tried to look up a definition for set_variation, and could not find one - this is because it was actually defined on a different object which we magically morph into; not easy to follow.
I kept a facade method for tables since that avoids exposing the ttfp_face implementation outside of the hb_font_t structure, but inside it, explicit is better than implicit.
Deref polymorphism (using
Deref
to emulate inheritance) is a Rust anti-pattern. I tried to look up a definition forset_variation
, and could not find one - this is because it was actually defined on a different object which we magically morph into; not easy to follow.I kept a facade method for
tables
since that avoids exposing thettfp_face
implementation outside of thehb_font_t
structure, but inside it, explicit is better than implicit.