Converter

class astropy.io.votable.converters.Converter(field, config=None, pos=None)[source]

Bases: object

The base class for all converters. Each subclass handles converting a specific VOTABLE data type to/from the TABLEDATA and BINARY on-disk representations.

Parameters
fieldField

object describing the datatype

configdict

The parser configuration dictionary

postuple

The position in the XML file where the FIELD object was found. Used for error messages.

Methods Summary

binoutput(value, mask)

Convert the object value in the native in-memory datatype to a string of bytes suitable for serialization in the BINARY format.

binparse(read)

Reads some number of bytes from the BINARY format representation by calling the function read, and returns the native in-memory object representation for the datatype handled by self.

output(value, mask)

Convert the object value (in the native in-memory datatype) to a unicode string suitable for serializing in the TABLEDATA format.

parse(value[, config, pos])

Convert the string value from the TABLEDATA format into an object with the correct native in-memory datatype and mask flag.

parse_scalar(value[, config, pos])

Parse a single scalar of the underlying type of the converter.

supports_empty_values(config)

Returns True when the field can be completely empty.

Methods Documentation

binoutput(value, mask)[source]

Convert the object value in the native in-memory datatype to a string of bytes suitable for serialization in the BINARY format.

Parameters
valuenative type corresponding to this converter

The value

maskbool

If True, will return the string representation of a masked value.

Returns
bytesbyte string

The binary representation of the value, suitable for serialization in the BINARY format.

binparse(read)[source]

Reads some number of bytes from the BINARY format representation by calling the function read, and returns the native in-memory object representation for the datatype handled by self.

Parameters
readfunction

A function that given a number of bytes, returns a byte string.

Returns
nativetuple (value, mask)

The value as a Numpy array or scalar, and mask is True if the value is missing.

output(value, mask)[source]

Convert the object value (in the native in-memory datatype) to a unicode string suitable for serializing in the TABLEDATA format.

Parameters
valuenative type corresponding to this converter

The value

maskbool

If True, will return the string representation of a masked value.

Returns
tabledata_reprunicode
parse(value, config=None, pos=None)[source]

Convert the string value from the TABLEDATA format into an object with the correct native in-memory datatype and mask flag.

Parameters
valuestr

value in TABLEDATA format

Returns
nativetuple (value, mask)

The value as a Numpy array or scalar, and mask is True if the value is missing.

parse_scalar(value, config=None, pos=None)[source]

Parse a single scalar of the underlying type of the converter. For non-array converters, this is equivalent to parse. For array converters, this is used to parse a single element of the array.

Parameters
valuestr

value in TABLEDATA format

Returns
nativetuple (value, mask)

The value as a Numpy array or scalar, and mask is True if the value is missing.

supports_empty_values(config)[source]

Returns True when the field can be completely empty.