Skip to main content

trait

KeyElement

A trait composition for types which implement all requirements of dictionary keys. Dict keys must minimally be Movable, Hashable, and EqualityComparable for a hash map. Until we have references they must also be copyable.

Implemented traits

AnyType, CollectionElement, Copyable, EqualityComparable, Hashable, Movable

Methods

__copyinit__

__copyinit__(inout self: T, existing: T, /)

Create a new instance of the value by copying an existing one.

Args:

  • existing (T): The value to copy.

__moveinit__

__moveinit__(inout self: T, owned existing: T, /)

Create a new instance of the value by moving the value of another.

Args:

  • existing (T): The value to move.

__eq__

__eq__(self: T, other: T) -> Bool

Define whether two instances of the object are equal to each other.

Args:

  • other (T): Another instance of the same type.

Returns:

True if the instances are equal according to the type's definition of equality, False otherwise.

__ne__

__ne__(self: T, other: T) -> Bool

Define whether two instances of the object are not equal to each other.

Args:

  • other (T): Another instance of the same type.

Returns:

True if the instances are not equal according to the type's definition of equality, False otherwise.

__hash__

__hash__(self: T) -> Int

Return a 64-bit hash of the type's data.