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

NAME

       KiokuDB::TypeMap - Class to collapsing/expanding logic.

VERSION

       version 0.57

SYNOPSIS

           use KiokuDB::TypeMap;

           KiokuDB::TypeMap->new(
               entries => {
                   'Foo' => KiokuDB::TypeMap::Entry::Naive->new,
               },
               isa_entries => {
                   'My::Class' => KiokuDB::TypeMap::Entry::Naive->new,
               },
               includes => [
                   $typemap_foo,
                   $typemap_bar,
               ],
           );

DESCRIPTION

       The KiokuDB typemap maps classes to KiokuDB::TypeMap::Entry objects.

       The mapping is by class, and entries can be keyed normally (using "ref $object" equality)
       or by filtering on "$object->isa($class)" ("isa_entries").

ATTRIBUTES

       entries
           A hash of normal entries.

       isa_entries
           A hash of "$object->isa" based entries.

       includes
           A list of parent typemaps to inherit entries from.

METHODS

       resolve $class
           Given a class returns the "KiokuDB::TypeMap::Entry" object corresponding to that
           class.

           Called by KiokuDB::TypeMap::Resolver

       resolve_entry $entry
           If the entry is an alias, it will be resolved recursively, and simply returned
           otherwise.

       all_entries
           Returns the merged "entries" from this typemap and all the included typemaps.

       all_isa_entries
           Returns the merged "isa_entries" from this typemap and all the included typemaps.

       all_isa_entry_classes
           An array reference of all the classes in "all_isa_entries", sorted from least derived
           to most derived.

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.