OSSP::uuid - phpMan

Command: man perldoc info search(apropos)  


Sections
NAME DESCRIPTION EXAMPLES SEE ALSO HISTORY
NAME
    OSSP::uuid - OSSP uuid Perl Binding

DESCRIPTION
    OSSP uuid is a ISO-C:1999 application programming interface (API) and
    corresponding command line interface (CLI) for the generation of DCE
    1.1, ISO/IEC 11578:1996 and RFC 4122 compliant *Universally Unique
    Identifier* (UUID). It supports DCE 1.1 variant UUIDs of version 1 (time
    and node based), version 3 (name based, MD5), version 4 (random number
    based) and version 5 (name based, SHA-1). Additional API bindings are
    provided for the languages ISO-C++:1998, Perl:5 and PHP:4/5. Optional
    backward compatibility exists for the ISO-C DCE-1.1 and Perl Data::UUID
    APIs.

    OSSP::uuid is the Perl binding to the OSSP uuid API. Three variants are
    provided:

  TIE-STYLE API
    The TIE-style API is a functionality-reduced wrapper around the OO-style
    API and intended for very high-level convenience programming:

    "use OSSP::uuid;"
    tie" my $uuid, 'OSSP::uuid::tie', $mode, ...;"
    "$uuid = [ $mode, ... ];"
    "print "UUID=$uuid\n";"
    "untie $uuid;"

  OO-STYLE API
    The OO-style API is a wrapper around the C-style API and intended for
    high-level regular programming.

    "use OSSP::uuid;"
    "my $uuid = "new" OSSP::uuid;"
    "$uuid->"load"($name);"
    "$uuid->"make"($mode, ...);"
    "$result = $uuid->"isnil"();"
    "$result = $uuid->"compare"($uuid2);"
    "$uuid->"import"($fmt, $data_ptr);"
    "$data_ptr = $uuid->"export"($fmt);"
    "[(]$str[, $rc)] = $uuid->"error"();"
    "$ver = $uuid->"version"();"
    "undef $uuid;"

    Additionally, the strings "v1", "v3", "v4", "v5" and "mc" can be used in
    $mode and the strings "bin", "str", and "txt" can be used for $fmt.

  C-STYLE API
    The C-style API is a direct mapping of the OSSP uuid ISO-C API to Perl
    and is intended for low-level programming. See uuid(3) for a description
    of the functions and their expected arguments.

    "use OSSP::uuid qw(:all);"
    "my $uuid; $rc = "uuid_create"($uuid);"
    "$rc = "uuid_load"($uuid, $name);"
    "$rc = "uuid_make"($uuid, $mode, ...);"
    "$rc = "uuid_isnil"($uuid, $result);"
    "$rc = "uuid_compare"($uuid, $uuid2, $result);"
    "$rc = "uuid_import"($uuid, $fmt, $data_ptr, $data_len);"
    "$rc = "uuid_export"($uuid, $fmt, $data_ptr, $data_len);"
    "$str = "uuid_error"($rc);"
    "$ver = "uuid_version"();"
    "$rc = "uuid_destroy"($uuid);"

    Additionally, the following constants are exported for use in $rc,
    $mode, $fmt and $ver:

    "UUID_VERSION", "UUID_LEN_BIN", "UUID_LEN_STR", "UUID_RC_OK",
    "UUID_RC_ARG", "UUID_RC_MEM", "UUID_RC_SYS", "UUID_RC_INT",
    "UUID_RC_IMP", "UUID_MAKE_V1", "UUID_MAKE_V3", "UUID_MAKE_V4",
    "UUID_MAKE_V5", "UUID_MAKE_MC", "UUID_FMT_BIN", "UUID_FMT_STR",
    "UUID_FMT_SIV", "UUID_FMT_TXT".

EXAMPLES
    The following two examples create the version 3 UUID
    "02d9e6d5-9467-382e-8f9b-9300a64ac3cd", both via the OO-style and the
    C-style API. Error handling is omitted here for easier reading, but has
    to be added for production-quality code.

      #   TIE-style API (very high-level)
      use OSSP::uuid;
      tie my $uuid, 'OSSP::uuid::tie';
      $uuid = [ "v1" ];
      print "UUIDs: $uuid, $uuid, $uuid\n";
      $uuid = [ "v3", "ns:URL", "http://www.ossp.org/" ];
      print "UUIDs: $uuid, $uuid, $uuid\n";
      untie $uuid;

      #   OO-style API (high-level)
      use OSSP::uuid;
      my $uuid    = new OSSP::uuid;
      my $uuid_ns = new OSSP::uuid;
      $uuid_ns->load("ns:URL");
      $uuid->make("v3", $uuid_ns, "http://www.ossp.org/");
      undef $uuid_ns;
      my $str = $uuid->export("str");
      undef $uuid;
      print "$str\n";

      #   C-style API (low-level)
      use OSSP::uuid qw(:all);
      my $uuid;    uuid_create($uuid);
      my $uuid_ns; uuid_create($uuid_ns);
      uuid_load($uuid_ns, "ns:URL");
      uuid_make($uuid, UUID_MAKE_V3, $uuid_ns, "http://www.ossp.org/");
      uuid_destroy($uuid_ns);
      my $str; uuid_export($uuid, UUID_FMT_STR, $str, undef);
      uuid_destroy($uuid);
      print "$str\n";

SEE ALSO
    uuid(1), uuid-config(1), uuid(3).

HISTORY
    The Perl binding OSSP::uuid to OSSP uuid was implemented in November
    2004 by Ralf S. Engelschall <rse AT engelschall.com>.


Generated by phpMan Author: Che Dong On Apache Under GNU General Public License - MarkDown Format
2026-05-23 06:08 @216.73.217.24 CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!

^_back to top