API Documentation ================= Validator Class --------------- .. autoclass:: cerberus.Validator :members: allow_unknown, clear_caches, document, document_error_tree, document_path, _drop_remaining_rules, _error, error_handler, _errors, errors, _get_child_validator, ignore_none_values, is_child, _lookup_field, mandatory_validations, normalized, priority_validations, purge_unknown, recent_error, require_all, _remaining_rules, root_allow_unknown, root_document, root_require_all, root_schema, rules_set_registry, schema, schema_error_tree, schema_path, schema_registry, types, types_mapping, _valid_schemas, validate, validated Rules Set & Schema Registry --------------------------- .. autoclass:: cerberus.schema.Registry :members: Type Definitions ---------------- .. autoclass:: cerberus.TypeDefinition Error Handlers -------------- .. autoclass:: cerberus.errors.BaseErrorHandler :members: :private-members: :special-members: .. autoclass:: cerberus.errors.BasicErrorHandler Python Error Representations ---------------------------- .. autoclass:: cerberus.errors.ErrorDefinition .. autoclass:: cerberus.errors.ValidationError :members: .. _error-codes: Error Codes ~~~~~~~~~~~ Its :attr:`code` attribute uniquely identifies an :class:`~cerberus.errors.ErrorDefinition` that is used a concrete error's :attr:`~cerberus.errors.ValidationError.code`. Some codes are actually reserved to mark a shared property of different errors. These are useful as bitmasks while processing errors. This is the list of the reserved codes: ============= ======== === =================================================== ``0110 0000`` ``0x60`` 96 An error that occurred during normalization. ``1000 0000`` ``0x80`` 128 An error that contains child errors. ``1001 0000`` ``0x90`` 144 An error that was emitted by one of the \*of-rules. ============= ======== === =================================================== None of these bits in the upper nibble must be used to enumerate error definitions, but only to mark one with the associated property. .. important:: Users are advised to set bit 8 for self-defined errors. So the code ``0001 0000 0001`` / ``0x101`` would the first in a domain-specific set of error definitions. This is a list of all error defintions that are shipped with the :mod:`~cerberus.errors` module: .. include:: includes/error-codes.rst Error Containers ~~~~~~~~~~~~~~~~ .. autoclass:: cerberus.errors.ErrorList .. autoclass:: cerberus.errors.ErrorTree :members: .. autoclass:: cerberus.errors.DocumentErrorTree .. autoclass:: cerberus.errors.SchemaErrorTree Exceptions ---------- .. autoexception:: cerberus.SchemaError .. autoexception:: cerberus.DocumentError Utilities --------- .. automodule:: cerberus.utils :members: .. _schema-validation-schema: Schema Validation Schema ------------------------ Against this schema validation schemas given to a vanilla :class:`~cerberus.Validator` will be validated: .. include:: includes/schema-validation-schema.rst