form.types

Attributes

SubmissionState

RegistrationState

FormT

FieldT

Classes

FieldCondition

Base class for protocol classes.

Module Contents

class form.types.FieldCondition[BaseFormT: wtforms.form.BaseForm, FieldT: wtforms.fields.core.Field][source]

Bases: Protocol

Base class for protocol classes.

Protocol classes are defined as:

class Proto(Protocol):
    def meth(self) -> int:
        ...

Such classes are primarily used with static type checkers that recognize structural subtyping (static duck-typing).

For example:

class C:
    def meth(self) -> int:
        return 0

def func(x: Proto) -> int:
    return x.meth()

func(C())  # Passes static type check

See PEP 544 for details. Protocol classes decorated with @typing.runtime_checkable act as simple-minded runtime protocols that check only the presence of given attributes, ignoring their type signatures. Protocol classes can be generic, they are defined as:

class GenProto[T](Protocol):
    def meth(self) -> T:
        ...
__call__(form: BaseFormT, field: FieldT, /) bool[source]
type form.types.SubmissionState = Literal['pending', 'complete'][source]
type form.types.RegistrationState = Literal['open', 'cancelled', 'confirmed', 'partial'][source]
form.types.FormT[source]
form.types.FieldT[source]