from tiramisu import *
from tiramisu.setting import ALLOWED_LEADER_PROPERTIES
from re import compile as re_compile
from rougail.tiramisu import func, dict_env, load_functions, ConvertDynOptionDescription
load_functions('../rougail-tests/funcs/test.py')
try:
    groups.namespace
except:
    groups.addgroup('namespace')
ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_1 = StrOption(name="var1", doc="first variable", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml'], 'type': 'string'})
option_3 = StrOption(name="var2", doc="a second variable", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml'], 'type': 'string', 'test': ('string6',)})
option_5 = StrOption(name="variable", doc="third variable", multi=True, default=[Calculation(func['calc_value'], Params((ParamOption(option_1)))), Calculation(func['calc_value'], Params((ParamOption(option_3))))], default_multi=Calculation(func['calc_value'], Params((ParamOption(option_1)))), properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml'], 'type': 'string'})
optiondescription_4 = OptionDescription(name="subfamily", doc="a sub family", children=[option_5], properties=frozenset({"standard"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml']})
optiondescription_2 = OptionDescription(name="family", doc="a family", children=[option_3, optiondescription_4], properties=frozenset({"basic"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml']})
option_7 = StrOption(name="var2", doc="a variable2", default=Calculation(func['calc_value'], Params((ParamOption(option_3)))), properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml'], 'type': 'string'})
option_8 = StrOption(name="var3", doc="var3", default="string4", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml'], 'type': 'string', 'test': ('string5',)})
option_10 = StrOption(name="variable", doc="fourth variable", multi=True, default=[Calculation(func['calc_value'], Params((ParamOption(option_1)))), Calculation(func['calc_value'], Params((ParamOption(option_3)))), Calculation(func['calc_value'], Params((ParamOption(option_8))))], default_multi=Calculation(func['calc_value'], Params((ParamOption(option_1)))), properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml'], 'type': 'string'})
optiondescription_9 = OptionDescription(name="subfamily", doc="a sub family", children=[option_10], properties=frozenset({"standard"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml']})
optiondescription_6 = OptionDescription(name="family2", doc="a family", children=[option_7, option_8, optiondescription_9], properties=frozenset({"standard"}), informations={'ymlfiles': ['../rougail-tests/structures/20_9family_absolute/rougail/00-base.yml']})
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1, optiondescription_2, optiondescription_6])
