How to use c3 console commands to find out which types extend a type


When we use c3ShowType() on a type, the online help displays methods and fields that are inherited from other types. You can click on the links to navigate to the parent types.

How do you do the opposite - navigate to the types that extend this type (child types)?

This would provide a mechanism for us to explore the inheritance hierarchy of types that are defined in the current tenant/tag.

Even better would be to have a way to graphically browse C3 types, similar to what our Javascript documentation provides at <vanity_url>/static/jsduck/index.html, e.g. http://localhost:8080/static/jsduck/index.html (which unfortunately doesn’t list all our C3 types). But I presume we don’t have such functionality yet.


Given a type, is there an API that tells me what type it extends?

It doesn’t work graphically (yet) , but to get the types that mixin, e.g. FixedAsset, you could do: MetadataStore.tag().typesThatMixin(“FixedAsset”)



jsDuck is used for documenting the UI, not really for documenting the type system



Actually jsDuck (<vanity_url>/static/jsduck/index.html) is used for documenting the C3 JavaScript Type System—it just doesn’t include the types.