tiramisu/docs/dynoptiondescription.rst

60 lines
1.6 KiB
ReStructuredText
Raw Normal View History

2023-12-17 21:22:52 +01:00
==========================================================
Dynamic option description: :class:`DynOptionDescription`
==========================================================
Dynamic option description
==============================================
Dynamic option description is an :class:`OptionDescription` which multiplies according to the return of a function.
.. list-table::
:widths: 15 45
:header-rows: 1
* - Parameter
- Comments
* - name
- The `name` is important to retrieve this option.
* - doc
- The `description` allows the user to understand where this option will be used for.
* - children
- The list of children (Option) include inside.
Note:: the option can be an :doc:`option` or an other option description
* - suffixes
- Suffixes is a :doc:`calculation` that return the list of suffixes used to create dynamic option description.
* - properties
- A list of :doc:`property` (inside a frozenset().
Example
==============
Let's try:
>>> from tiramisu import StrOption, DynOptionDescription, Calculation
>>> def return_suffixes():
... return ['1', '2']
>>> child1 = StrOption('first', 'First basic option ')
>>> child2 = StrOption('second', 'Second basic option ')
>>> DynOptionDescription('basic ',
... 'Basic options ',
... [child1, child2],
... Calculation(return_suffixes))
This example will construct:
- Basic options 1:
- First basic option 1
- Second basic option 1
- Basic options 2:
- First basic option 2
- Second basic option 2