summaryrefslogtreecommitdiff
path: root/shared/ossp_uuid/uuid++.pod
diff options
context:
space:
mode:
Diffstat (limited to 'shared/ossp_uuid/uuid++.pod')
-rw-r--r--shared/ossp_uuid/uuid++.pod253
1 files changed, 253 insertions, 0 deletions
diff --git a/shared/ossp_uuid/uuid++.pod b/shared/ossp_uuid/uuid++.pod
new file mode 100644
index 00000000..8b5a4b1e
--- /dev/null
+++ b/shared/ossp_uuid/uuid++.pod
@@ -0,0 +1,253 @@
+##
+## OSSP uuid - Universally Unique Identifier
+## Copyright (c) 2004-2008 Ralf S. Engelschall <rse@engelschall.com>
+## Copyright (c) 2004-2008 The OSSP Project <http://www.ossp.org/>
+##
+## This file is part of OSSP uuid, a library for the generation
+## of UUIDs which can found at http://www.ossp.org/pkg/lib/uuid/
+##
+## Permission to use, copy, modify, and distribute this software for
+## any purpose with or without fee is hereby granted, provided that
+## the above copyright notice and this permission notice appear in all
+## copies.
+##
+## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
+## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+## SUCH DAMAGE.
+##
+## uuid++.pod: manual page for C++ API
+##
+
+=pod
+
+=head1 NAME
+
+B<OSSP uuid> - B<Universally Unique Identifier> (C++ API)
+
+=head1 VERSION
+
+OSSP uuid UUID_VERSION_STR
+
+=head1 DESCRIPTION
+
+B<uuid++> is the ISO-C++ language binding of the B<OSSP uuid> C API.
+It provides a thin ISO-C++ class B<uuid> wrapping the ISO-C API type
+B<uuid_t>.
+
+=head1 APPLICATION PROGRAMMING INTERFACE
+
+The ISO-C++ Application Programming Interface (API) of B<OSSP uuid>
+consists of the following components:
+
+=head2 CONSTANTS
+
+The constants are the same to those provided by the ISO-C API.
+See uuid(3) for details.
+
+=head2 CLASSES
+
+The following classes are provided:
+
+=over 4
+
+=item B<uuid>
+
+This is the class corresponding to the C API type B<uuid_t>.
+It is the main object.
+
+=item B<uuid_error_t>
+
+This is the class corresponding to the C API function B<uuid_error>.
+It is the object thrown as an exception in case of any errors.
+
+=back
+
+=head2 METHODS
+
+The following methods are provided:
+
+=over 4
+
+=item B<uuid>();
+
+The standard constructor.
+
+=item B<uuid>(const uuid &_obj);
+
+The copy constructor for B<uuid> class.
+
+=item B<uuid>(const uuid_t *_obj);
+
+The import constructor for C API objects.
+
+=item B<uuid>(const void *_bin);
+
+The import constructor for binary representation.
+
+=item B<uuid>(const char *_str);
+
+The import constructor for string representation.
+
+=item ~B<uuid>();
+
+The standard destructor for B<uuid> class.
+
+=item uuid &B<uuid::operator=>(const uuid &_obj);
+
+The assignment operator corresponding to the copy constructor.
+
+=item uuid &B<uuid::operator=>(const uuid_t *_obj);
+
+The assignment operator corresponding to the import constructor for C API objects.
+
+=item uuid &B<uuid::operator=>(const void *_bin);
+
+The assignment operator corresponding to the import constructor for binary representation.
+
+=item uuid &B<uuid::operator=>(const char *_str);
+
+The assignment operator corresponding to the import constructor for string and single integer value representation.
+
+=item uuid B<uuid::clone>(void);
+
+Regular method corresponding to the C API function B<uuid_clone>.
+
+=item void B<uuid::load>(const char *_name);
+
+Regular method corresponding to the C API function B<uuid_load>.
+
+=item void B<uuid::make>(unsigned int _mode, ...);
+
+Regular method corresponding to the C API function B<uuid_make>.
+
+=item int B<uuid::isnil>(void);
+
+Regular method corresponding to the C API function B<uuid_isnil>.
+
+=item int B<uuid::compare>(const uuid &_obj);
+
+Regular method corresponding to the C API function B<uuid_compare>.
+
+=item int B<uuid::operator==>(const uuid &_obj);
+
+The comparison operator corresponding to B<uuid_compare> usage for equality.
+
+=item int B<uuid::operator!=>(const uuid &_obj);
+
+The comparison operator corresponding to B<uuid_compare> usage for inequality.
+
+=item int B<uuid::operatorE<lt>>(const uuid &_obj);
+
+The comparison operator corresponding to B<uuid_compare> usage for less-than.
+
+=item int B<uuid::operatorE<lt>=>(const uuid &_obj);
+
+The comparison operator corresponding to B<uuid_compare> usage for less-than-or-equal.
+
+=item int B<uuid::operatorE<gt>>(const uuid &_obj);
+
+The comparison operator corresponding to B<uuid_compare> usage for greater-than.
+
+=item int B<uuid::operatorE<gt>=>(const uuid &_obj);
+
+The comparison operator corresponding to B<uuid_compare> usage for greater-than-or-equal.
+
+=item void B<uuid::import>(const void *_bin);
+
+Regular method corresponding to the C API function B<uuid_import> for binary representation usage.
+
+=item void B<uuid::import>(const char *_str);
+
+Regular method corresponding to the C API function B<uuid_import> for string representation usage.
+
+=item void *B<uuid::binary>(void);
+
+Regular method corresponding to the C API function B<uuid_export> for binary representation usage.
+
+=item char *B<uuid::string>(void);
+
+Regular method corresponding to the C API function B<uuid_export> for string representation usage.
+
+=item char *B<uuid::integer>(void);
+
+Regular method corresponding to the C API function B<uuid_export> for single integer value representation usage.
+
+=item char *B<uuid::summary>(void);
+
+Regular method corresponding to the C API function B<uuid_export> for textual summary representation usage.
+
+=item unsigned long B<uuid::version>(void);
+
+Regular method corresponding to the C API function B<uuid_version>.
+
+=item B<uuid_error_t>()
+
+The standard constructor for B<uuid_error_t> class.
+
+=item B<uuid_error_t>(uuid_rc_t _code)
+
+The standard constructor for B<uuid_error_t> class with return code initialization.
+
+=item ~B<uuid_error_t>()
+
+The standard destructor for B<uuid_error_t> class.
+
+=item void B<uuid_error_t::code>(uuid_rc_t _code)
+
+Regular method for setting the return code.
+
+=item uuid_rc_t B<uuid_error_t::code>(void)
+
+Regular method for fetching the return code.
+
+=item char *B<uuid_error_t::string>(void)
+
+Regular method for fetching the string corresponding to the current return code.
+
+=back
+
+=head1 EXAMPLE
+
+The following shows an example usage of the C++ API. Exception handling is
+omitted for code simplification and has to be re-added for production
+code.
+
+ /* generate a DCE 1.1 v1 UUID from system environment */
+ char *uuid_v1(void)
+ {
+ uuid id;
+ char *str;
+
+ id.make(UUID_MAKE_V1);
+ str = id.string();
+ return str;
+ }
+
+ /* generate a DCE 1.1 v3 UUID from an URL */
+ char *uuid_v3(const char *url)
+ {
+ uuid id;
+ uuid id_ns;
+ char *str;
+
+ id_ns.load("ns:URL");
+ id.make(UUID_MAKE_V3, &id_ns, url);
+ str = id.string();
+ return str;
+ }
+
+=head1 SEE ALSO
+
+uuid(3).
+
+=cut
+
bgstack15