gemd.entity.bounds.integer_bounds module

Bounds an integer to be between two values.

class gemd.entity.bounds.integer_bounds.IntegerBounds(lower_bound: int, upper_bound: int)

Bases: BaseBounds

Bounded subset of the integers, parameterized by a lower and upper bound.

Parameters
  • lower_bound (int) – The lower endpoint (inclusive) of the permitted range.

  • upper_bound (int) – The upper endpoint (inclusive) of the permitted range.

as_dict() Dict[str, Any]

Convert the object to a dictionary.

Returns

A dictionary representation of the object, where the keys are its fields.

Return type

dict

static build(d: Mapping[str, Any]) DictSerializableType

Build an object from a JSON dictionary.

This differs from from_dict in that the values themselves may also be dictionaries corresponding to serialized DictSerializable objects.

Parameters

d (dict) – The object as a serialized dictionary.

Returns

The deserialized object.

Return type

DictSerializable

contains(bounds: Union[BaseBounds, BaseValueType]) bool

Check if another bounds or value object is a subset of this range.

The other object must also be an Integer and its lower and upper bound must both be within the range of this bounds object.

Parameters

bounds (BaseBounds or BaseValue) – Other bounds or value object to check. If it’s a Value object, check against the smallest compatible bounds, as returned by the Value’s _to_bounds() method.

Returns

True if the other object is contained by this bounds.

Return type

bool

dump() Dict[str, Any]

Convert the object to a JSON dictionary, so that every entry is serialized.

Uses the json encoder client, so objects with uids are converted to LinkByUID dictionaries.

Returns

A string representation of the object as a dictionary.

Return type

str

classmethod from_dict(d: Mapping[str, Any]) DictSerializableType

Reconstitute the object from a dictionary.

Parameters

d (dict) – The object as a dictionary of key-value pairs that correspond to the object’s fields.

Returns

The deserialized object.

Return type

DictSerializable

union(*others: Union[IntegerBoundsType, IntegerValueType]) IntegerBoundsType

Return the union of this bounds and other bounds.

The others list must also be Integer Bounds or Values.

Parameters

others (IntegerBounds or IntegerValue) – Other bounds or value objects to include. If they’re Value objects, increase by the smallest compatible bounds, as returned by the value’s _to_bounds() method.

Returns

The union of this bounds and the passed bounds

Return type

IntegerBounds

update(*others: Union[IntegerBoundsType, IntegerValueType])

Update this bounds to include other bounds.

The others list must also be Integer Bounds or Values.

Parameters

others (IntegerBounds or IntegerValue) – Other bounds or value objects to include. If they’re Value objects, increase by the smallest compatible bounds, as returned by the value’s _to_bounds() method.

property lower_bound: int

The lower endpoint of the permitted range.

skip = {}
typ = 'integer_bounds'
property upper_bound: int

The upper endpoint of the permitted range.