# New Ticket Created by "shinobi.cl ." # Please include the string: [perl #132780] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/Ticket/Display.html?id=132780 >
I need the junction to be applied inside the regex, not at time of parameter binding, so i use the type Mu. ` > my Regex @rxs = (rx/3/, rx/2/); my @L = (1 .. 23); sub search(Mu $r where Regex) { grep $r, :v, @L }; say search( any(@rxs) ); (2 3 12 13 20 21 22 23) > my Regex @rxs = (rx/3/, rx/2/); my @L = (1 .. 23); sub search(Mu $r where Regex) { grep $r, :v, @L }; say search( all(@rxs) ); (23) > my Regex @rxs = (rx/3/, rx/2/); my @L = (1 .. 23); sub search(Mu $r where Regex) { grep $r, :v, @L }; say search( one(@rxs) ); Constraint type check failed in binding to parameter '$r'; expected anonymous constraint to be met but got Junction (one(rx/3/, rx/2/)) in sub search at <unknown file> line 1 in block <unit> at <unknown file> line 1 > my Regex @rxs = (rx/3/, rx/2/); my @L = (1 .. 23); sub search(Mu $r where Regex) { grep $r, :v, @L }; say search( none(@rxs) ); Died with X::TypeCheck::Binding::Parameter in sub search at <unknown file> line 1 in block <unit> at <unknown file> line 1 > ` Now, removing Mu, just because :). When used with none, a strange warning message appears > my Regex @rxs = (rx/3/, rx/2/); my @L = (1 .. 23); sub search($r where Regex) { grep $r, :v, @L }; say search( any(@rxs) ); (3 13 23) (2 12 20 21 22 23) > my Regex @rxs = (rx/3/, rx/2/); my @L = (1 .. 23); sub search($r where Regex) { grep $r, :v, @L }; say search( all(@rxs) ); (3 13 23) (2 12 20 21 22 23) > my Regex @rxs = (rx/3/, rx/2/); my @L = (1 .. 23); sub search($r where Regex) { grep $r, :v, @L }; say search( one(@rxs) ); (3 13 23) (2 12 20 21 22 23) > my Regex @rxs = (rx/3/, rx/2/); my @L = (1 .. 23); sub search($r where Regex) { grep $r, :v, @L }; say search( none(@rxs) ); (3 13 23) (2 12 20 21 22 23) No such method 'handled' for invocant of type 'Bool' > -- -shinobi.cl-