Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. FieldsInterface.php

interface FieldsInterface

Same name in this branch
  1. 11.1.x vendor/ramsey/uuid/src/Fields/FieldsInterface.php \Ramsey\Uuid\Fields\FieldsInterface

RFC 4122 defines fields for a specific variant of UUID

The fields of an RFC 4122 variant UUID are:

  • **time_low**: The low field of the timestamp, an unsigned 32-bit integer
  • **time_mid**: The middle field of the timestamp, an unsigned 16-bit integer
  • **time_hi_and_version**: The high field of the timestamp multiplexed with the version number, an unsigned 16-bit integer
  • **clock_seq_hi_and_reserved**: The high field of the clock sequence multiplexed with the variant, an unsigned 8-bit integer
  • **clock_seq_low**: The low field of the clock sequence, an unsigned 8-bit integer
  • **node**: The spatially unique node identifier, an unsigned 48-bit integer

@link http://tools.ietf.org/html/rfc4122#section-4.1 RFC 4122, ยง 4.1: Format

@psalm-immutable

Hierarchy

  • interface \Ramsey\Uuid\Fields\FieldsInterface extends \Serializable
    • interface \Ramsey\Uuid\Rfc4122\FieldsInterface extends \Ramsey\Uuid\Fields\FieldsInterface

Expanded class hierarchy of FieldsInterface

All classes that implement FieldsInterface

12 files declare their use of FieldsInterface
Fields.php in vendor/ramsey/uuid/src/Nonstandard/Fields.php
Fields.php in vendor/ramsey/uuid/src/Guid/Fields.php
OrderedTimeCodec.php in vendor/ramsey/uuid/src/Codec/OrderedTimeCodec.php
Uuid.php in vendor/ramsey/uuid/src/Uuid.php
UuidV1.php in vendor/ramsey/uuid/src/Rfc4122/UuidV1.php

... See full list

File

vendor/ramsey/uuid/src/Rfc4122/FieldsInterface.php, line 40

Namespace

Ramsey\Uuid\Rfc4122
View source
interface FieldsInterface extends BaseFieldsInterface {
    
    /**
     * Returns the full 16-bit clock sequence, with the variant bits (two most
     * significant bits) masked out
     */
    public function getClockSeq() : Hexadecimal;
    
    /**
     * Returns the high field of the clock sequence multiplexed with the variant
     */
    public function getClockSeqHiAndReserved() : Hexadecimal;
    
    /**
     * Returns the low field of the clock sequence
     */
    public function getClockSeqLow() : Hexadecimal;
    
    /**
     * Returns the node field
     */
    public function getNode() : Hexadecimal;
    
    /**
     * Returns the high field of the timestamp multiplexed with the version
     */
    public function getTimeHiAndVersion() : Hexadecimal;
    
    /**
     * Returns the low field of the timestamp
     */
    public function getTimeLow() : Hexadecimal;
    
    /**
     * Returns the middle field of the timestamp
     */
    public function getTimeMid() : Hexadecimal;
    
    /**
     * Returns the full 60-bit timestamp, without the version
     */
    public function getTimestamp() : Hexadecimal;
    
    /**
     * Returns the variant
     *
     * The variant number describes the layout of the UUID. The variant
     * number has the following meaning:
     *
     * - 0 - Reserved for NCS backward compatibility
     * - 2 - The RFC 4122 variant
     * - 6 - Reserved, Microsoft Corporation backward compatibility
     * - 7 - Reserved for future definition
     *
     * For RFC 4122 variant UUIDs, this value should always be the integer `2`.
     *
     * @link http://tools.ietf.org/html/rfc4122#section-4.1.1 RFC 4122, § 4.1.1: Variant
     */
    public function getVariant() : int;
    
    /**
     * Returns the version
     *
     * The version number describes how the UUID was generated and has the
     * following meaning:
     *
     * 1. Gregorian time UUID
     * 2. DCE security UUID
     * 3. Name-based UUID hashed with MD5
     * 4. Randomly generated UUID
     * 5. Name-based UUID hashed with SHA-1
     * 6. Reordered time UUID
     * 7. Unix Epoch time UUID
     *
     * This returns `null` if the UUID is not an RFC 4122 variant, since version
     * is only meaningful for this variant.
     *
     * @link http://tools.ietf.org/html/rfc4122#section-4.1.3 RFC 4122, § 4.1.3: Version
     */
    public function getVersion() : ?int;
    
    /**
     * Returns true if these fields represent a nil UUID
     *
     * The nil UUID is special form of UUID that is specified to have all 128
     * bits set to zero.
     */
    public function isNil() : bool;

}

Members

Title Sort descending Modifiers Object type Summary Overrides
FieldsInterface::getBytes public function Returns the bytes that comprise the fields
FieldsInterface::getClockSeq public function Returns the full 16-bit clock sequence, with the variant bits (two most
significant bits) masked out
3
FieldsInterface::getClockSeqHiAndReserved public function Returns the high field of the clock sequence multiplexed with the variant 3
FieldsInterface::getClockSeqLow public function Returns the low field of the clock sequence 3
FieldsInterface::getNode public function Returns the node field 3
FieldsInterface::getTimeHiAndVersion public function Returns the high field of the timestamp multiplexed with the version 3
FieldsInterface::getTimeLow public function Returns the low field of the timestamp 3
FieldsInterface::getTimeMid public function Returns the middle field of the timestamp 3
FieldsInterface::getTimestamp public function Returns the full 60-bit timestamp, without the version 3
FieldsInterface::getVariant public function Returns the variant
FieldsInterface::getVersion public function Returns the version 1
FieldsInterface::isNil public function Returns true if these fields represent a nil UUID 1

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal