Morton (Z-order) key class to identify a node.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
integer(kind=I8P), | public | :: | key | = | 0_I8P | The key. |
Hash the key.
Hash the key.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(key_base), | intent(in) | :: | self | The key. |
||
integer(kind=I4P), | intent(in) | :: | buckets_number | Buckets number. |
Bucket index corresponding to the key.
Return the id.
Typeguard for used key.
Typeguard for used key.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(*), | intent(in) | :: | key | The key ID. |
Check result.
Set the key.
Overloading ==
operator.
Implement ==
operator.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(key_morton), | intent(in) | :: | lhs | Left hand side. |
||
class(*), | intent(in) | :: | rhs | Rigth hand side. |
Destroy the key.
Destroy the key.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(key_morton), | intent(inout) | :: | self | The key. |
Return a string representation of the key.
Return a string representation of the key.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(key_morton), | intent(in) | :: | self | The key. |
The key stringified.
Implement ==
operator.
Implement ==
operator.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(key_morton), | intent(in) | :: | lhs | Left hand side. |
||
class(*), | intent(in) | :: | rhs | Rigth hand side. |
type, extends(key_base) :: key_morton
!< Morton (Z-order) **key** class to identify a node.
integer(I8P) :: key=0_I8P !< The key.
contains
! public deferred methods
procedure, pass(self) :: destroy !< Destroy the key.
procedure, pass(self) :: stringify !< Return a string representation of the key.
! private deferred methods
procedure, pass(lhs), private :: is_equal !< Implement `==` operator.
endtype key_morton