Search all installed compunits for available modules
Switch branches/tags
Nothing to show
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples Major Version Bump Aug 19, 2016
lib/CompUnit fixed documentation Aug 19, 2016
t compunit pluggable Aug 18, 2016
.gitignore compunit pluggable Aug 18, 2016
Changes Major Version Bump Aug 19, 2016
LICENCE compunit pluggable Aug 18, 2016
META6.json fixed minor merge conflict Aug 19, 2016 adding readme update Aug 19, 2016


CompUnit::Search - Search through compunits


Search through compunits

    use CompUnit::Search;

    my @modules = installed-compunits({$_ ~~ /Test\:\:.*/});

    for @modules -> $module {
      say $module;



Gets a list of all installed compunits from the repositories(optional filter can be passed to show a subset of the installed compunits). Note that at the moment this only searches in repositories of type CompUnit::Repository::Installation, as these are the only ones which provide a quick meta to search for installed modules. If you install anything through panda install it should show up in the list. Once there is a good way to search through other repositories I will implement it here.

Returns a lazy list of Pair(s) with compunits as key and a Seq of its provides as the value.

use CompUnit::Search;

my @compUnits = search-compunits(* ~~ /JSON\:\:.*/); # Whatever code as a parameter to filter the compunits by name
                                                     # You may also use a block with one parameter(compunit name)
                                                     # instead for filtering purposes.

for @compUnits -> $compUnit {
  say $compUnit;


JSON::Unmarshal => (JSON::Unmarshal)
JSON::Marshal => (JSON::Marshal)
JSON::Tiny => (JSON::Tiny JSON::Tiny::Actions JSON::Tiny::Grammar)
JSON::Pretty => (JSON::Pretty)
JSON::Class => (JSON::Class)
JSON::Infer => (JSON::Infer)
JSON::RPC => (JSON::RPC::Server X::JSON::RPC JSON::RPC::Client)
JSON::Name => (JSON::Name)
JSON::Fast => (JSON::Fast)


Gets a list of provides and the compunits that provide them. This function filters based on the provides' name. Provide can be a package, class, role, module, grammar etc. as specified in the Meta file for the compunit. Returns a lazy list of Pair(s) with a provide as the key and the compunit that provides that provide as the value.

use CompUnit::Search;

my @compUnits = search-provides(* ~~ /JSON\:\:.*/);

for @compUnits -> $compUnit {
  say $compUnit;


JSON::Unmarshal => JSON::Unmarshal
JSON::Marshal => JSON::Marshal
JSON::Tiny => JSON::Tiny
JSON::Tiny::Actions => JSON::Tiny
JSON::Tiny::Grammar => JSON::Tiny
JSON::Pretty => JSON::Pretty
JSON::Class => JSON::Class
JSON::Infer => JSON::Infer
JSON::RPC::Server => JSON::RPC
JSON::RPC::Client => JSON::RPC
JSON::Name => JSON::Name
JSON::Fast => JSON::Fast


Compilation Units


Bugs / Feature Requests

Please report any bugs or feature requests through github at You will be notified automatically of any progress on your issue.

Source Code

This is open source software. The code repository is available for public review and contribution under the terms of the license.

git clone git://


Shantanu Bhadoria


This software is copyright (c) 2016 by Shantanu Bhadoria.

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