import { __runtime_id, __runtime_instanceof } from "runtime"; class Animal {} class Cat extends Animal {} class BlackCat extends Cat {} assert( // Animal is an Animal __runtime_instanceof( __runtime_id(), __runtime_id() ) ); assert( // Cat is an Animal __runtime_instanceof( __runtime_id(), __runtime_id() ) ); assert( // BlackCat is an Animal __runtime_instanceof( __runtime_id(), __runtime_id() ) ); assert( // Cat is a Cat __runtime_instanceof( __runtime_id(), __runtime_id() ) ); assert( // BlackCat is a Cat __runtime_instanceof( __runtime_id(), __runtime_id() ) ); assert(! // Animal isn't necessarily a Cat __runtime_instanceof( __runtime_id(), __runtime_id() ) ); assert(! // Animal isn't necessarily a BlackCat __runtime_instanceof( __runtime_id(), __runtime_id() ) ); assert(! // Cat isn't necessarily a BlackCat __runtime_instanceof( __runtime_id(), __runtime_id() ) );