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
- 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
- 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
- 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.