=begin pod :kind("Type") :subkind("class") :category("composite")

=TITLE class PseudoStash

=SUBTITLE Stash type for pseudo-packages

    class PseudoStash is Map { }

C<PseudoStash> is the stash type (hanging off C<.WHO>) that backs
various pseudo-packages. So, when you do C<MY::> or C<CALLER::>, that
gives back a C<PseudoStash>. In most cases, C<Package::> gives
back a C<Stash>. Neither of these are objects the user is expected to
create by themselves, but in case you have one, you can just use it like a
hash.

=for code
my $a = 42;
my $b = q/$a/;
say MY::{$b};
# OUTPUT: «42␤»

This shows how you can use a C<PseudoStash> to look up variables, by name,
at runtime.

=end pod

# vim: expandtab softtabstop=4 shiftwidth=4 ft=perl6
