Provided by: libkiokudb-perl_0.57-1_all bug

NAME

       KiokuDB::Util - Utility functions for working with KiokuDB

VERSION

       version 0.57

SYNOPSIS

           use KiokuDB::Util qw(set weak_set);

           my $set = set(@objects); # create a transient set

           my $weak = weak_set(@objects); # to avoid circular refs

DESCRIPTION

       This module provides various helper functions for working with KiokuDB.

EXPORTS

       dsn_to_backend $dsn, %args
           Tries to parse $dsn, load the backend and invoke "new" on it.

           Used by "connect" in KiokuDB and the various command line interfaces.

       set
       weak_set
           Instantiate a Set::Object or Set::Object::Weak from the arguments, and then creates a
           KiokuDB::Set::Transient with the result.

       import_yaml $kiokudb, @files_or_dirs
           Loads YAML files with MooseX::YAML (if given a directory it will be searched
           recursively for files with a ".yml" extension are) into the specified KiokuDB
           directory in a single transaction.

           The YAML files can contain multiple documents, with each document treated as an
           object. If the YAML file contains a single non blessed array or hash then that
           structure will be dereferenced as part of the arguments to "insert".

           Here is an example of an array of objects, and a custom tag alias to ease authoring of
           the YAML file:

               %YAML 1.1
               %TAG ! !MyFoo::
               ---
               - !User
                 id:        foo
                 real_name: Foo Bar
                 email:     foo@myfoo.com
                 password:  '{cleartext}test123'

           You can use a hash to specify custom IDs:

               %YAML 1.1
               ---
               the_id: !Some::Class
                   attr: moose

AUTHOR

       Yuval Kogman <nothingmuch@woobling.org>

COPYRIGHT AND LICENSE

       This software is copyright (c) 2014 by Yuval Kogman, Infinity Interactive.

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