Trait Hash

1.0.0 · Source
pub trait Hash {
    // Required method
    fn hash<H>(&self, state: &mut H)
       where H: Hasher;

    // Provided method
    fn hash_slice<H>(data: &[Self], state: &mut H)
       where H: Hasher,
             Self: Sized { ... }
}
Expand description

core A hashable type.

Types implementing Hash are able to be hashed with an instance of Hasher.

§Implementing Hash

You can derive Hash with #[derive(Hash)] if all fields implement Hash. The resulting hash will be the combination of the values from calling hash on each field.

#[derive(Hash)]
struct Rustacean {
    name: String,
    country: String,
}

If you need more control over how a value is hashed, you can of course implement the Hash trait yourself:

use std::hash::{Hash, Hasher};

struct Person {
    id: u32,
    name: String,
    phone: u64,
}

impl Hash for Person {
    fn hash<H: Hasher>(&self, state: &mut H) {
        self.id.hash(state);
        self.phone.hash(state);
    }
}

§Hash and Eq

When implementing both Hash and Eq, it is important that the following property holds:

k1 == k2 -> hash(k1) == hash(k2)

In other words, if two keys are equal, their hashes must also be equal. HashMap and HashSet both rely on this behavior.

Thankfully, you won’t need to worry about upholding this property when deriving both Eq and Hash with #[derive(PartialEq, Eq, Hash)].

Violating this property is a logic error. The behavior resulting from a logic error is not specified, but users of the trait must ensure that such logic errors do not result in undefined behavior. This means that unsafe code must not rely on the correctness of these methods.

§Prefix collisions

Implementations of hash should ensure that the data they pass to the Hasher are prefix-free. That is, values which are not equal should cause two different sequences of values to be written, and neither of the two sequences should be a prefix of the other.

For example, the standard implementation of Hash for &str passes an extra 0xFF byte to the Hasher so that the values ("ab", "c") and ("a", "bc") hash differently.

§Portability

Due to differences in endianness and type sizes, data fed by Hash to a Hasher should not be considered portable across platforms. Additionally the data passed by most standard library types should not be considered stable between compiler versions.

This means tests shouldn’t probe hard-coded hash values or data fed to a Hasher and instead should check consistency with Eq.

Serialization formats intended to be portable between platforms or compiler versions should either avoid encoding hashes or only rely on Hash and Hasher implementations that provide additional guarantees.

Required Methods§

1.0.0 · Source

fn hash<H>(&self, state: &mut H)
where H: Hasher,

Feeds this value into the given Hasher.

§Examples
use std::hash::{DefaultHasher, Hash, Hasher};

let mut hasher = DefaultHasher::new();
7920.hash(&mut hasher);
println!("Hash is {:x}!", hasher.finish());

Provided Methods§

1.3.0 · Source

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher.

This method is meant as a convenience, but its implementation is also explicitly left unspecified. It isn’t guaranteed to be equivalent to repeated calls of hash and implementations of Hash should keep that in mind and call hash themselves if the slice isn’t treated as a whole unit in the PartialEq implementation.

For example, a VecDeque implementation might naïvely call as_slices and then hash_slice on each slice, but this is wrong since the two slices can change with a call to make_contiguous without affecting the PartialEq result. Since these slices aren’t treated as singular units, and instead part of a larger deque, this method cannot be used.

§Examples
use std::hash::{DefaultHasher, Hash, Hasher};

let mut hasher = DefaultHasher::new();
let numbers = [6, 28, 496, 8128];
Hash::hash_slice(&numbers, &mut hasher);
println!("Hash is {:x}!", hasher.finish());

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.

Implementors§

Source§

impl Hash for devela::_core::ascii::Char

Source§

impl Hash for Ipv6MulticastScope

§

impl Hash for CheckedCastError

§

impl Hash for PodCastError

§

impl Hash for devela::_dep::crossterm::event::Event

§

impl Hash for devela::_dep::crossterm::event::KeyCode

§

impl Hash for KeyEventKind

§

impl Hash for MediaKeyCode

§

impl Hash for ModifierKeyCode

§

impl Hash for devela::_dep::crossterm::event::MouseButton

§

impl Hash for MouseEventKind

§

impl Hash for Attribute

§

impl Hash for devela::_dep::crossterm::style::Color

§

impl Hash for Colored

§

impl Hash for ClearType

§

impl Hash for FltkErrorKind

§

impl Hash for devela::_dep::gilrs::Axis

§

impl Hash for devela::_dep::gilrs::Button

§

impl Hash for AxisOrBtn

§

impl Hash for ColorType

§

impl Hash for ExtendedColorType

§

impl Hash for ImageFormat

§

impl Hash for ImageFormatHint

§

impl Hash for LimitErrorKind

§

impl Hash for ParameterErrorKind

§

impl Hash for UnsupportedErrorKind

§

impl Hash for devela::_dep::image::flat::Error

§

impl Hash for NormalForm

§

impl Hash for FilterType

§

impl Hash for devela::_dep::image::metadata::Orientation

§

impl Hash for Era

§

impl Hash for Weekday

§

impl Hash for RoundMode

§

impl Hash for Unit

§

impl Hash for Meridiem

§

impl Hash for PiecesOffset

§

impl Hash for Dst

§

impl Hash for EqFilterKind

§

impl Hash for WhenToStart

§

impl Hash for PlaybackState

§

impl Hash for TrackPlaybackState

§

impl Hash for CursorIcon

§

impl Hash for FilterMode

§

impl Hash for devela::_dep::miniquad::KeyCode

§

impl Hash for MipmapFilterMode

§

impl Hash for devela::_dep::miniquad::MouseButton

§

impl Hash for RawId

§

impl Hash for TextureFormat

§

impl Hash for TouchPhase

§

impl Hash for devela::_dep::miniquad::log::Level

§

impl Hash for HostId

§

impl Hash for IoringMsgringCmds

§

impl Hash for IoringOp

§

impl Hash for IoringRegisterOp

§

impl Hash for IoringRestrictionOp

§

impl Hash for Direction

§

impl Hash for Shutdown

§

impl Hash for SocketAddrAny

§

impl Hash for Timeout

§

impl Hash for Action

§

impl Hash for OptionalActions

§

impl Hash for QueueSelector

§

impl Hash for devela::_dep::rustix::thread::ClockId

§

impl Hash for TimerfdClockId

§

impl Hash for devela::_dep::sdl2::audio::AudioFormat

§

impl Hash for AudioStatus

§

impl Hash for devela::_dep::sdl2::controller::Axis

§

impl Hash for devela::_dep::sdl2::controller::Button

§

impl Hash for devela::_dep::sdl2::controller::MappingStatus

§

impl Hash for devela::_dep::sdl2::Error

§

impl Hash for devela::_dep::sdl2::event::DisplayEvent

§

impl Hash for devela::_dep::sdl2::event::EventType

§

impl Hash for devela::_dep::sdl2::event::WindowEvent

§

impl Hash for devela::_dep::sdl2::joystick::HatState

§

impl Hash for devela::_dep::sdl2::joystick::PowerLevel

§

impl Hash for devela::_dep::sdl2::keyboard::Scancode

§

impl Hash for tpacket_versions

§

impl Hash for devela::_dep::sdl2::log::Category

§

impl Hash for devela::_dep::sdl2::log::Priority

§

impl Hash for Fading

§

impl Hash for MusicType

§

impl Hash for devela::_dep::sdl2::mouse::MouseButton

§

impl Hash for devela::_dep::sdl2::mouse::MouseWheelDirection

§

impl Hash for devela::_dep::sdl2::mouse::SystemCursor

§

impl Hash for PixelFormatEnum

§

impl Hash for devela::_dep::sdl2::render::BlendMode

§

impl Hash for devela::_dep::sdl2::render::TextureAccess

§

impl Hash for devela::_dep::sdl2::sys::SDL_ArrayOrder

§

impl Hash for devela::_dep::sdl2::sys::SDL_AssertState

§

impl Hash for SDL_AudioStatus

§

impl Hash for devela::_dep::sdl2::sys::SDL_BitmapOrder

§

impl Hash for devela::_dep::sdl2::sys::SDL_BlendFactor

§

impl Hash for SDL_BlendMode

§

impl Hash for devela::_dep::sdl2::sys::SDL_BlendOperation

§

impl Hash for SDL_DUMMY_ENUM

§

impl Hash for SDL_DisplayEventID

§

impl Hash for devela::_dep::sdl2::sys::SDL_DisplayOrientation

§

impl Hash for devela::_dep::sdl2::sys::SDL_EventType

§

impl Hash for devela::_dep::sdl2::sys::SDL_FlashOperation

§

impl Hash for SDL_GLContextResetNotification

§

impl Hash for SDL_GLattr

§

impl Hash for SDL_GLcontextFlag

§

impl Hash for SDL_GLcontextReleaseFlag

§

impl Hash for SDL_GLprofile

§

impl Hash for SDL_GameControllerAxis

§

impl Hash for SDL_GameControllerBindType

§

impl Hash for SDL_GameControllerButton

§

impl Hash for SDL_GameControllerType

§

impl Hash for devela::_dep::sdl2::sys::SDL_HintPriority

§

impl Hash for devela::_dep::sdl2::sys::SDL_HitTestResult

§

