ItemSpace.bases#
- property ItemSpace.bases#
List of base spaces from which this space inherits.
Returns a list of
UserSpaceobjects that serve as base spaces for this space. Spaces inherit cells and references from their base spaces, following Python’s Method Resolution Order (MRO) for multiple inheritance.When a space has base spaces:
Cells defined in base spaces are copied in the derived space
References from base spaces are copied in the derived space
Derived spaces can override inherited cells and references
Multiple bases are resolved using C3 linearization algorithm
- Returns:
Base spaces in MRO order
- Return type:
list of
UserSpace
Example
>>> base1 = model.new_space('Base1') >>> base2 = model.new_space('Base2') >>> derived = model.new_space('Derived') >>> derived.add_bases(base1, base2) >>> derived.bases [<UserSpace Model1.Base1>, <UserSpace Model1.Base2>] >>> base0 = model.new_space('Base0') >>> base1.add_bases(base0) >>> derived.bases [<UserSpace Model1.Base1>, <UserSpace Model1.Base0>, <UserSpace Model1.Base2>]
See also
add_bases(): Add base spacesremove_bases(): Remove base spaces_direct_bases: Only directly added bases