bpod\_core.misc =============== .. automodule:: bpod_core.misc .. rubric:: Functions .. autosummary:: :nosignatures: :toctree: convert_to_snake_case get_local_ipv4 get_nested sanitize_string set_nested suggest_similar .. rubric:: Classes .. autosummary:: :nosignatures: :toctree: :template: custom-class-template.rst SettingsDict ValidatedDict ValidatedDict[Annotated[int, FieldInfo(annotation=NoneType, required=True, title='Index', json_schema_extra={'pattern': '^\\d+$'}, metadata=[Ge(ge=0)])], Condition] ValidatedDict[Annotated[int, FieldInfo(annotation=NoneType, required=True, title='Index', json_schema_extra={'pattern': '^\\d+$'}, metadata=[Ge(ge=0)])], GlobalCounter] ValidatedDict[Annotated[int, FieldInfo(annotation=NoneType, required=True, title='Index', json_schema_extra={'pattern': '^\\d+$'}, metadata=[Ge(ge=0)])], GlobalTimer] ValidatedDict[Annotated[str, FieldInfo(annotation=NoneType, required=True, title='Event', description='A state machine event', metadata=[MinLen(min_length=1)])], Union[Annotated[str, FieldInfo(annotation=NoneType, required=True, title='State Name', description='The name of the state', metadata=[MinLen(min_length=1), _PydanticGeneralMetadata(pattern=re.compile('^(?!>)(?!exit$).+$'))])], Annotated[str, FieldInfo(annotation=NoneType, required=True, title='Operator', description='A state machine operator', metadata=[_PydanticGeneralMetadata(pattern=re.compile('^(exit)|(>.+)$'))])]]] ValidatedDict[Annotated[str, FieldInfo(annotation=NoneType, required=True, title='Output Action Name', description='The name of the output action', metadata=[MinLen(min_length=1)])], Annotated[int, FieldInfo(annotation=NoneType, required=True, title='Output Action Value', description='The integer value of the output action', metadata=[Ge(ge=0), Le(le=255)])]] ValidatedDict[Annotated[str, FieldInfo(annotation=NoneType, required=True, title='State Name', description='The name of the state', metadata=[MinLen(min_length=1), _PydanticGeneralMetadata(pattern=re.compile('^(?!>)(?!exit$).+$'))])], State]