impl Hash for SDL_JoystickPowerLevel

§

impl Hash for devela::_dep::sdl2::sys::SDL_JoystickType

§

impl Hash for SDL_KeyCode

§

impl Hash for SDL_Keymod

§

impl Hash for devela::_dep::sdl2::sys::SDL_LogCategory

§

impl Hash for devela::_dep::sdl2::sys::SDL_LogPriority

§

impl Hash for SDL_MessageBoxButtonFlags

§

impl Hash for devela::_dep::sdl2::sys::SDL_MessageBoxColorType

§

impl Hash for SDL_MessageBoxFlags

§

impl Hash for devela::_dep::sdl2::sys::SDL_MouseWheelDirection

§

impl Hash for devela::_dep::sdl2::sys::SDL_PackedLayout

§

impl Hash for devela::_dep::sdl2::sys::SDL_PackedOrder

§

impl Hash for SDL_PixelFormatEnum

§

impl Hash for devela::_dep::sdl2::sys::SDL_PixelType

§

impl Hash for devela::_dep::sdl2::sys::SDL_PowerState

§

impl Hash for SDL_RendererFlags

§

impl Hash for SDL_RendererFlip

§

impl Hash for SDL_SYSWM_TYPE

§

impl Hash for devela::_dep::sdl2::sys::SDL_ScaleMode

§

impl Hash for devela::_dep::sdl2::sys::SDL_Scancode

§

impl Hash for devela::_dep::sdl2::sys::SDL_SensorType

§

impl Hash for devela::_dep::sdl2::sys::SDL_SystemCursor

§

impl Hash for devela::_dep::sdl2::sys::SDL_TextureAccess

§

impl Hash for SDL_TextureModulate

§

impl Hash for devela::_dep::sdl2::sys::SDL_ThreadPriority

§

impl Hash for devela::_dep::sdl2::sys::SDL_TouchDeviceType

§

impl Hash for SDL_WindowEventID

§

impl Hash for SDL_WindowFlags

§

impl Hash for SDL_YUV_CONVERSION_MODE

§

impl Hash for SDL_bool

§

impl Hash for SDL_errorcode

§

impl Hash for SDL_eventaction

§

impl Hash for WindowShapeMode

§

impl Hash for XIMCaretDirection

§

impl Hash for XIMCaretStyle

§

impl Hash for XIMStatusDataType

§

impl Hash for XOrientation

§

impl Hash for devela::_dep::sdl2::video::FlashOperation

§

impl Hash for devela::_dep::sdl2::video::FullscreenType

§

impl Hash for devela::_dep::sdl2::video::GLProfile

§

impl Hash for devela::_dep::sdl2::video::Orientation

§

impl Hash for devela::_dep::sdl2::video::SwapInterval

§

impl Hash for devela::_dep::sdl2::video::WindowPos

§

impl Hash for devela::_dep::sdl3::audio::AudioFormat

§

impl Hash for devela::_dep::sdl3::event::DisplayEvent

§

impl Hash for devela::_dep::sdl3::event::EventType

§

impl Hash for devela::_dep::sdl3::event::WindowEvent

§

impl Hash for devela::_dep::sdl3::gamepad::Axis

§

impl Hash for devela::_dep::sdl3::gamepad::Button

§

impl Hash for devela::_dep::sdl3::gamepad::MappingStatus

§

impl Hash for devela::_dep::sdl3::joystick::HatState

§

impl Hash for devela::_dep::sdl3::joystick::PowerLevel

§

impl Hash for devela::_dep::sdl3::keyboard::Keycode

§

impl Hash for devela::_dep::sdl3::keyboard::Scancode

§

impl Hash for devela::_dep::sdl3::log::Category

§

impl Hash for devela::_dep::sdl3::log::Priority

§

impl Hash for devela::_dep::sdl3::mouse::MouseButton

§

impl Hash for devela::_dep::sdl3::mouse::MouseWheelDirection

§

impl Hash for devela::_dep::sdl3::mouse::SystemCursor

§

impl Hash for devela::_dep::sdl3::render::BlendMode

§

impl Hash for ScaleMode

§

impl Hash for devela::_dep::sdl3::render::TextureAccess

§

impl Hash for devela::_dep::sdl3::video::FlashOperation

§

impl Hash for devela::_dep::sdl3::video::FullscreenType

§

impl Hash for devela::_dep::sdl3::video::GLProfile

§

impl Hash for devela::_dep::sdl3::video::Orientation

§

impl Hash for devela::_dep::sdl3::video::SwapInterval

§

impl Hash for devela::_dep::sdl3::video::WindowPos

§

impl Hash for StandardTagKey

§

impl Hash for StandardVisualKey

Source§

impl Hash for ExampleEnumIntU8

Available on doc or test only.
1.44.0 · Source§

impl Hash for Infallible

Source§

impl Hash for NumError

Source§

impl Hash for Sign

Source§

impl Hash for devela::text::AsciiChar

Source§

impl Hash for InvalidText

Source§

impl Hash for TextError

Available on crate feature error and text·· only.
Source§

impl Hash for AllErrorKind

Available on crate feature error only.
Source§

impl Hash for AngleDirection

Source§

impl Hash for AngleKind

1.0.0 · Source§

impl Hash for devela::all::AtomicOrdering

Source§

impl Hash for AudioError

Available on crate feature audio only.
Source§

impl Hash for CompressionMode

Source§

impl Hash for DataError

Available on crate feature error and data·· only.
Source§

impl Hash for DataNotEnough

Source§

impl Hash for Dither

Available on crate feature alloc and crate feature term and (crate features io or std) and (crate features dep_hashbrown or std) and crate feature image only.
Source§

impl Hash for DrawError

Available on crate feature draw only.
Source§

impl Hash for EncodingMode

Source§

impl Hash for FontError

Available on crate feature font only.
1.0.0 · Source§

impl Hash for ErrorKind

1.7.0 · Source§

impl Hash for IpAddr

Source§

impl Hash for JsEvent

Available on crate feature js only.
Source§

impl Hash for JsPermission

Available on crate feature js only.
Source§

impl Hash for JsPermissionState

Available on crate feature js only.
Source§

impl Hash for LayoutError

Available on crate feature layout only.
Source§

impl Hash for devela::all::LogLevel

Source§

impl Hash for devela::all::LogLevelFilter

Source§

impl Hash for MidiError

Available on crate feature midi only.
Source§

impl Hash for MismatchedBounds

Source§

impl Hash for Month

Source§

impl Hash for NotAvailable

1.0.0 · Source§

impl Hash for devela::all::Ordering

Source§

impl Hash for PartialSpace

Source§

impl Hash for devela::all::PixelFormat

Available on crate feature alloc and crate feature term and (crate features io or std) and (crate features dep_hashbrown or std) and crate feature image only.
Source§

impl Hash for SixelError

Available on crate feature alloc and crate feature term and (crate features io or std) and (crate features dep_hashbrown or std) and crate feature image only.
Source§

impl Hash for SixelMean

Available on crate feature alloc and crate feature term and (crate features io or std) and (crate features dep_hashbrown or std) and crate feature image only.
Source§

impl Hash for SixelQuality

Available on crate feature alloc and crate feature term and (crate features io or std) and (crate features dep_hashbrown or std) and crate feature image only.
Source§

impl Hash for SixelSplit

Available on crate feature alloc and crate feature term and (crate features io or std) and (crate features dep_hashbrown or std) and crate feature image only.
1.0.0 · Source§

impl Hash for SocketAddr

Source§

impl Hash for SpinStrategy

Source§

impl Hash for TimeError

Available on crate features error and time only.
Source§

impl Hash for WaveletUnitRole

Available on crate feature wave only.
Source§

impl Hash for EulerRot

1.0.0 · Source§

impl Hash for bool

1.0.0 · Source§

impl Hash for char

1.0.0 · Source§

impl Hash for i8

1.0.0 · Source§

impl Hash for i16

1.0.0 · Source§

impl Hash for i32

1.0.0 · Source§

impl Hash for i64

1.0.0 · Source§

impl Hash for i128

1.0.0 · Source§

impl Hash for isize

1.29.0 · Source§

impl Hash for !

1.0.0 · Source§

impl Hash for str

1.0.0 · Source§

impl Hash for u8

1.0.0 · Source§

impl Hash for u16

1.0.0 · Source§

impl Hash for u32

1.0.0 · Source§

impl Hash for u64

1.0.0 · Source§

impl Hash for u128

1.0.0 · Source§

impl Hash for ()

1.0.0 · Source§

impl Hash for usize

Source§

impl Hash for ByteStr

Source§

impl Hash for Alignment

Source§

impl Hash for ByteString

Source§

impl Hash for devela::_dep::_std::os::unix::net::UCred

§

impl Hash for KeyEvent

§

impl Hash for KeyEventState

§

impl Hash for KeyModifiers

§

impl Hash for KeyboardEnhancementFlags

§

impl Hash for MouseEvent

§

impl Hash for FileAccess

§

impl Hash for Root

§

impl Hash for FileChooserType

§

impl Hash for LineStyle

§

impl Hash for Align

§

impl Hash for CallbackTrigger

§

impl Hash for devela::_dep::fltk::enums::Color

§

impl Hash for Damage

§

impl Hash for devela::_dep::fltk::enums::Event

