rgeometry::algorithms::zhash

Trait ZHashable

Source
pub trait ZHashable: Sized {
    type ZHashKey: Copy;

    // Required methods
    fn zhash_key(zbox: ZHashBox<'_, Self>) -> Self::ZHashKey;
    fn zhash_fn(key: Self::ZHashKey, point: &Point<Self>) -> u64;
}

Required Associated Types§

Required Methods§

Source

fn zhash_key(zbox: ZHashBox<'_, Self>) -> Self::ZHashKey

Source

fn zhash_fn(key: Self::ZHashKey, point: &Point<Self>) -> u64

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl ZHashable for f64

Source§

type ZHashKey = (f64, f64, f64, f64)

Source§

fn zhash_key(zbox: ZHashBox<'_, f64>) -> Self::ZHashKey

Source§

fn zhash_fn(key: Self::ZHashKey, point: &Point<Self>) -> u64

Source§

impl ZHashable for i8

Source§

type ZHashKey = (i8, i8)

Source§

fn zhash_key(zbox: ZHashBox<'_, i8>) -> Self::ZHashKey

Source§

fn zhash_fn(key: Self::ZHashKey, point: &Point<Self>) -> u64

Source§

impl ZHashable for i64

Source§

type ZHashKey = (i64, i64, u32, u32)

Source§

fn zhash_key(zbox: ZHashBox<'_, i64>) -> Self::ZHashKey

Source§

fn zhash_fn(key: Self::ZHashKey, point: &Point<Self>) -> u64

Source§

impl ZHashable for u32

Source§

type ZHashKey = ()

Source§

fn zhash_key(_zbox: ZHashBox<'_, u32>) -> Self::ZHashKey

Source§

fn zhash_fn(_key: Self::ZHashKey, point: &Point<Self>) -> u64

Source§

impl ZHashable for u64

Source§

type ZHashKey = (u64, u64, u32, u32)

Source§

fn zhash_key(zbox: ZHashBox<'_, u64>) -> Self::ZHashKey

Source§

fn zhash_fn(key: Self::ZHashKey, point: &Point<Self>) -> u64

Implementors§