Skip to main content
`Ctrl`+`K`

# Converter

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

  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:
    field `Field`

      object describing the datatype

    config `python:dict`

      The parser configuration dictionary

    pos `python:tuple`

      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)

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

    Parameters:
      value

        The value, the native type corresponding to this converter

      mask bool

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

    Returns:
      bytes `bytes`

        The binary representation of the value, 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.

    Parameters:
      read python:function

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

    Returns:
      native(2,) `python:tuple`

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

  output(value, mask)

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

    Parameters:
      value

        The value, the native type corresponding to this converter

      mask bool

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

    Returns:
      tabledata_repr `unicode`
  parse(value, config=None, pos=None)

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

    Parameters:
      value `python:str`

        value in TABLEDATA format

    Returns:
      native `python:tuple`

        A two-element tuple of: 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)

    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:
      value `python:str`

        value in TABLEDATA format

    Returns:
      native(2,) `python:tuple`

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

  supports_empty_values(config)

    Returns True when the field can be completely empty.