§

impl Hash for devela::_dep::fltk::enums::Font

§

impl Hash for devela::_dep::fltk::enums::Key

§

impl Hash for devela::_dep::fltk::enums::Mode

§

impl Hash for Shortcut

§

impl Hash for GridAlign

§

impl Hash for AnimGifImageFlags

§

impl Hash for MenuFlag

§

impl Hash for Attrib

§

impl Hash for CharFlags

§

impl Hash for OutFlags

§

impl Hash for RedrawStyle

§

impl Hash for ScrollbarStyle

§

impl Hash for GlyphRasterConfig

§

impl Hash for devela::_dep::fontdue::Font

§

impl Hash for Code

§

impl Hash for Effect

§

impl Hash for GamepadId

§

impl Hash for SampleLayout

§

impl Hash for devela::_dep::image::math::Rect

§

impl Hash for LimitSupport

§

impl Hash for Limits

§

impl Hash for Date

§

impl Hash for DateTime

§

impl Hash for ISOWeekDate

§

impl Hash for Time

§

impl Hash for PiecesNumericOffset

§

impl Hash for SignedDuration

§

impl Hash for SpanFieldwise

§

impl Hash for devela::_dep::jiff::Timestamp

§

impl Hash for Zoned

§

impl Hash for Offset

§

impl Hash for MockBackendSettings

§

impl Hash for devela::_dep::kira::clock::ClockId

§

impl Hash for ListenerId

§

impl Hash for ModulatorId

§

impl Hash for Capacities

§

impl Hash for ResourceLimitReached

§

impl Hash for SendTrackId

§

impl Hash for BufferId

§

impl Hash for Pipeline

§

impl Hash for ShaderId

§

impl Hash for TextureId

§

impl Hash for PyBackedBytes

§

impl Hash for PyBackedStr

§

impl Hash for InputStreamTimestamp

§

impl Hash for OutputStreamTimestamp

§

impl Hash for StreamInstant

§

impl Hash for devela::_dep::rustix::event::epoll::CreateFlags

§

impl Hash for EventfdFlags

§

impl Hash for PollFlags

§

impl Hash for devela::_dep::rustix::fs::inotify::CreateFlags

§

impl Hash for ReadFlags

§

impl Hash for WatchFlags

§

impl Hash for devela::_dep::rustix::fs::Access

§

impl Hash for AtFlags

§

impl Hash for FallocateFlags

§

impl Hash for FdFlags

§

impl Hash for devela::_dep::rustix::fs::Gid

§

impl Hash for MemfdFlags

§

impl Hash for devela::_dep::rustix::fs::Mode

§

impl Hash for MountFlags

§

impl Hash for MountPropagationFlags

§

impl Hash for OFlags

§

impl Hash for RenameFlags

§

impl Hash for ResolveFlags

§

impl Hash for SealFlags

§

impl Hash for StatVfsMountFlags

§

impl Hash for StatxFlags

§

impl Hash for devela::_dep::rustix::fs::Uid

§

impl Hash for UnmountFlags

§

impl Hash for XattrFlags

§

impl Hash for DupFlags

§

impl Hash for Errno

§

impl Hash for ReadWriteFlags

§

impl Hash for devela::_dep::rustix::io_uring::EpollEvent

§

impl Hash for EventFlags

§

impl Hash for IoringAcceptFlags

§

impl Hash for IoringAsyncCancelFlags

§

impl Hash for IoringCqFlags

§

impl Hash for IoringCqeFlags

§

impl Hash for IoringEnterFlags

§

impl Hash for IoringFeatureFlags

§

impl Hash for IoringFsyncFlags

§

impl Hash for IoringMsgringFlags

§

impl Hash for IoringOpFlags

§

impl Hash for IoringPollFlags

§

impl Hash for IoringRecvFlags

§

impl Hash for IoringRegisterFlags

§

impl Hash for IoringRsrcFlags

§

impl Hash for IoringSendFlags

§

impl Hash for IoringSetupFlags

§

impl Hash for IoringSqFlags

§

impl Hash for IoringSqeFlags

§

impl Hash for IoringTimeoutFlags

§

impl Hash for RecvFlags

§

impl Hash for RecvmsgOutFlags

§

impl Hash for SendFlags

§

impl Hash for SocketFlags

§

impl Hash for devela::_dep::rustix::io_uring::SpliceFlags

§

impl Hash for Opcode

§

impl Hash for MapFlags

§

impl Hash for MlockAllFlags

§

impl Hash for MlockFlags

§

impl Hash for MprotectFlags

§

impl Hash for MremapFlags

§

impl Hash for MsyncFlags

§

impl Hash for ProtFlags

§

impl Hash for UserfaultfdFlags

§

impl Hash for FsMountFlags

§

impl Hash for FsOpenFlags

§

impl Hash for FsPickFlags

§

impl Hash for MountAttrFlags

§

impl Hash for MoveMountFlags

§

impl Hash for OpenTreeFlags

§

impl Hash for AddressFamily

§

impl Hash for Protocol

§

impl Hash for SocketAddrUnix

§

impl Hash for SocketType

§

impl Hash for devela::_dep::rustix::net::UCred

§

impl Hash for SockaddrXdpFlags

§

impl Hash for SocketAddrXdp

§

impl Hash for XdpDesc

§

impl Hash for XdpDescOptions

§

impl Hash for XdpMmapOffsets

§

impl Hash for XdpOptions

§

impl Hash for XdpOptionsFlags

§

impl Hash for XdpRingFlags

§

impl Hash for XdpRingOffset

§

impl Hash for XdpStatistics

§

impl Hash for XdpUmemReg

§

impl Hash for XdpUmemRegFlags

§

impl Hash for PipeFlags

§

impl Hash for devela::_dep::rustix::pipe::SpliceFlags

§

impl Hash for CpuSet

§

impl Hash for Cpuid

§

impl Hash for FloatingPointEmulationControl

§

impl Hash for FloatingPointExceptionMode

§

impl Hash for MembarrierQuery

§

impl Hash for devela::_dep::rustix::process::Pid

§

impl Hash for PidfdFlags

§

impl Hash for PidfdGetfdFlags

§

impl Hash for SpeculationFeatureControl

§

impl Hash for SpeculationFeatureState

§

impl Hash for UnalignedAccessControl

§

impl Hash for WaitOptions

§

impl Hash for WaitidOptions

§

impl Hash for OpenptFlags

§

impl Hash for GetRandomFlags

§

impl Hash for ShmOFlags

§

impl Hash for ControlModes

§

impl Hash for InputModes

§

impl Hash for LocalModes

§

impl Hash for OutputModes

§

impl Hash for SpecialCodeIndex

§

impl Hash for CapabilitiesSecureBits

§

impl Hash for CapabilityFlags

§

impl Hash for devela::_dep::rustix::thread::FutexFlags

§

impl Hash for TaggedAddressMode

§

impl Hash for ThreadNameSpaceType

§

impl Hash for UnshareFlags

§

impl Hash for TimerfdFlags

§

impl Hash for TimerfdTimerFlags

§

impl Hash for AudioSpec

§

impl Hash for devela::_dep::sdl2::image::InitFlag

§

impl Hash for devela::_dep::sdl2::keyboard::Keycode

§

impl Hash for Mod

§

impl Hash for Dl_info

§

impl Hash for Elf32_Chdr

§

impl Hash for Elf32_Ehdr

§

impl Hash for Elf32_Phdr

§

impl Hash for Elf32_Shdr

§

impl Hash for Elf32_Sym

§

impl Hash for Elf64_Chdr

§

impl Hash for Elf64_Ehdr

§

impl Hash for Elf64_Phdr

§

impl Hash for Elf64_Shdr

§

impl Hash for Elf64_Sym

§

impl Hash for __c_anonymous__kernel_fsid_t

§

impl Hash for __c_anonymous_elf32_rel

§

impl Hash for __c_anonymous_elf32_rela

§

impl Hash for __c_anonymous_elf64_rel

§

impl Hash for __c_anonymous_elf64_rela

§

impl Hash for __c_anonymous_ifru_map

§

impl Hash for __c_anonymous_ptrace_syscall_info_entry

§

impl Hash for __c_anonymous_ptrace_syscall_info_exit

§

impl Hash for __c_anonymous_ptrace_syscall_info_seccomp

§

impl Hash for __c_anonymous_sockaddr_can_j1939

§

impl Hash for __c_anonymous_sockaddr_can_tp

§

impl Hash for __exit_status

§

impl Hash for __timeval

§

impl Hash for _libc_fpstate

§

impl Hash for _libc_fpxreg

§

impl Hash for _libc_xmmreg

§

impl Hash for addrinfo

§

impl Hash for af_alg_iv

§

impl Hash for aiocb

§

impl Hash for arpd_request

§

impl Hash for arphdr

§

impl Hash for arpreq

§

impl Hash for arpreq_old

§

impl Hash for can_filter

§

impl Hash for clone_args

§

impl Hash for cmsghdr

§

impl Hash for cpu_set_t

§

impl Hash for dirent64

§

impl Hash for dirent

§

impl Hash for dl_phdr_info

§

impl Hash for dqblk

§

impl Hash for epoll_event

§

impl Hash for epoll_params

§

impl Hash for fanotify_event_info_error

§

