Skip to content

Instantly share code, notes, and snippets.

@jnthn
Created March 6, 2015 21:42
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jnthn/a62bec1143386cd2bb22 to your computer and use it in GitHub Desktop.
Save jnthn/a62bec1143386cd2bb22 to your computer and use it in GitHub Desktop.
diff --git a/src/Perl6/Metamodel/BOOTSTRAP.nqp b/src/Perl6/Metamodel/BOOTSTRAP.nqp
index 1a5cd3d..ed3ec7a 100644
--- a/src/Perl6/Metamodel/BOOTSTRAP.nqp
+++ b/src/Perl6/Metamodel/BOOTSTRAP.nqp
@@ -2816,18 +2816,16 @@ Perl6::Metamodel::ParametricRoleGroupHOW.set_selector_creator({
# Roles pretend to be narrower than certain types for the purpose
# of type checking. Also, they pun to classes.
+my %excluded := nqp::hash('ACCEPTS', Mu, 'item', Mu, 'dispatch:<.=>', Mu);
Perl6::Metamodel::ParametricRoleGroupHOW.pretend_to_be([Cool, Any, Mu]);
Perl6::Metamodel::ParametricRoleGroupHOW.configure_punning(
- Perl6::Metamodel::ClassHOW,
- hash( ACCEPTS => Mu, item => Mu ));
+ Perl6::Metamodel::ClassHOW, %excluded);
Perl6::Metamodel::ParametricRoleHOW.pretend_to_be([Cool, Any, Mu]);
Perl6::Metamodel::ParametricRoleHOW.configure_punning(
- Perl6::Metamodel::ClassHOW,
- hash( ACCEPTS => Mu, item => Mu ));
+ Perl6::Metamodel::ClassHOW, %excluded);
Perl6::Metamodel::CurriedRoleHOW.pretend_to_be([Cool, Any, Mu]);
Perl6::Metamodel::CurriedRoleHOW.configure_punning(
- Perl6::Metamodel::ClassHOW,
- hash( ACCEPTS => Mu, item => Mu ));
+ Perl6::Metamodel::ClassHOW, %excluded);
# Similar for packages and modules, but just has methods from Any.
Perl6::Metamodel::PackageHOW.pretend_to_be([Any, Mu]);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment