nemoguardrails.colang.v2_x.lang.expansion

View as Markdown

Module Contents

Functions

API

nemoguardrails.colang.v2_x.lang.expansion._create_member_ast_dict_helper(
name: str,
arguments: dict
) -> list
nemoguardrails.colang.v2_x.lang.expansion._create_ref_ast_dict_helper(
ref_name: str
) -> dict
nemoguardrails.colang.v2_x.lang.expansion._expand_activate_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.SpecOp
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_assignment_stmt_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.Assignment
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_await_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.SpecOp
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_deactivate_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.SpecOp
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_element_group(
element: nemoguardrails.colang.v2_x.lang.colang_ast.SpecOp
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_if_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.If,
flow_configs: typing.Dict[str, nemoguardrails.colang.v2_x.runtime.flows.FlowConfig]
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_match_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.SpecOp
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_send_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.SpecOp
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_start_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.SpecOp
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_stop_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.SpecOp
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_when_stmt_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.When,
flow_configs: typing.Dict[str, nemoguardrails.colang.v2_x.runtime.flows.FlowConfig]
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion._expand_while_stmt_element(
element: nemoguardrails.colang.v2_x.lang.colang_ast.While,
flow_configs: typing.Dict[str, nemoguardrails.colang.v2_x.runtime.flows.FlowConfig]
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]
nemoguardrails.colang.v2_x.lang.expansion.expand_elements(
elements: typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType],
flow_configs: typing.Dict[str, nemoguardrails.colang.v2_x.runtime.flows.FlowConfig],
continue_break_labels: typing.Optional[typing.Tuple[str, str]] = None
) -> typing.List[nemoguardrails.colang.v2_x.lang.colang_ast.ElementType]

Iterates through all elements and expands/replaces them according to the rules.

nemoguardrails.colang.v2_x.lang.expansion.flatten_or_group(
group: dict
)

Flattens a group that has multiple or levels to a single one.

nemoguardrails.colang.v2_x.lang.expansion.normalize_element_groups(
group: typing.Union[nemoguardrails.colang.v2_x.lang.colang_ast.Spec, dict]
) -> dict

Normalize groups to the disjunctive normal form (DNF), resulting in a single or group that contains multiple and groups.