impl Hash for fanotify_event_info_fid

§

impl Hash for fanotify_event_info_header

§

impl Hash for fanotify_event_info_pidfd

§

impl Hash for fanotify_event_metadata

§

impl Hash for fanotify_response

§

impl Hash for fanout_args

§

impl Hash for fd_set

§

impl Hash for ff_condition_effect

§

impl Hash for ff_constant_effect

§

impl Hash for ff_effect

§

impl Hash for ff_envelope

§

impl Hash for ff_periodic_effect

§

impl Hash for ff_ramp_effect

§

impl Hash for ff_replay

§

impl Hash for ff_rumble_effect

§

impl Hash for ff_trigger

§

impl Hash for file_clone_range

§

impl Hash for flock64

§

impl Hash for flock

§

impl Hash for fsid_t

§

impl Hash for genlmsghdr

§

impl Hash for glob64_t

§

impl Hash for glob_t

§

impl Hash for group

§

impl Hash for hostent

§

impl Hash for hwtstamp_config

§

impl Hash for if_nameindex

§

impl Hash for ifaddrs

§

impl Hash for in6_addr

§

impl Hash for in6_ifreq

§

impl Hash for in6_pktinfo

§

impl Hash for in6_rtmsg

§

impl Hash for in_addr

§

impl Hash for in_pktinfo

§

impl Hash for inotify_event

§

impl Hash for input_absinfo

§

impl Hash for input_event

§

impl Hash for input_id

§

impl Hash for input_keymap_entry

§

impl Hash for input_mask

§

impl Hash for iocb

§

impl Hash for iovec

§

impl Hash for ip_mreq

§

impl Hash for ip_mreq_source

§

impl Hash for ip_mreqn

§

impl Hash for ipc_perm

§

impl Hash for ipv6_mreq

§

impl Hash for itimerspec

§

impl Hash for itimerval

§

impl Hash for iw_discarded

§

impl Hash for iw_encode_ext

§

impl Hash for iw_freq

§

impl Hash for iw_michaelmicfailure

§

impl Hash for iw_missed

§

impl Hash for iw_mlme

§

impl Hash for iw_param

§

impl Hash for iw_pmkid_cand

§

impl Hash for iw_pmksa

§

impl Hash for iw_point

§

impl Hash for iw_priv_args

§

impl Hash for iw_quality

§

impl Hash for iw_range

§

impl Hash for iw_scan_req

§

impl Hash for iw_statistics

§

impl Hash for iw_thrspy

§

impl Hash for j1939_filter

§

impl Hash for lconv

§

impl Hash for linger

§

impl Hash for mallinfo2

§

impl Hash for mallinfo

§

impl Hash for mcontext_t

§

impl Hash for mmsghdr

§

impl Hash for mntent

§

impl Hash for mount_attr

§

impl Hash for mq_attr

§

impl Hash for msghdr

§

impl Hash for msginfo

§

impl Hash for msqid_ds

§

impl Hash for nl_mmap_hdr

§

impl Hash for nl_mmap_req

§

impl Hash for nl_pktinfo

§

impl Hash for nlattr

§

impl Hash for nlmsgerr

§

impl Hash for nlmsghdr

§

impl Hash for ntptimeval

§

impl Hash for open_how

§

impl Hash for option

§

impl Hash for packet_mreq

§

impl Hash for passwd

§

impl Hash for pollfd

§

impl Hash for posix_spawn_file_actions_t

§

impl Hash for posix_spawnattr_t

§

impl Hash for protoent

§

impl Hash for pthread_attr_t

§

impl Hash for pthread_barrier_t

§

impl Hash for pthread_barrierattr_t

§

impl Hash for pthread_cond_t

§

impl Hash for pthread_condattr_t

§

impl Hash for pthread_mutex_t

§

impl Hash for pthread_mutexattr_t

§

impl Hash for pthread_rwlock_t

§

impl Hash for pthread_rwlockattr_t

§

impl Hash for ptp_clock_caps

§

impl Hash for ptp_clock_time

§

impl Hash for ptp_extts_event

§

impl Hash for ptp_extts_request

§

impl Hash for ptp_pin_desc

§

impl Hash for ptp_sys_offset

§

impl Hash for ptp_sys_offset_extended

§

impl Hash for ptp_sys_offset_precise

§

impl Hash for ptrace_peeksiginfo_args

§

impl Hash for ptrace_rseq_configuration

§

impl Hash for ptrace_syscall_info

§

impl Hash for regex_t

§

impl Hash for regmatch_t

§

impl Hash for rlimit64

§

impl Hash for rlimit

§

impl Hash for rtentry

§

impl Hash for rusage

§

impl Hash for sched_attr

§

impl Hash for sched_param

§

impl Hash for sctp_authinfo

§

impl Hash for sctp_initmsg

§

impl Hash for sctp_nxtinfo

§

impl Hash for sctp_prinfo

§

impl Hash for sctp_rcvinfo

§

impl Hash for sctp_sndinfo

§

impl Hash for sctp_sndrcvinfo

§

impl Hash for seccomp_data

§

impl Hash for seccomp_notif

§

impl Hash for seccomp_notif_addfd

§

impl Hash for seccomp_notif_resp

§

impl Hash for seccomp_notif_sizes

§

impl Hash for sem_t

§

impl Hash for sembuf

§

impl Hash for semid_ds

§

impl Hash for seminfo

§

impl Hash for servent

§

impl Hash for shmid_ds

§

impl Hash for sigaction

§

impl Hash for sigevent

§

impl Hash for siginfo_t

§

impl Hash for signalfd_siginfo

§

impl Hash for sigset_t

§

impl Hash for sigval

§

impl Hash for sock_extended_err

§

impl Hash for sock_filter

§

impl Hash for sock_fprog

§

impl Hash for sockaddr

§

impl Hash for sockaddr_alg

§

impl Hash for sockaddr_in6

§

impl Hash for sockaddr_in

§

impl Hash for sockaddr_ll

§

impl Hash for sockaddr_nl

§

impl Hash for sockaddr_pkt

§

impl Hash for sockaddr_storage

§

impl Hash for sockaddr_un

§

impl Hash for sockaddr_vm

§

impl Hash for sockaddr_xdp

§

impl Hash for spwd

§

impl Hash for stack_t

§

impl Hash for stat64

§

impl Hash for stat

§

impl Hash for statfs64

§

impl Hash for statfs

§

impl Hash for statvfs64

§

impl Hash for statvfs

§

impl Hash for statx

§

impl Hash for statx_timestamp

§

impl Hash for sysinfo

§

impl Hash for tcp_info

§

impl Hash for termios2

§

impl Hash for termios

§

impl Hash for timespec

§

impl Hash for timeval

§

impl Hash for timex

§

impl Hash for tls12_crypto_info_aes_gcm_128

§

impl Hash for tls12_crypto_info_aes_gcm_256

§

impl Hash for tls12_crypto_info_chacha20_poly1305

§

impl Hash for tls_crypto_info

§

impl Hash for tm

§

impl Hash for tms

§

impl Hash for tpacket2_hdr

§

impl Hash for tpacket3_hdr

§

impl Hash for tpacket_auxdata

§

impl Hash for tpacket_bd_ts

§

impl Hash for tpacket_hdr

§

impl Hash for tpacket_hdr_v1

§

impl Hash for tpacket_hdr_variant1

§

impl Hash for tpacket_req3

§

impl Hash for tpacket_req

§

impl Hash for tpacket_rollover_stats

§

impl Hash for tpacket_stats

§

impl Hash for tpacket_stats_v3

§

impl Hash for ucontext_t

§

impl Hash for ucred

§

impl Hash for uinput_abs_setup

§

impl Hash for uinput_ff_erase

§

impl Hash for uinput_ff_upload

§

impl Hash for uinput_setup

§

impl Hash for uinput_user_dev

§

impl Hash for user

§

impl Hash for user_fpregs_struct

§

impl Hash for user_regs_struct

§

impl Hash for utimbuf

§

impl Hash for utmpx

§

impl Hash for utsname

§

impl Hash for winsize

§

impl Hash for xdp_desc

§

impl Hash for xdp_mmap_offsets

§

impl Hash for xdp_mmap_offsets_v1

§

impl Hash for xdp_options

§

impl Hash for xdp_ring_offset

§

impl Hash for xdp_ring_offset_v1

§

impl Hash for xdp_statistics

§

impl Hash for xdp_statistics_v1

§

impl Hash for xdp_umem_reg

§

impl Hash for xdp_umem_reg_v1

§

impl Hash for xsk_tx_metadata_completion

§

impl Hash for xsk_tx_metadata_request

§

impl Hash for MessageBoxButtonFlag

§

impl Hash for MessageBoxFlag

§

impl Hash for devela::_dep::sdl2::mixer::InitFlag

§

impl Hash for MouseState

§

impl Hash for RelativeMouseState

§

impl Hash for devela::_dep::sdl2::pixels::Color

§

impl Hash for devela::_dep::sdl2::rect::Point

§

impl Hash for devela::_dep::sdl2::rect::Rect

§

impl Hash for devela::_dep::sdl2::render::RendererInfo

§

impl Hash for devela::_dep::sdl2::render::TextureQuery

§

impl Hash for __BindgenFloat16

§

impl Hash for FontStyle

