DynamicSpace.formula#

property DynamicSpace.formula#

The formula that defines parameter behavior for this space.

For parameterized spaces, the formula is a Python function that defines:

  • The parameter names (from function signature)

  • Optional logic for selecting base spaces for ItemSpace instances

  • Optional logic for setting references in ItemSpaces

The formula can return:

  • None (default): Use this space as base with no extra refs

  • dict: Specify 'base' space and/or 'refs' to add

Returns:

The formula object, or None if not parameterized

Return type:

Formula or None

Example

>>> # Simple parameterization
>>> space.formula = lambda x, y: None
>>> space.parameters
('x', 'y')

>>> # Advanced: select base space dynamically
>>> @mx.defcells
... def param_formula(product_type):
...     if product_type == 'A':
...         return {'base': BaseA}
...     else:
...         return {'base': BaseB}
>>> space.formula = param_formula

See also

Note

For UserSpace, this can be get, set, or deleted. For dynamic spaces, this reflects the base space’s formula.