mirror of
https://github.com/ruby/ruby.git
synced 2026-01-27 04:24:23 +00:00
The type isn't opaque because Ruby isn't often compiled with LTO, so for optimization purpose it's better to allow as much inlining as possible. However ideally only `shape.c` and `shape.h` should deal with the actual struct, and everything else should just deal with opaque `shape_id_t`.