BlobSet

class lsst.verify.BlobSet(blobs=None)

Bases: lsst.verify.jsonmixin.JsonSerializationMixin

A collection of Blobs.

Parameters:
blobs : list of lsst.verify.Blobs

Blobs to include in the set.

Attributes Summary

json A dict that can be serialized as JSON.

Methods Summary

deserialize([blobs]) Create a BlobSet from a parsed JSON dataset.
insert(blob) Insert a blob into the set.
items() Iterate over (identifier, Blob) pairs in the set.
jsonify_dict(d) Recursively build JSON-renderable objects on all values in a dict.
keys() Get a sequence of blob identifiers, which are keys to the BlobSet.
values() Get a new view of the BlobSet’s values.
write_json(filepath) Write JSON to a file.

Attributes Documentation

json

A dict that can be serialized as JSON.

Methods Documentation

classmethod deserialize(blobs=None)

Create a BlobSet from a parsed JSON dataset.

Parameters:
blobs : list, optional

A list of blob JSON serializations.

Returns:
instance : BlobSet

A BlobSet instance.

insert(blob)

Insert a blob into the set.

Parameters:
blob : Blob

Blob to insert into the set. It can be accessed by key from the BlobSet through its Blob.identifier string.

items()

Iterate over (identifier, Blob) pairs in the set.

Yields:
item : tuple

Tuple containing:

static jsonify_dict(d)

Recursively build JSON-renderable objects on all values in a dict.

Parameters:
d : dict

Dictionary to convert into a JSON-serializable object. Values are recursively JSON-ified.

Returns:
json_dict : dict

Dictionary that can be serialized to JSON.

Examples

Subclasses can use this method to prepare output in their json-method implementation. For example:

def json(self):
    return JsonSerializationMixin.jsonify_dict({
        'value': self.value,
    })
keys()

Get a sequence of blob identifiers, which are keys to the BlobSet.

Returns:
keys : sequence of str

Sequence of Blob.identifier.

values()

Get a new view of the BlobSet’s values.

Returns:
blob : iterable of lsst.verify.Blob

A collection of Blob objects that is updated when this object changes.

write_json(filepath)

Write JSON to a file.

Parameters:
filepath : str

Destination file name for JSON output.