1Data::GUID(3) User Contributed Perl Documentation Data::GUID(3)
2
3
4
6 Data::GUID - globally unique identifiers
7
9 version 0.051
10
12 use Data::GUID;
13
14 my $guid = Data::GUID->new;
15
16 my $string = $guid->as_string; # or "$guid"
17
18 my $other_guid = Data::GUID->from_string($string);
19
20 if (($guid <=> $other_guid) == 0) {
21 print "They're the same!\n";
22 }
23
25 Data::GUID provides a simple interface for generating and using
26 globally unique identifiers.
27
29 This library should run on perls released even an extremely long time
30 ago. It should work on any version of perl released in the last ten
31 years.
32
33 Although it may work on older versions of perl, no guarantee is made
34 that the minimum required version will not be increased. The version
35 may be increased for any reason, and there is no promise that patches
36 will be accepted to lower the minimum required perl.
37
39 new
40 my $guid = Data::GUID->new;
41
42 This method returns a new globally unique identifier.
43
45 These method returns a new Data::GUID object for the given GUID value.
46 In all cases, these methods throw an exception if given invalid input.
47
48 from_string
49 my $guid = Data::GUID->from_string("B0470602-A64B-11DA-8632-93EBF1C0E05A");
50
51 from_hex
52 # note that a hex guid is a guid string without hyphens and with a leading 0x
53 my $guid = Data::GUID->from_hex("0xB0470602A64B11DA863293EBF1C0E05A");
54
55 from_base64
56 my $guid = Data::GUID->from_base64("sEcGAqZLEdqGMpPr8cDgWg==");
57
58 from_data_uuid
59 This method returns a new Data::GUID object if given a Data::UUID
60 value. Because Data::UUID values are not blessed and because
61 Data::UUID provides no validation method, this method will only throw
62 an exception if the given data is of the wrong size.
63
65 string_guid_regex
66 hex_guid_regex
67 base64_guid_regex
68 These methods return regex objects that match regex strings of the
69 appropriate type.
70
71 from_any_string
72 my $string = get_string_from_ether;
73
74 my $guid = Data::GUID->from_any_string($string);
75
76 This method returns a Data::GUID object for the given string, trying
77 all known string interpretations. An exception is thrown if the value
78 is not a valid GUID string.
79
80 best_guess
81 my $value = get_value_from_ether;
82
83 my $guid = Data::GUID->best_guess($value);
84
85 This method returns a Data::GUID object for the given value, trying
86 everything it can. It works like "from_any_string", but will also
87 accept Data::UUID values. (In effect, this means that any sixteen byte
88 value is acceptable.)
89
91 These methods return various string representations of a GUID.
92
93 as_string
94 This method returns a "traditional" GUID/UUID string representation.
95 This is five hexadecimal strings, delimited by hyphens. For example:
96
97 B0470602-A64B-11DA-8632-93EBF1C0E05A
98
99 This method is also used to stringify Data::GUID objects.
100
101 as_hex
102 This method returns a plain hexadecimal representation of the GUID,
103 with a leading "0x". For example:
104
105 0xB0470602A64B11DA863293EBF1C0E05A
106
107 as_base64
108 This method returns a base-64 string representation of the GUID. For
109 example:
110
111 sEcGAqZLEdqGMpPr8cDgWg==
112
114 compare_to_guid
115 This method compares a GUID to another GUID and returns -1, 0, or 1, as
116 do other comparison routines.
117
118 as_binary
119 This method returns the packed binary representation of the GUID. At
120 present this method relies on Data::GUID's underlying use of
121 Data::UUID. It is not guaranteed to continue to work the same way, or
122 at all. Caveat invocator.
123
125 Data::GUID does not export any subroutines by default, but it provides
126 a few routines which will be imported on request. These routines may
127 be called as class methods, or may be imported to be called as
128 subroutines. Calling them by fully qualified name is incorrect.
129
130 use Data::GUID qw(guid);
131
132 my $guid = guid; # OK
133 my $guid = Data::GUID->guid; # OK
134 my $guid = Data::GUID::guid; # NOT OK
135
136 guid
137 This routine returns a new Data::GUID object.
138
139 guid_string
140 This returns the string representation of a new GUID.
141
142 guid_hex
143 This returns the hex representation of a new GUID.
144
145 guid_base64
146 This returns the base64 representation of a new GUID.
147
148 guid_from_anything
149 This returns the result of calling the "from_any_string" method.
150
152 • add namespace support
153
154 • remove dependency on wretched Data::UUID
155
156 • make it work on 5.005
157
159 Ricardo SIGNES <cpan@semiotic.systems>
160
162 Ricardo Signes <rjbs@semiotic.systems>
163
165 This software is copyright (c) 2006 by Ricardo SIGNES.
166
167 This is free software; you can redistribute it and/or modify it under
168 the same terms as the Perl 5 programming language system itself.
169
170
171
172perl v5.36.0 2023-01-20 Data::GUID(3)