NAME

Data::GUID - globally unique identifiers

VERSION

version 0.01

$Id: /my/cs/projects/guid/trunk/lib/Data/GUID.pm 19177 2006-02-26T04:22:56.847642Z rjbs  $

SYNOPSIS

use Data::GUID;

my $guid = Data::GUID->new;

my $string = $guid->as_string; # or "$guid"

my $other_guid = Data::GUID->from_string($string);

if (($guid <=> $other_guid) == 0) {
  print "They're the same!\n";
}

DESCRIPTION

Data::GUID provides a simple interface for generating and using globally unique identifiers.

GETTING A NEW GUID

new

my $guid = Data::GUID->new;

This method returns a new globally unique identifier.

GUIDS FROM STRINGS

These method returns a new Data::GUID object for the given GUID value.

from_string

my $guid = Data::GUID->from_string("B0470602-A64B-11DA-8632-93EBF1C0E05A");

from_hex

# note that a hex guid is a guid string without hyphens and with a leading 0x
my $guid = Data::GUID->from_hex("0xB0470602A64B11DA863293EBF1C0E05A");

from_base64

my $guid = Data::GUID->from_base64("sEcGAqZLEdqGMpPr8cDgWg==");

GUIDS INTO STRINGS

These methods return string representations of a GUID.

as_string

This method is also used to stringify Data::GUID objects.

as_hex

as_base64

OTHER METHODS

as_binary

This method returns the packed binary representation of the GUID.

compare_to_guid

This method compares a GUID to another GUID and returns -1, 0, or 1, as do other comparison routines.

IMPORTING

Data::GUID does not export any subroutines by default, but it provides four routines which will be imported on request. These routines may be called as class methods, or may be imported to be called as subroutines.

guid

use Data::GUID qw(guid);

my $guid_1 = Data::GUID->guid;
my $guid_2 = guid;

This routine returns a new Data::GUID object.

guid_string

This returns the string representation of a new GUID.

guid_hex

This returns the hex representation of a new GUID.

guid_base64

This returns the base64 representation of a new GUID.

AUTHOR

Ricardo SIGNES, <rjbs@cpan.org>

TODO

  • add namespace support

  • remove dependency on wretched Data::UUID

BUGS

Please report any bugs or feature requests to bug-data-guid@rt.cpan.org, or through the web interface at http://rt.cpan.org. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

COPYRIGHT

Copyright 2006 Ricardo Signes, All Rights Reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.