Struct kitsune_p2p_dht::region::RegionCoords
source · pub struct RegionCoords {
pub space: SpaceSegment,
pub time: TimeSegment,
}
Expand description
The cross product of a space segment and at time segment forms a Region. Hence, these two segments are the coordinates which define a Region of spacetime.
Fields§
§space: SpaceSegment
The space segment
time: TimeSegment
The time segment
Implementations§
source§impl RegionCoords
impl RegionCoords
pub fn new(space: SpaceSegment, time: TimeSegment) -> RegionCoords
source§impl RegionCoords
impl RegionCoords
sourcepub fn to_bounds(&self, topo: &Topology) -> RegionBounds
pub fn to_bounds(&self, topo: &Topology) -> RegionBounds
Map the quantized coordinates into the actual Timestamp and DhtLocation bounds specifying the region
sourcepub fn contains(&self, topo: &Topology, coords: &SpacetimeQuantumCoords) -> bool
pub fn contains(&self, topo: &Topology, coords: &SpacetimeQuantumCoords) -> bool
Does the region contain this spacetime quantum?
sourcepub fn quadrisect(self) -> Option<Vec<Self>>
pub fn quadrisect(self) -> Option<Vec<Self>>
Split this region into 4 equal subregions, if possible. If one dimension is quantum, bisect the non-quantum dimension. If both dimensions are quantum, return None.
Trait Implementations§
source§impl Clone for RegionCoords
impl Clone for RegionCoords
source§fn clone(&self) -> RegionCoords
fn clone(&self) -> RegionCoords
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for RegionCoords
impl Debug for RegionCoords
source§impl<'de> Deserialize<'de> for RegionCoords
impl<'de> Deserialize<'de> for RegionCoords
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Hash for RegionCoords
impl Hash for RegionCoords
source§impl Ord for RegionCoords
impl Ord for RegionCoords
source§fn cmp(&self, other: &RegionCoords) -> Ordering
fn cmp(&self, other: &RegionCoords) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere Self: Sized,
Compares and returns the maximum of two values. Read more
source§impl PartialEq<RegionCoords> for RegionCoords
impl PartialEq<RegionCoords> for RegionCoords
source§fn eq(&self, other: &RegionCoords) -> bool
fn eq(&self, other: &RegionCoords) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd<RegionCoords> for RegionCoords
impl PartialOrd<RegionCoords> for RegionCoords
source§fn partial_cmp(&self, other: &RegionCoords) -> Option<Ordering>
fn partial_cmp(&self, other: &RegionCoords) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§impl Serialize for RegionCoords
impl Serialize for RegionCoords
impl Copy for RegionCoords
impl Eq for RegionCoords
impl StructuralEq for RegionCoords
impl StructuralPartialEq for RegionCoords
Auto Trait Implementations§
impl RefUnwindSafe for RegionCoords
impl Send for RegionCoords
impl Sync for RegionCoords
impl Unpin for RegionCoords
impl UnwindSafe for RegionCoords
Blanket Implementations§
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.