Parsing and type enforcement for XML serialization (sarpy.io.xml.descriptors)

This module contains the base objects for use in base xml/serializable functionality.

class sarpy.io.xml.descriptors.BasicDescriptor(name, required, strict=False, default_value=None, docstring='')

Bases: object

A descriptor object for reusable properties. Note that it is required that the calling instance is hashable.

class sarpy.io.xml.descriptors.StringDescriptor(name, required, strict=False, default_value=None, docstring=None)

Bases: BasicDescriptor

A descriptor for string type

class sarpy.io.xml.descriptors.StringListDescriptor(name, required, strict=False, minimum_length=None, maximum_length=None, default_value=None, docstring=None)

Bases: BasicDescriptor

A descriptor for properties for an array type item for specified extension of string

class sarpy.io.xml.descriptors.StringEnumDescriptor(name, values, required, strict=False, default_value=None, docstring=None)

Bases: BasicDescriptor

A descriptor for enumerated (specified) string type. This implicitly assumes that the valid entries are upper case.

class sarpy.io.xml.descriptors.StringRegexDescriptor(name, pattern, required, strict=False, default_value=None, docstring=None)

Bases: BasicDescriptor

A descriptor for a string matching a regex.

class sarpy.io.xml.descriptors.BooleanDescriptor(name, required, strict=False, default_value=None, docstring=None)

Bases: BasicDescriptor

A descriptor for boolean type

class sarpy.io.xml.descriptors.IntegerDescriptor(name, required, strict=False, bounds=None, default_value=None, docstring=None)

Bases: BasicDescriptor

A descriptor for integer type

class sarpy.io.xml.descriptors.IntegerEnumDescriptor(name, values, required, strict=False, default_value=None, docstring=None)

Bases: BasicDescriptor

A descriptor for enumerated (specified) integer type

class sarpy.io.xml.descriptors.IntegerListDescriptor(name, tag_dict, required, strict=False, minimum_length=None, maximum_length=None, docstring=None)

Bases: BasicDescriptor

A descriptor for integer list type properties

class sarpy.io.xml.descriptors.FloatDescriptor(name, required, strict=False, bounds=None, default_value=None, docstring=None)

Bases: BasicDescriptor

A descriptor for float type properties

class sarpy.io.xml.descriptors.FloatListDescriptor(name, tag_dict, required, strict=False, minimum_length=None, maximum_length=None, docstring=None)

Bases: BasicDescriptor

A descriptor for float list type properties

class sarpy.io.xml.descriptors.ComplexDescriptor(name, required, strict=False, default_value=None, docstring=None)

Bases: BasicDescriptor

A descriptor for complex valued properties

class sarpy.io.xml.descriptors.FloatArrayDescriptor(name, tag_dict, required, strict=False, minimum_length=None, maximum_length=None, docstring=None)

Bases: BasicDescriptor

A descriptor for float array type properties

class sarpy.io.xml.descriptors.DateTimeDescriptor(name, required, strict=False, docstring=None, numpy_datetime_units='us')

Bases: BasicDescriptor

A descriptor for date time type properties

class sarpy.io.xml.descriptors.FloatModularDescriptor(name, limit, required, strict=False, docstring=None)

Bases: BasicDescriptor

A descriptor for float type which will take values in a range [-limit, limit], set using modular arithmetic operations

class sarpy.io.xml.descriptors.SerializableDescriptor(name, the_type, required, strict=False, docstring=None)

Bases: BasicDescriptor

A descriptor for properties of a specified type assumed to be an extension of Serializable

class sarpy.io.xml.descriptors.UnitVectorDescriptor(name, the_type, required, strict=False, docstring=None)

Bases: BasicDescriptor

A descriptor for properties of a specified type assumed to be of subtype of Arrayable

class sarpy.io.xml.descriptors.ParametersDescriptor(name, tag_dict, required, strict=False, docstring=None)

Bases: BasicDescriptor

A descriptor for properties of a Parameter type - that is, dictionary

class sarpy.io.xml.descriptors.SerializableListDescriptor(name, child_type, tag_dict, required, strict=False, docstring=None)

Bases: BasicDescriptor

A descriptor for properties of a list or array of specified extension of Serializable

class sarpy.io.xml.descriptors.SerializableArrayDescriptor(name, child_type, tag_dict, required, strict=False, minimum_length=None, maximum_length=None, docstring=None, array_extension=<class 'sarpy.io.xml.base.SerializableArray'>)

Bases: BasicDescriptor

A descriptor for properties of a list or array of specified extension of Serializable