§

impl Hash for devela::_dep::sdl2::version::Version

§

impl Hash for DisplayMode

§

impl Hash for SDL_EnumerationResult

§

impl Hash for SDL_Folder

§

impl Hash for SDL_PathType

§

impl Hash for devela::_dep::sdl3::pixels::Color

§

impl Hash for devela::_dep::sdl3::pixels::PixelFormat

§

impl Hash for SDL_PropertyType

§

impl Hash for devela::_dep::sdl3::rect::Point

§

impl Hash for devela::_dep::sdl3::rect::Rect

§

impl Hash for devela::_dep::sdl3::render::RendererInfo

§

impl Hash for devela::_dep::sdl3::render::TextureQuery

§

impl Hash for devela::_dep::sdl3::Error

§

impl Hash for devela::_dep::sdl3::sys::assert::SDL_AssertState

§

impl Hash for SDL_AsyncIOResult

§

impl Hash for SDL_AsyncIOTaskType

§

impl Hash for SDL_AudioFormat

§

impl Hash for devela::_dep::sdl3::sys::blendmode::SDL_BlendFactor

§

impl Hash for devela::_dep::sdl3::sys::blendmode::SDL_BlendOperation

§

impl Hash for SDL_CameraPosition

§

impl Hash for SDL_FileDialogType

§

impl Hash for SDL_EventAction

§

impl Hash for devela::_dep::sdl3::sys::events::SDL_EventType

§

impl Hash for SDL_GamepadAxis

§

impl Hash for SDL_GamepadBindingType

§

impl Hash for SDL_GamepadButton

§

impl Hash for SDL_GamepadButtonLabel

§

impl Hash for SDL_GamepadType

§

impl Hash for SDL_GPUBlendFactor

§

impl Hash for SDL_GPUBlendOp

§

impl Hash for SDL_GPUCompareOp

§

impl Hash for SDL_GPUCubeMapFace

§

impl Hash for SDL_GPUCullMode

§

impl Hash for SDL_GPUFillMode

§

impl Hash for SDL_GPUFilter

§

impl Hash for SDL_GPUFrontFace

§

impl Hash for SDL_GPUIndexElementSize

§

impl Hash for SDL_GPULoadOp

§

impl Hash for SDL_GPUPresentMode

§

impl Hash for SDL_GPUPrimitiveType

§

impl Hash for SDL_GPUSampleCount

§

impl Hash for SDL_GPUSamplerAddressMode

§

impl Hash for SDL_GPUSamplerMipmapMode

§

impl Hash for SDL_GPUShaderStage

§

impl Hash for SDL_GPUStencilOp

§

impl Hash for SDL_GPUStoreOp

§

impl Hash for SDL_GPUSwapchainComposition

§

impl Hash for SDL_GPUTextureFormat

§

impl Hash for SDL_GPUTextureType

§

impl Hash for SDL_GPUTransferBufferUsage

§

impl Hash for SDL_GPUVertexElementFormat

§

impl Hash for SDL_GPUVertexInputRate

§

impl Hash for SDL_hid_bus_type

§

impl Hash for devela::_dep::sdl3::sys::hints::SDL_HintPriority

§

impl Hash for SDL_AppResult

§

impl Hash for SDL_IOStatus

§

impl Hash for SDL_IOWhence

§

impl Hash for SDL_JoystickConnectionState

§

impl Hash for devela::_dep::sdl3::sys::joystick::SDL_JoystickType

§

impl Hash for SDL_Capitalization

§

impl Hash for SDL_TextInputType

§

impl Hash for devela::_dep::sdl3::sys::log::SDL_LogCategory

§

impl Hash for devela::_dep::sdl3::sys::log::SDL_LogPriority

§

impl Hash for devela::_dep::sdl3::sys::messagebox::SDL_MessageBoxColorType

§

impl Hash for devela::_dep::sdl3::sys::mouse::SDL_MouseWheelDirection

§

impl Hash for devela::_dep::sdl3::sys::mouse::SDL_SystemCursor

§

impl Hash for SDL_InitStatus

§

impl Hash for SDL_PenAxis

§

impl Hash for devela::_dep::sdl3::sys::pixels::SDL_ArrayOrder

§

impl Hash for devela::_dep::sdl3::sys::pixels::SDL_BitmapOrder

§

impl Hash for SDL_ChromaLocation

§

impl Hash for SDL_ColorPrimaries

§

impl Hash for SDL_ColorRange

§

impl Hash for SDL_ColorType

§

impl Hash for SDL_Colorspace

§

impl Hash for SDL_MatrixCoefficients

§

impl Hash for devela::_dep::sdl3::sys::pixels::SDL_PackedLayout

§

impl Hash for devela::_dep::sdl3::sys::pixels::SDL_PackedOrder

§

impl Hash for SDL_PixelFormat

§

impl Hash for devela::_dep::sdl3::sys::pixels::SDL_PixelType

§

impl Hash for SDL_TransferCharacteristics

§

impl Hash for devela::_dep::sdl3::sys::power::SDL_PowerState

§

impl Hash for SDL_ProcessIO

§

impl Hash for SDL_RendererLogicalPresentation

§

impl Hash for devela::_dep::sdl3::sys::render::SDL_TextureAccess

§

impl Hash for devela::_dep::sdl3::sys::scancode::SDL_Scancode

§

impl Hash for devela::_dep::sdl3::sys::sensor::SDL_SensorType

§

impl Hash for SDL_FlipMode

§

impl Hash for devela::_dep::sdl3::sys::surface::SDL_ScaleMode

§

impl Hash for SDL_Sandbox

§

impl Hash for devela::_dep::sdl3::sys::thread::SDL_ThreadPriority

§

impl Hash for SDL_ThreadState

§

impl Hash for SDL_DateFormat

§

impl Hash for SDL_TimeFormat

§

impl Hash for devela::_dep::sdl3::sys::touch::SDL_TouchDeviceType

§

impl Hash for devela::_dep::sdl3::sys::video::SDL_DisplayOrientation

§

impl Hash for devela::_dep::sdl3::sys::video::SDL_FlashOperation

§

impl Hash for SDL_GLAttr

§

impl Hash for devela::_dep::sdl3::sys::video::SDL_HitTestResult

§

impl Hash for SDL_SystemTheme

§

impl Hash for devela::_dep::sdl3::version::Version

§

impl Hash for Display

§

impl Hash for Channels

§

impl Hash for CodecType

§

impl Hash for devela::_dep::sysinfo::Gid

§

impl Hash for IpNetwork

§

impl Hash for devela::_dep::sysinfo::Pid

§

impl Hash for devela::_dep::sysinfo::Uid

§

impl Hash for devela::_dep::tokio::task::Id

§

impl Hash for Decor

§

impl Hash for InternalString

§

impl Hash for devela::_dep::toml_edit::Key

§

impl Hash for RawString

§

impl Hash for Repr

§

impl Hash for TomlError

§

impl Hash for Identifier

§

impl Hash for Field

§

impl Hash for devela::_dep::tracing::level_filters::LevelFilter

§

impl Hash for devela::_dep::tracing::Id

§

impl Hash for devela::_dep::tracing::Level

§

impl Hash for Span

§

impl Hash for HeaderName

§

impl Hash for HeaderValue

§

impl Hash for Method

§

impl Hash for StatusCode

§

impl Hash for Uri

§

impl Hash for devela::_dep::ureq::http::Version

§

impl Hash for Authority

Case-insensitive hashing

§Examples


let a: Authority = "HELLO.com".parse().unwrap();
let b: Authority = "hello.coM".parse().unwrap();

let mut s = DefaultHasher::new();
a.hash(&mut s);
let a = s.finish();

let mut s = DefaultHasher::new();
b.hash(&mut s);
let b = s.finish();

assert_eq!(a, b);
§

impl Hash for PathAndQuery

§

impl Hash for Scheme

Case-insensitive hashing

§

impl Hash for Proxy

§

impl Hash for BStr

§

impl Hash for devela::_dep::winnow::Bytes

Source§

impl Hash for ExampleBitfield

Available on crate feature _bit_u8 and (doc or test) only.
Source§

impl Hash for ExampleBitfieldCustom

Available on crate feature _bit_u8 and (doc or test) only.
Source§

impl Hash for ExampleBitfieldExtra

Available on crate feature _bit_u8 and (doc or test) only.
Source§

impl Hash for ExampleEnumSet

Available on doc or test only.
Source§

impl Hash for ExampleIdSeqUsize

Available on doc or test only.
1.0.0 · Source§

impl Hash for TypeId

Source§

impl Hash for Divisor<i64>

Source§

impl Hash for Divisor<u32>

Source§

impl Hash for GraphemeString

Source§

impl Hash for InvalidChar

Source§

impl Hash for InvalidUtf8

Source§

impl Hash for char7

Source§

impl Hash for char8

Source§

impl Hash for char16

Source§

impl Hash for BVec2

Source§

impl Hash for BVec3

Source§

impl Hash for BVec4

Source§

impl Hash for BVec3A

Source§

impl Hash for BVec4A

Source§

impl Hash for I8Vec2

Source§

impl Hash for I8Vec3

Source§

impl Hash for I8Vec4

Source§

impl Hash for I16Vec2

Source§

impl Hash for I16Vec3

