OpenQuizz
Une application de gestion des contenus pédagogiques
|
Data Structures | |
class | Unset |
class | URIDict |
Functions | |
def | load_schema (name) |
def | indent (string, times=1) |
def | format_as_index (indices) |
def | find_additional_properties (instance, schema) |
def | extras_msg (extras) |
def | types_msg (instance, types) |
def | flatten (suitable_for_isinstance) |
def | ensure_list (thing) |
def | equal (one, two) |
def | unbool (element, true=object(), false=object()) |
def | uniq (container) |
def jsonschema._utils.ensure_list | ( | thing | ) |
Wrap ``thing`` in a list if it's a single str. Otherwise, return it unchanged.
def jsonschema._utils.equal | ( | one, | |
two | |||
) |
Check if two things are equal, but evade booleans and ints being equal.
def jsonschema._utils.extras_msg | ( | extras | ) |
Create an error message for extra items or properties.
def jsonschema._utils.find_additional_properties | ( | instance, | |
schema | |||
) |
Return the set of additional properties for the given ``instance``. Weeds out properties that should have been validated by ``properties`` and / or ``patternProperties``. Assumes ``instance`` is dict-like already.
def jsonschema._utils.flatten | ( | suitable_for_isinstance | ) |
isinstance() can accept a bunch of really annoying different types: * a single type * a tuple of types * an arbitrary nested tree of tuples Return a flattened tuple of the given argument.
def jsonschema._utils.format_as_index | ( | indices | ) |
Construct a single string containing indexing operations for the indices. For example, [1, 2, "foo"] -> [1][2]["foo"] Arguments: indices (sequence): The indices to format.
def jsonschema._utils.indent | ( | string, | |
times = 1 |
|||
) |
A dumb version of `textwrap.indent` from Python 3.3.
def jsonschema._utils.load_schema | ( | name | ) |
Load a schema from ./schemas/``name``.json and return it.
def jsonschema._utils.types_msg | ( | instance, | |
types | |||
) |
Create an error message for a failure to match the given types. If the ``instance`` is an object and contains a ``name`` property, it will be considered to be a description of that object and used as its type. Otherwise the message is simply the reprs of the given ``types``.
def jsonschema._utils.unbool | ( | element, | |
true = object() , |
|||
false = object() |
|||
) |
A hack to make True and 1 and False and 0 unique for ``uniq``.
def jsonschema._utils.uniq | ( | container | ) |
Check if all of a container's elements are unique. Successively tries first to rely that the elements are hashable, then falls back on them being sortable, and finally falls back on brute force.