JSSubsumesOp seems to have gotten dragged into Class.h somehow, but it's not a metaobject protocol type at all. It belongs with JSSecurityCallbacks and friends, which together form a chunk that could be neatly abstracted.