note
chipmunk
Efficiency is nice, but there's something to be said for correctness as well. You've also forgotten REF, CODE, and LVALUE.
<p>
Comparing the return value from ref to a list of known types is simply the wrong approach. Either you'll forget something, or a new type will be added in a future version and your code will break.
<p>
Go with the UNIVERSAL::isa() approach. Really.
149717
149861