mbfl_default_object ¶Return true if the class of DEFOBJ is DEFCLS or a subclass of DEFCLS.
Given the class diagram, in which not all the connections are depicted:
-------------------------------------------------------------------
| metaclass |
| |
-class--------------- |
| mbfl_default_object |<-----------+--------------------------- |
--------------------- | | |
^ | | |
| superclass | superclass | superclass |
| | | |
-class-------------------- -class-- metaclass -metaclass---------- |
| mbfl_predefined_constant | | colour |------------>| mbfl_default_class | |
-------------------------- -------- -------------------- |
^ ^ |
| class | superclass |
| | |
-instance-------- | -metaclass------------------- |
| DARK_SLATE_GRAY |------------ | mbfl_default_abstract_class |<-
----------------- -----------------------------
we can understand the following code:
mbfl_default_class_declare(COLOUR) mbfl_default_object_declare(DARK_SLATE_BLUE) mbfl_default_class_define _(COLOUR) _(mbfl_default_object) 'colour' r g b colour_define _(DARK_SLATE_BLUE) 72 61 139 mbfl_default_object_is_a _(DARK_SLATE_BLUE) _(mbfl_default_object) ⇒ true mbfl_default_object_is_a _(DARK_SLATE_BLUE) _(COLOUR) ⇒ true mbfl_default_object_is_a _(DARK_SLATE_BLUE) _(mbfl_predefined_constant) ⇒ false mbfl_default_object_is_a _(DARK_SLATE_BLUE) _(mbfl_default_class) ⇒ false mbfl_default_object_is_a _(DARK_SLATE_BLUE) _(mbfl_default_abstract_class) ⇒ false mbfl_default_object_is_a _(COLOUR) _(mbfl_default_object) ⇒ true mbfl_default_object_is_a _(COLOUR) _(mbfl_default_class) ⇒ true mbfl_default_object_is_a _(COLOUR) _(mbfl_default_abstract_class) ⇒ false
There are also the following cases:
mbfl_default_object_is_a _(mbfl_default_object) _(mbfl_default_object) ⇒ true mbfl_default_object_is_a _(mbfl_default_object) _(mbfl_default_class) ⇒ true mbfl_default_object_is_a _(mbfl_default_object) _(mbfl_default_abstract_class) ⇒ true mbfl_default_object_is_a _(mbfl_default_class) _(mbfl_default_object) ⇒ true mbfl_default_object_is_a _(mbfl_default_class) _(mbfl_default_class) ⇒ true mbfl_default_object_is_a _(mbfl_default_class) _(mbfl_default_abstract_class) ⇒ false mbfl_default_object_is_a _(mbfl_default_abstract_class) _(mbfl_default_object) ⇒ true mbfl_default_object_is_a _(mbfl_default_abstract_class) _(mbfl_default_class) ⇒ true mbfl_default_object_is_a _(mbfl_default_abstract_class) _(mbfl_default_abstract_class) ⇒ false
This document describes version 3.0.0-devel.9 of Marcos Bash Functions Library.