Source§

impl Hash for I16Vec4

Source§

impl Hash for IVec2

Source§

impl Hash for IVec3

Source§

impl Hash for IVec4

Source§

impl Hash for I64Vec2

Source§

impl Hash for I64Vec3

Source§

impl Hash for I64Vec4

Source§

impl Hash for U8Vec2

Source§

impl Hash for U8Vec3

Source§

impl Hash for U8Vec4

Source§

impl Hash for U16Vec2

Source§

impl Hash for U16Vec3

Source§

impl Hash for U16Vec4

Source§

impl Hash for UVec2

Source§

impl Hash for UVec3

Source§

impl Hash for UVec4

Source§

impl Hash for U64Vec2

Source§

impl Hash for U64Vec3

Source§

impl Hash for U64Vec4

Source§

impl Hash for uuid::error::Error

Source§

impl Hash for Braced

Source§

impl Hash for Hyphenated

Source§

impl Hash for Simple

Source§

impl Hash for Urn

Source§

impl Hash for NonNilUuid

Source§

impl Hash for Uuid

Source§

impl Hash for uuid::timestamp::Timestamp

Source§

impl Hash for AppApple

Available on crate feature std only.
Source§

impl Hash for AppUnix

Available on crate feature std only.
Source§

impl Hash for AppWindows

Available on crate feature std only.
Source§

impl Hash for AppXdg

Available on crate feature std only.
1.64.0 · Source§

impl Hash for CStr

1.64.0 · Source§

impl Hash for CString

Source§

impl Hash for DataOverflow

Source§

impl Hash for DrumFrame8

Available on crate feature audio only.
1.3.0 · Source§

impl Hash for Duration

Source§

impl Hash for ElementNotFound

Source§

impl Hash for FailedErrorConversion

Source§

impl Hash for False

1.1.0 · Source§

impl Hash for FileType

1.0.0 · Source§

impl Hash for devela::all::FmtError

Source§

impl Hash for IdPinBox

Source§

impl Hash for IndexOutOfBounds

Source§

impl Hash for InvalidAxisLength

1.0.0 · Source§

impl Hash for Ipv4Addr

1.0.0 · Source§

impl Hash for Ipv6Addr

Source§

impl Hash for KeyAlreadyExists

Source§

impl Hash for Maybe

1.28.0 · Source§

impl Hash for Layout

Source§

impl Hash for MismatchedCapacity

Source§

impl Hash for MismatchedDimensions

Source§

impl Hash for MismatchedIndices

Source§

impl Hash for NodeEmpty

Source§

impl Hash for NodeLinkNotSet

Source§

impl Hash for NodeLinkNotUnique

Source§

impl Hash for NotEnoughElements

Source§

impl Hash for NotEnoughSpace

Source§

impl Hash for NotImplemented

Source§

impl Hash for NotSupported

1.0.0 · Source§

impl Hash for OsStr

1.0.0 · Source§

impl Hash for OsString

Source§

impl Hash for PartiallyAdded

1.0.0 · Source§

impl Hash for Path

1.0.0 · Source§

impl Hash for PathBuf

1.0.0 · Source§

impl Hash for PrefixComponent<'_>

1.33.0 · Source§

impl Hash for PhantomPinned

1.0.0 · Source§

impl Hash for RangeFull

Source§

impl Hash for SleepSpin

1.0.0 · Source§

impl Hash for SocketAddrV4

1.0.0 · Source§

impl Hash for SocketAddrV6

1.0.0 · Source§

impl Hash for devela::all::String

1.8.0 · Source§

impl Hash for Instant

1.8.0 · Source§

impl Hash for SystemTime

Source§

impl Hash for SystemTimeError

1.19.0 · Source§

impl Hash for ThreadId

Source§

impl Hash for TimeDelta

Source§

impl Hash for True

Source§

impl Hash for g_bvec2

Available on crate feature glsl only.
Source§

impl Hash for g_bvec3

Available on crate feature glsl only.
Source§

impl Hash for g_bvec4

Available on crate feature glsl only.
Source§

impl Hash for g_ivec2

Available on crate feature glsl only.
Source§

impl Hash for g_ivec3

Available on crate feature glsl only.
Source§

impl Hash for g_ivec4

Available on crate feature glsl only.
Source§

impl Hash for g_uvec2

Available on crate feature glsl only.
Source§

impl Hash for g_uvec3

Available on crate feature glsl only.
Source§

impl Hash for g_uvec4

Available on crate feature glsl only.
§

impl Hash for EventData

§

impl Hash for __c_anonymous_ptrace_syscall_info_data

§

impl Hash for Access

§

impl Hash for Addr

§

impl Hash for ArenaFull

§

impl Hash for AudioTstampType

§

impl Hash for BigEndian

§

impl Hash for Bytes

§

impl Hash for BytesMut

§

impl Hash for ChmapPosition

§

impl Hash for ChmapType

§

impl Hash for ChunkType

§

impl Hash for CompressionLevel

§

impl Hash for CompressionStrategy

§

impl Hash for Connect

§

impl Hash for DataFormat

§

impl Hash for EfdFlags

§

impl Hash for ElemIface

§

impl Hash for ElemType

§

impl Hash for Encoding

§

impl Hash for EpollCreateFlags

§

impl Hash for EpollEvent

§

impl Hash for EpollFlags

§

impl Hash for EpollOp

§

impl Hash for EvCode

§

impl Hash for EvCtrl

§

impl Hash for EvNote

§

impl Hash for EvResult

§

impl Hash for EventMask

§

impl Hash for EventType

§

impl Hash for ExtraXYZ

§

impl Hash for ExtraZXZ

§

impl Hash for ExtraZYX

§

impl Hash for Flags

§

impl Hash for Format

§

impl Hash for GlyphClass

§

impl Hash for GlyphClass

§

impl Hash for GlyphId

§

impl Hash for GlyphId

§

impl Hash for InsertWithKeyError

§

impl Hash for IntraXYZ

§

impl Hash for IntraZXZ

§

impl Hash for IntraZYX

§

impl Hash for Key

§

impl Hash for Level

§

impl Hash for LittleEndian

§

impl Hash for MZError

§

impl Hash for MZFlush

§

impl Hash for MZStatus

§

impl Hash for MilliBel

§

impl Hash for Permissions

§

impl Hash for Permissions

§

impl Hash for PortCap

§

impl Hash for PortType

§

impl Hash for Remove

§

impl Hash for ScriptMetrics

§

impl Hash for ScriptMetrics

§

impl Hash for SelemChannelId

§

impl Hash for SigId

§

impl Hash for State

§

impl Hash for StreamResult

§

impl Hash for Style

§

impl Hash for Style

§

impl Hash for SysInfo

§

impl Hash for TDEFLFlush

§

impl Hash for TDEFLStatus

§

impl Hash for TINFLStatus

§

impl Hash for Tag

§

impl Hash for Tag

§

impl Hash for TimeSpec

§

impl Hash for TimeVal

§

impl Hash for Token

§

impl Hash for Transformations

§

impl Hash for TstampType

§

impl Hash for WatchDescriptor

§

impl Hash for WatchMask

§

impl Hash for Weight

§

impl Hash for Weight

§

impl Hash for Width

§

impl Hash for Width

§

impl Hash for _bindgen_ty_1

§

impl Hash for _bindgen_ty_1

§

impl Hash for _bindgen_ty_1

§

impl Hash for _bindgen_ty_2

§

impl Hash for _bindgen_ty_2

§

impl Hash for _bindgen_ty_2

§

impl Hash for _bindgen_ty_3

§

impl Hash for _bindgen_ty_3

§

impl Hash for _bindgen_ty_3

§

impl Hash for _bindgen_ty_4

§

impl Hash for _bindgen_ty_4

§

impl Hash for _bindgen_ty_4

§

impl Hash for _bindgen_ty_5

§

impl Hash for _bindgen_ty_5

§

impl Hash for _bindgen_ty_5

§

impl Hash for _bindgen_ty_6

§

impl Hash for _bindgen_ty_6

§

impl Hash for _bindgen_ty_6

§

impl Hash for _bindgen_ty_7

§

impl Hash for _bindgen_ty_7

§

impl Hash for _bindgen_ty_8

§

impl Hash for _bindgen_ty_8

§

impl Hash for _bindgen_ty_9

§

impl Hash for _bindgen_ty_9

§

impl Hash for _bindgen_ty_10

§

impl Hash for _bindgen_ty_11

§

impl Hash for _bindgen_ty_12

§

impl Hash for _bindgen_ty_13

§

impl Hash for _bindgen_ty_14

§

impl Hash for _bindgen_ty_15

§

impl Hash for _bindgen_ty_16

§

impl Hash for _bindgen_ty_17

§

impl Hash for _bindgen_ty_18

§

impl Hash for _bindgen_ty_19

§

impl Hash for _bindgen_ty_20

§

impl Hash for _bindgen_ty_21

§

impl Hash for _bindgen_ty_22

§

impl Hash for _bindgen_ty_23

§

impl Hash for _bindgen_ty_24

§

impl Hash for _bindgen_ty_25

§

impl Hash for _bindgen_ty_26

§

impl Hash for _bindgen_ty_27

§

impl Hash for _bindgen_ty_28

§

impl Hash for _bindgen_ty_29

