<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">NAME
    Module::List::Wildcard - A fork of Module::List that groks wildcard

VERSION
    This document describes version 0.004007 of Module::List::Wildcard (from
    Perl distribution Module-List-Wildcard), released on 2020-12-22.

SYNOPSIS
    Use like you would Module::List, e.g.:

     use Module::List::Wildcard qw(list_modules);

     $id_modules = list_modules("Data::ID::", { list_modules =&gt; 1});
     $prefixes = list_modules("", { list_prefixes =&gt; 1, recurse =&gt; 1 });

    Wildcard support:

     $modules = list_modules("Module::P*", { wildcard =&gt; 1, list_modules =&gt; 1});
     $modules = list_modules("Module::P**", { wildcard =&gt; 1, list_modules =&gt; 1});

    "all" option:

     $modules = list_modules("Module::", { list_modules =&gt; 1, all =&gt; 1});

DESCRIPTION
    This module is a fork of Module::List. It's exactly like Module::List
    0.004, except for the following differences:

    *   lower startup overhead (with some caveats)

        It strips the usage of Exporter, IO::Dir, Carp, File::Spec, with the
        goal of saving a few milliseconds (a casual test on my PC results in
        11ms vs 39ms).

        Path separator is hard-coded as "/".

    *   Recognize "wildcard" option

        This boolean option can be set to true to recognize wildcard pattern
        in prefix. Wildcard patterns such as jokers ("?", "*", "**"),
        classes ("[a-z]"), as well as braces ("{One,Two}") are supported.
        "**" implies recursive listing (sets "recurse" option to 1).

        Examples:

         list_modules("Module::P*", {wildcard=&gt;1, list_modules=&gt;1});

        results in something like:

         {
             "Module::Patch"             =&gt; undef,
             "Module::Path"              =&gt; undef,
             "Module::Pluggable"         =&gt; undef,
         }

        while:

         list_modules("Module::P**", {wildcard=&gt;1, list_modules=&gt;1});

        results in something like:

         {
             "Module::Patch"             =&gt; undef,
             "Module::Path"              =&gt; undef,
             "Module::Path::More"        =&gt; undef,
             "Module::Pluggable"         =&gt; undef,
             "Module::Pluggable::Object" =&gt; undef,
         }

        while:

         list_modules("Module::**le", {wildcard=&gt;1, list_modules=&gt;1});

        results in something like:

         {
             "Module::Depakable"                =&gt; undef,
             "Module::Install::Admin::Bundle"   =&gt; undef,
             "Module::Install::Admin::Makefile" =&gt; undef,
             "Module::Install::Bundle"          =&gt; undef,
             "Module::Install::Makefile"        =&gt; undef,
             "Module::Pluggable"                =&gt; undef,
         }

HOMEPAGE
    Please visit the project's homepage at
    &lt;https://metacpan.org/release/Module-List-Wildcard&gt;.

SOURCE
    Source repository is at
    &lt;https://github.com/perlancar/perl-Module-List-Wildcard&gt;.

BUGS
    Please report any bugs or feature requests on the bugtracker website
    &lt;https://github.com/perlancar/perl-Module-List-Wildcard/issues&gt;

    When submitting a bug or request, please include a test-file or a patch
    to an existing test-file that illustrates the bug or desired feature.

SEE ALSO
    Module::List, Module::List::Tiny, Module::List::More

AUTHOR
    perlancar &lt;perlancar@cpan.org&gt;

COPYRIGHT AND LICENSE
    This software is copyright (c) 2020, 2019 by perlancar@cpan.org.

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

</pre></body></html>