lisa.wlgen.rta.ParametricPhase#

class lisa.wlgen.rta.ParametricPhase(template=None, properties=None, **kwargs)[source]#

Bases: RTAPhaseTree

Base class for phases with special behavior beyond their properties.

Parameters:
Variable keyword arguments:

Forwarded to _make_children().

Extra behaviour is enabled by allowing this phase to have multiple children created based on the parameters.

Classes

DEFAULT_PHASE_CLS

If no template is passed, an instance of this class will be used as template.

Attributes

__reversed__ inherited

See collections.abc.Mapping.__reversed__

Properties

children inherited

Tree levels are transparent and their children expanded directly in their parent, as long as they have no properties on their own that could change the output of topo_sort(). This allows nested RTAPhaseTree to act as if it was just a flat node, which is useful since repeated composition with + operator will give nested binary trees like that.

is_empty inherited

True if the phase has no content and will result in an empty JSON phase(s).

phases inherited

Topological sort of the phases in the tree, with the properties merged along each path from the root to the leaves.

Methods

HASH_COERCE() inherited

Used to coerce the values of self.__dict__ to hashable values.

__add__() inherited

Compose two phases together by running one after the other.

__await__() inherited

__class_getitem__() inherited

See collections.abc.Iterable.__class_getitem__()

__contains__() inherited

See collections.abc.Mapping.__contains__()

__getitem__() inherited

Lookup the value of the given property on that phase.

__init_subclass__() inherited

Update the docstring used as a str.format() template with the following keys:.

__iter__() inherited

__len__() inherited

__mul__() inherited

Multiply the phase by n, in order to repeat it.

__rmul__() inherited

get() inherited

See collections.abc.Mapping.get()

get_rtapp_repr() inherited

rt-app JSON representation of the phase.

items() inherited

See collections.abc.Mapping.items()

keys() inherited

See collections.abc.Mapping.keys()

split_prop_kwargs() inherited

Split the kwargs into two categories:.

topo_sort() inherited

Topological sort of the tree, and combine the properties along each path from root to leaves at the same time.

values() inherited

See collections.abc.Mapping.values()

with_delete_props() inherited

Delete all the given property names, equivalent to with_props(foo=delete()).

with_phase_properties() inherited

Return a cloned instance with the properties combined with the given properties using RTAPhaseProperties.__and__() (&). The properties parameter is the left operand. If properties is None, just return the phase itself.

with_properties_map() inherited

Same as with_phase_properties() but with properties passed to RTAPhaseProperties.from_polymorphic() first.

with_props() inherited

Same as with_phase_properties() but using keyword arguments to set each property. The resulting dictionary is passed to RTAPhaseProperties.from_polymorphic() first.

Classes#

ParametricPhase.DEFAULT_PHASE_CLS#

If no template is passed, an instance of this class will be used as template.

alias of RTAPhase

Attributes#

ParametricPhase.__reversed__ = None#

Properties#

property ParametricPhase.children#

Inherited property, see lisa.wlgen.rta.RTAPhaseTree.children

Tree levels are transparent and their children expanded directly in their parent, as long as they have no properties on their own that could change the output of topo_sort(). This allows nested RTAPhaseTree to act as if it was just a flat node, which is useful since repeated composition with + operator will give nested binary trees like that.

property ParametricPhase.is_empty#

Inherited property, see lisa.wlgen.rta.RTAPhaseTree.is_empty

True if the phase has no content and will result in an empty JSON phase(s).

property ParametricPhase.phases#

Inherited property, see lisa.wlgen.rta.RTAPhaseTree.phases

Topological sort of the phases in the tree, with the properties merged along each path from the root to the leaves.

Methods#

ParametricPhase.HASH_COERCE(x, coerce)#

Inherited method, see lisa.utils.SimpleHash.HASH_COERCE()

Used to coerce the values of self.__dict__ to hashable values.

ParametricPhase.__add__(other)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.__add__()

Compose two phases together by running one after the other.

ParametricPhase.__await__()#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.__await__()

classmethod ParametricPhase.__class_getitem__()#

Inherited method, see collections.abc.Iterable.__class_getitem__()

ParametricPhase.__contains__()#

Inherited method, see collections.abc.Mapping.__contains__()

ParametricPhase.__getitem__(key)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.__getitem__()

Lookup the value of the given property on that phase.

classmethod ParametricPhase.__init_subclass__(**kwargs)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.__init_subclass__()

Update the docstring used as a str.format() template with the following keys:.

ParametricPhase.__iter__()#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.__iter__()

ParametricPhase.__len__()#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.__len__()

ParametricPhase.__mul__(n)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.__mul__()

Multiply the phase by n, in order to repeat it.

ParametricPhase.__rmul__(n)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.__rmul__()

ParametricPhase.get()#

Inherited method, see collections.abc.Mapping.get()

ParametricPhase.get_rtapp_repr(task_name, plat_info, force_defaults=False, no_force_default_keys=None, **kwargs)#

Inherited method, see lisa.wlgen.rta.RTAPhaseTree.get_rtapp_repr()

rt-app JSON representation of the phase.

ParametricPhase.items()#

Inherited method, see collections.abc.Mapping.items()

ParametricPhase.keys()#

Inherited method, see collections.abc.Mapping.keys()

static ParametricPhase.split_prop_kwargs(kwargs, properties=None)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.split_prop_kwargs()

Split the kwargs into two categories:.

ParametricPhase.topo_sort()#

Inherited method, see lisa.wlgen.rta.RTAPhaseTree.topo_sort()

Topological sort of the tree, and combine the properties along each path from root to leaves at the same time.

ParametricPhase.values()#

Inherited method, see collections.abc.Mapping.values()

ParametricPhase.with_delete_props(properties)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.with_delete_props()

Delete all the given property names, equivalent to with_props(foo=delete()).

ParametricPhase.with_phase_properties(properties)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.with_phase_properties()

Return a cloned instance with the properties combined with the given properties using RTAPhaseProperties.__and__() (&). The properties parameter is the left operand. If properties is None, just return the phase itself.

ParametricPhase.with_properties_map(properties, **kwargs)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.with_properties_map()

Same as with_phase_properties() but with properties passed to RTAPhaseProperties.from_polymorphic() first.

ParametricPhase.with_props(**kwargs)#

Inherited method, see lisa.wlgen.rta.RTAPhaseBase.with_props()

Same as with_phase_properties() but using keyword arguments to set each property. The resulting dictionary is passed to RTAPhaseProperties.from_polymorphic() first.