§

impl Hash for _bindgen_ty_30

§

impl Hash for _bindgen_ty_31

§

impl Hash for _bindgen_ty_32

§

impl Hash for _bindgen_ty_33

§

impl Hash for _bindgen_ty_34

§

impl Hash for _bindgen_ty_35

§

impl Hash for _bindgen_ty_36

§

impl Hash for _bindgen_ty_37

§

impl Hash for _bindgen_ty_38

§

impl Hash for _bindgen_ty_39

§

impl Hash for _bindgen_ty_40

§

impl Hash for _bindgen_ty_41

§

impl Hash for _bindgen_ty_42

§

impl Hash for _bindgen_ty_43

§

impl Hash for _bindgen_ty_44

§

impl Hash for _bindgen_ty_45

§

impl Hash for _bindgen_ty_46

§

impl Hash for _bindgen_ty_47

§

impl Hash for _bindgen_ty_48

§

impl Hash for _bindgen_ty_49

§

impl Hash for _bindgen_ty_50

§

impl Hash for _bindgen_ty_51

§

impl Hash for _bindgen_ty_52

§

impl Hash for _bindgen_ty_53

§

impl Hash for _bindgen_ty_54

§

impl Hash for _bindgen_ty_55

§

impl Hash for _bindgen_ty_56

§

impl Hash for _bindgen_ty_57

§

impl Hash for _bindgen_ty_58

§

impl Hash for _bindgen_ty_59

§

impl Hash for _bindgen_ty_60

§

impl Hash for _bindgen_ty_61

§

impl Hash for _bindgen_ty_62

§

impl Hash for _bindgen_ty_63

§

impl Hash for _bindgen_ty_64

§

impl Hash for _bindgen_ty_65

§

impl Hash for _bindgen_ty_66

§

impl Hash for fsconfig_command

§

impl Hash for fsconfig_command

§

impl Hash for ifla_geneve_df

§

impl Hash for ifla_gtp_role

§

impl Hash for ifla_vxlan_df

§

impl Hash for in6_addr_gen_mode

§

impl Hash for io_uring_op

§

impl Hash for ipvlan_mode

§

impl Hash for macsec_offload

§

impl Hash for macsec_validation_type

§

impl Hash for macvlan_macaddr_mode

§

impl Hash for macvlan_mode

§

impl Hash for membarrier_cmd

§

impl Hash for membarrier_cmd_flag

§

impl Hash for net_device_flags

§

impl Hash for nf_dev_hooks

§

impl Hash for nf_inet_hooks

§

impl Hash for nf_ip6_hook_priorities

§

impl Hash for nf_ip_hook_priorities

§

impl Hash for nl_mmap_status

§

impl Hash for nlmsgerr_attrs

§

impl Hash for rt_class_t

§

impl Hash for rt_scope_t

§

impl Hash for rtattr_type_t

§

impl Hash for socket_state

§

impl Hash for tcp_ca_state

§

impl Hash for tcp_fastopen_client_fail

1.0.0 · Source§

impl<'a> Hash for Component<'a>

1.0.0 · Source§

impl<'a> Hash for Prefix<'a>

Source§

impl<'a> Hash for PhantomContravariantLifetime<'a>

Source§

impl<'a> Hash for PhantomCovariantLifetime<'a>

Source§

impl<'a> Hash for PhantomInvariantLifetime<'a>

Source§

impl<'a> Hash for MetadataBuilder<'a>

Source§

impl<'a> Hash for IdPin<'a>

Source§

impl<'a> Hash for Metadata<'a>

1.10.0 · Source§

impl<'a> Hash for Location<'a>

Source§

impl<'a> Hash for Sixel<'a>

Available on crate feature alloc and crate feature term and (crate features io or std) and (crate features dep_hashbrown or std) and crate feature image only.
§

impl<'a, T> Hash for devela::_dep::bumpalo::boxed::Box<'a, T>
where T: Hash + ?Sized,

Source§

impl<'a, T: Hash + 'a> Hash for ConstList<'a, T>

Source§

impl<'a, T: Hash> Hash for ConstListIterator<'a, T>

Source§

impl<'a, _0: Hash, _1: Hash, _2: Hash, _3: Hash, _4: Hash, _5: Hash, _6: Hash, _7: Hash, _8: Hash, _9: Hash, _10: Hash, _11: Hash> Hash for TupleElementMut<'a, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11>

Available on crate feature _tuple only.
Source§

impl<'a, _0: Hash, _1: Hash, _2: Hash, _3: Hash, _4: Hash, _5: Hash, _6: Hash, _7: Hash, _8: Hash, _9: Hash, _10: Hash, _11: Hash> Hash for TupleElementRef<'a, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11>

Available on crate feature _tuple only.
§

impl<'bump> Hash for devela::_dep::bumpalo::collections::String<'bump>

§

impl<'bump, T> Hash for devela::_dep::bumpalo::collections::Vec<'bump, T>
where T: 'bump + Hash,

§

impl<'d> Hash for TimeZoneName<'d>

Source§

impl<'glyphs, T: Hash> Hash for BitmapFont<'glyphs, T>

Available on crate feature font only.
§

impl<'k> Hash for KeyMut<'k>

§

impl<'n> Hash for TimeZoneAnnotationKind<'n>

§

impl<'n> Hash for Pieces<'n>

§

impl<'n> Hash for TimeZoneAnnotation<'n>

§

impl<'n> Hash for TimeZoneAnnotationName<'n>

Source§

impl<'r, R> Hash for UnwrapMut<'r, R>
where R: Hash + TryRngCore + ?Sized,

§

impl<'t> Hash for TimeZoneOffsetInfo<'t>

§

impl<A> Hash for SmallVec<A>
where A: Array, <A as Array>::Item: Hash,

§

impl<A, B> Hash for EitherOrBoth<A, B>
where A: Hash, B: Hash,

1.0.0 · Source§

impl<B> Hash for Cow<'_, B>
where B: Hash + ToOwned + ?Sized,

1.55.0 · Source§

impl<B, C> Hash for ControlFlow<B, C>
where B: Hash, C: Hash,

Source§

impl<Dyn> Hash for DynMetadata<Dyn>
where Dyn: ?Sized,

1.4.0 · Source§

impl<F> Hash for F
where F: FnPtr,

Source§

impl<G: Hash, C: Hash> Hash for GcdReturn<G, C>

Source§

impl<Idx> Hash for devela::_core::range::Range<Idx>
where Idx: Hash,

Source§

impl<Idx> Hash for devela::_core::range::RangeFrom<Idx>
where Idx: Hash,

Source§

impl<Idx> Hash for devela::_core::range::RangeInclusive<Idx>
where Idx: Hash,

1.0.0 · Source§

impl<Idx> Hash for devela::all::Range<Idx>
where Idx: Hash,

1.0.0 · Source§

impl<Idx> Hash for devela::all::RangeFrom<Idx>
where Idx: Hash,

1.26.0 · Source§

impl<Idx> Hash for devela::all::RangeInclusive<Idx>
where Idx: Hash,

1.0.0 · Source§

impl<Idx> Hash for RangeTo<Idx>
where Idx: Hash,

1.26.0 · Source§

impl<Idx> Hash for RangeToInclusive<Idx>
where Idx: Hash,

§

impl<K, V> Hash for Slice<K, V>
where K: Hash, V: Hash,

1.0.0 · Source§

impl<K, V, A> Hash for BTreeMap<K, V, A>
where K: Hash, V: Hash, A: Allocator + Clone,

Source§

impl<K: Hash + Copy, V: Hash, const N: usize> Hash for ExampleStaticMapU16<K, V, N>

Source§

impl<L, R> Hash for Either<L, R>
where L: Hash, R: Hash,

Source§

impl<N: Hash, H: Hash> Hash for Mismatch<N, H>

§

impl<P, Container> Hash for ImageBuffer<P, Container>
where P: Hash + Pixel, Container: Hash,

1.41.0 · Source§

impl<Ptr> Hash for Pin<Ptr>
where Ptr: Deref, <Ptr as Deref>::Target: Hash,

Source§

impl<R> Hash for UnwrapErr<R>
where R: Hash + TryRngCore,

§

impl<Storage> Hash for __BindgenBitfieldUnit<Storage>
where Storage: Hash,

§

impl<Storage> Hash for __BindgenBitfieldUnit<Storage>
where Storage: Hash,

§

impl<Storage, Align> Hash for __BindgenBitfieldUnit<Storage, Align>
where Storage: Hash, Align: Hash,

1.0.0 · Source§

impl<T> Hash for Option<T>
where T: Hash,

1.17.0 · Source§

impl<T> Hash for Bound<T>
where T: Hash,

1.36.0 · Source§

impl<T> Hash for Poll<T>
where T: Hash,

1.0.0 · Source§

impl<T> Hash for *const T
where T: ?Sized,

1.0.0 · Source§

impl<T> Hash for *mut T
where T: ?Sized,

1.0.0 · Source§

impl<T> Hash for &T
where T: Hash + ?Sized,

1.0.0 · Source§

impl<T> Hash for &mut T
where T: Hash + ?Sized,

1.0.0 · Source§

impl<T> Hash for [T]
where T: Hash,

1.0.0 · Source§

impl<T> Hash for (T₁, T₂, …, Tₙ)
where T: Hash + ?Sized,

This trait is implemented for tuples up to twelve items long.

Source§

impl<T> Hash for PhantomContravariant<T>
where T: ?Sized,

Source§

impl<T> Hash for PhantomCovariant<T>
where T: ?Sized,

Source§

impl<T> Hash for PhantomInvariant<T>
where T: ?Sized,

§

impl<T> Hash for Luma<T>
where T: Hash,

§

impl<T> Hash for LumaA<T>
where T: Hash,

§

impl<T> Hash for Rgb<T>
where T: Hash,

§

impl<T> Hash for Rgba<T>
where T: Hash,

§

impl<T> Hash for Formatted<T>
where T: Hash,

§

impl<T> Hash for devela::all::Arc<T>
where T: Hash + ?Sized,

1.21.0 · Source§

impl<T> Hash for Discriminant<T>

1.20.0 · Source§

impl<T> Hash for ManuallyDrop<T>
where T: Hash + ?Sized,

1.28.0 · Source§

impl<T> Hash for NonZero<T>

1.0.0 · Source§

impl<T> Hash for PhantomData<T>
where T: ?Sized,

1.25.0 · Source§

impl<T> Hash for NonNull<T>
where T: ?Sized,

1.19.0 · Source§

impl<T> Hash for Reverse<T>
where T: Hash,

1.74.0 · Source§

impl<T> Hash for Saturating<T>
where T: Hash,

Source§

impl<T> Hash for TypeResource<T>
where T: TypeResourced, T::TypeData: Hash,

1.0.0 · Source§

impl<T> Hash for Wrapping<T>
where T: Hash,

§

impl<T> Hash for CachePadded<T>
where T: Hash,

§

impl<T> Hash for ColumnMatrix2<T>
where T: Hash,

§

impl<T> Hash for ColumnMatrix2x3<T>
where T: Hash,

§

impl<T> Hash for ColumnMatrix2x4<T>
where T: Hash,

§

impl<T> Hash for ColumnMatrix3<T>
where T: Hash,

§

impl<T> Hash for ColumnMatrix3x2<T>
where T: Hash,

§

impl<T> Hash for ColumnMatrix3x4<T>
where T: Hash,

§

impl<T> Hash for ColumnMatrix4<T>
where T: Hash,

§

impl<T> Hash for ColumnMatrix4x2<T>
where T: Hash,

§

impl<T> Hash for ColumnMatrix4x3<T>
where T: Hash,

§

impl<T> Hash for EvQueueControl<T>
where T: Hash,

§

impl<T> Hash for Point2<T>
where T: Hash,

§

impl<T> Hash for Point3<T>
where T: Hash,

§

impl<T> Hash for Quaternion<T>
where T: Hash,

§

impl<T> Hash for RowMatrix2<T>
where T: Hash,

§

impl<T> Hash for RowMatrix2x3<T>
where T: Hash,

§

impl<T> Hash for RowMatrix2x4<T>
where T: Hash,

§

impl<T> Hash for RowMatrix3<T>
where T: Hash,

§

impl<T> Hash for RowMatrix3x2<T>
where T: Hash,

§

impl<T> Hash for RowMatrix3x4<T>
where T: Hash,

§

impl<T> Hash for RowMatrix4<T>
where T: Hash,

§

impl<T> Hash for RowMatrix4x2<T>
where T: Hash,

§

impl<T> Hash for RowMatrix4x3<T>
where T: Hash,

§

impl<T> Hash for Slice<T>
where T: Hash,

§

impl<T> Hash for Spanned<T>
where T: Hash,

§

impl<T> Hash for Vector2<T>
where T: Hash,

§

impl<T> Hash for Vector3<T>
where T: Hash,

§

impl<T> Hash for Vector4<T>
where T: Hash,

§

impl<T> Hash for __BindgenUnionField<T>

§

impl<T> Hash for __BindgenUnionField<T>

Source§

impl<T, A> Hash for UniqueRc<T, A>
where T: Hash + ?Sized, A: Allocator,

1.0.0 · Source§

impl<T, A> Hash for devela::_dep::_alloc::sync::Arc<T, A>
where T: Hash + ?Sized, A: Allocator,

1.0.0 · Source§

impl<T, A> Hash for BTreeSet<T, A>
where T: Hash, A: Allocator + Clone,

1.0.0 · Source§

impl<T, A> Hash for devela::all::Box<T, A>
where T: Hash + ?Sized, A: Allocator,

1.0.0 · Source§

impl<T, A> Hash for LinkedList<T, A>
where T: Hash, A: Allocator,

1.0.0 · Source§

impl<T, A> Hash for Rc<T, A>
where T: Hash + ?Sized, A: Allocator,

1.0.0 · Source§

impl<T, A> Hash for devela::all::Vec<T, A>
where T: Hash, A: Allocator,

The hash of a vector is the same as that of the corresponding slice, as required by the core::borrow::Borrow implementation.

use std::hash::BuildHasher;

let b = std::hash::RandomState::new();
let v: Vec<u8> = vec![0xa8, 0x3c, 0x09];
let s: &[u8] = &[0xa8, 0x3c, 0x09];
assert_eq!(b.hash_one(v), b.hash_one(s));
1.0.0 · Source§

impl<T, A> Hash for VecDeque<T, A>
where T: Hash, A: Allocator,

§

impl<T, B> Hash for EulerAngles<T, B>
where T: Hash, B: Hash,

1.0.0 · Source§

impl<T, E> Hash for Result<T, E>
where T: Hash, E: Hash,

Source§

impl<T, const CAP: usize> Hash for ArrayVec<T, CAP>
where T: Hash,

1.0.0 · Source§

impl<T, const N: usize> Hash for [T; N]
where T: Hash,

The hash of an array is the same as that of the corresponding slice, as required by the Borrow implementation.

use std::hash::BuildHasher;

let b = std::hash::RandomState::new();
let a: [u8; 3] = [0xa8, 0x3c, 0x09];
let s: &[u8] = &[0xa8, 0x3c, 0x09];
assert_eq!(b.hash_one(a), b.hash_one(s));
Source§

impl<T, const N: usize> Hash for Simd<T, N>

Source§

impl<T: Hash> Hash for Frac<T>

Source§

impl<T: Hash> Hash for Int<T>

Source§

impl<T: Hash> Hash for BareBox<T>

Source§

impl<T: Hash> Hash for Bitwise<T>

Source§

impl<T: Hash> Hash for CacheAlign<T>

Source§

impl<T: Hash> Hash for Cycle<T>

Source§

impl<T: Hash> Hash for Interval<T>

Source§

impl<T: Hash, N: Hash> Hash for CycleCount<T, N>

Source§

impl<T: Hash, const CAP: usize, S: Storage> Hash for Array<T, CAP, S>
where S::Stored<[T; CAP]>: Hash,

Source§

impl<T: Hash, const D: usize> Hash for Distance<T, D>

Source§

impl<T: Hash, const D: usize> Hash for Extent<T, D>

Source§

impl<T: Hash, const D: usize> Hash for devela::all::Orientation<T, D>

Source§

impl<T: Hash, const D: usize> Hash for devela::all::Point<T, D>

Available on crate feature geom only.
Source§

impl<T: Hash, const D: usize> Hash for Position<T, D>

Source§

impl<T: Hash, const D: usize> Hash for Region<T, D>

Source§

impl<T: Hash, const D: usize> Hash for RegionStrided<T, D>

Source§

impl<T: Hash, const D: usize> Hash for Stride<T, D>

Source§

impl<T: Hash, const D: usize> Hash for Vector<T, D>

Source§

impl<T: Hash, const D: usize, const LEN: usize> Hash for Affine<T, D, LEN>

§

impl<V> Hash for VecMap<V>
where V: Hash,

Source§

impl<V, Q> Hash for ValueQuant<V, Q>
where V: Hash, Q: Hash,

Source§

impl<Y, R> Hash for CoroutineState<Y, R>
where Y: Hash, R: Hash,

Source§

impl<Y: Hash, MO: Hash, D: Hash, H: Hash, M: Hash, S: Hash, MS: Hash, US: Hash, NS: Hash> Hash for TimeSplit<Y, MO, D, H, M, S, MS, US, NS>

Source§

impl<_0: Hash, _1: Hash, _2: Hash, _3: Hash, _4: Hash, _5: Hash, _6: Hash, _7: Hash, _8: Hash, _9: Hash, _10: Hash, _11: Hash> Hash for TupleElement<_0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11>

Available on crate feature _tuple only.
Source§

impl<const CAP: usize> Hash for GraphemeNonul<CAP>

Source§

impl<const CAP: usize> Hash for GraphemeU8<CAP>

Source§

impl<const CAP: usize> Hash for ArrayString<CAP>

Source§

impl<const CAP: usize> Hash for StringNonul<CAP>

Available on crate feature _str_nonul only.
Source§

impl<const CAP: usize> Hash for StringU8<CAP>

Source§

impl<const V: i8> Hash for devela::_info::examples::niche::NonValueI8<V>

Available on doc or test only.
Source§

impl<const V: i8> Hash for devela::all::NonValueI8<V>

Source§

impl<const V: u8> Hash for NonValueU8<V>

Source§

impl<const V: u16> Hash for NonValueU16<V>