4,5,6));
is($union.WHAT, Set, "set() - union");
my $stringified = $set.stringify;
ok($stringified ~~ rx:perl5/^set\(.*Person.*\)$/, "stringify");
ok($union.equal(set(0..6, $bob)), "set() - equal");
WTemplate
=cut
#use_ok('WTemplate');
skip_rest "unreliable test results"; exit;
if eval('!("a" ~~ /a/)') { skip_rest "skipped tests - rules support appears to be missing"; exit }
my $template;
my
unction $test ; *@values) returns List {
gather {
for @values -> $x {
take $x if $x ~~ $test;
}
}
}
multi sub join (Str $delimiter ; *@values) returns List {
my $str = ~@v
$var_name, $var_value {
my Str $var_value_as_str = $var_value // $EMPTY_STR;
$text ~~ s:g/\<$var_name\>/$var_value_as_str/;
}
return $text;
}
################################
les);
}
sub fill_with($template: %variables?) is export {
my $return = $template;
$return ~~ s:g! <elem> | <block> !{ run_widget($/, %variables) }!;
return $return;
}
## some basic widge
hc --version`;
%attrs<pugs_revision> = %?CONFIG<pugs_revision>;
%attrs<uname> = chomp `uname -a`;
# Obscure hostname for privacy
%attrs<uname> ~~ s/<after \s+> (\S+)/HOSTOBSCURED/;
say %attrs.yaml;
use v6-alpha;
use Test;
plan 1;
use Text::Glob;
my $regex = Text::Glob.new.glob_to_regex('*.pm');
ok 'Glob.pm' ~~ $regex, 'glob_to_regex works';
$dir;
for $dir.readdir.sort:{numerically} -> $fn {
my ($pugsrev, $parserrev) = $fn ~~ /(\d+)-(\d+)/ err next;
next if $XXX_handwaving($pugsrev, $parserrev); # against %?CONFI
int STDERR "# $jsfile\n";
my $cmd = '../../pugs -I . -e \'use Grammar; if slurp("'.$jsfile.'") ~~ /^<JavaScript::ECMAScript3::Grammar::Spec::Program>$/ {say "ok"}else{say "not ok"}\' 2>&1';
pr
hTest $test ; *@values) returns Lazy {
gather {
for @values -> $x {
take $x if $x ~~ $test;
}
}
}
multi sub Array::join (@values, Str $delimiter) returns Str
multi sub P
it's all just "perl 6" regardless of the runtime they are going to use on the system.
[foo.pl]
given (use (perl5:DBI | java:JDBC)) {
when /perl5/ { ... }
when /java/ { ... }
};
[foo.p6o]
-
ion. Required.
=item sense
$obj->sense;
Internal method. Iterates over all senses of the given (via init) term and returns a reference to a list of the best senses. Takes no arguments.
=item
onyms
$obj->hyponyms($synset);
Internal method. Returns a list of hyponyms (synsets) for a given (as argument) word. If the synset argument is not provided, undefined or an empty string, the met
yms
$obj->hypernyms($synset);
Internal method. Returns a list of hypernyms (synsets) for a given (as argument) word. If the synset argument is not provided, undefined or an empty string, the met
heir replacements are:
~~a~~ $c->{'a'}
~~b~~ $c->{'b'}
~~a->b~~ $c->{'a'}->{'b'}
~~a->e~~ $c->{'a'}->{'e'}
~~a->1~~ $c->{'a'}->[1]
~~a->1->b~~ $c->{'a'}->[1]->{'b
idea is obvious. Real world examples might be:
my $config_file = "~~etc_dir~~/configuration";
my $VERSION = "~~version~~";
Preprocessor variables need not be scalar values: If a variable con
tern being
replaced, for example, if C<$ppp->{'config'}->{'bar'}> has the value
C<\&foo>, then C<~~bar~~> will be replaced with the result of
foo($ppp, "bar");
Arguments are not yet supported.
ater on.
It is possible to specify more than one field/value pair, but then the mode
should be given (but it will default to 'and' otherwise). Use as many
field/value-pairs as required. The mode can
nite strings in
parallel, though that seems a bit scary.
[Update: The C<=~> operator is renamed C<~~>, and it doesn't automatically
"any-fy" an array anymore, so we could pretty easily make it work o
backtrack over C<< <cut> >>, the entire match
will fail.)
[Update: Now we can just say C<<@lines ~~ s/^.*? \n**{2...} //>>.]
=head2 RFC 110: counting matches
I think we can avoid using any options
tingly, that can also be written:
/ <( _/\d+/ =~ 1..10 )> /
[Update: That'd be C<< <( ~/\d+/ ~~ 1..10 )> >> these days.]
=head2 RFC 198: Boolean Regexes
Again, I'm not much in favor of inventi
28"
By the way, there is also a high precedence logical xor operator in
Perl 6. You guessed it: C<~~>. This finally fills the strange gap in
Perl's logical operator set:
Binary (low) | Binar
any> Perl 6 subroutine. For
example:
sub mean (*@values : $type //= 'arithmetic') {
given ($type) {
when 'arithmetic': { return sum(@values) / @values; }
when 'geo
operators:
=over
=item *
unary C<_> is the explicit string context enforcer
=item *
binary C<~~> is high-precedence logical xor
=item *
unary C<*> is a list context specifier for parameters a
king against modestring for $mode";
if $perms ~~ m:perl5/\b\Q$mode\E\(([^)]*)\)/ {
# say $ERR: " $0";
my $allowed = ~$0;
if $allowed ~~ m:perl5/(?:^| )(?:any|\Q$userpath\E)\b/ {
#
say $ERR: " OK";
return;
}
elsif $allowed ~~ m:perl5/(?:^| )-(?:any|\Q$userpath\E)\b/ {
# say $ERR: " Blocked";
last;
}
}
}
# say $ERR: " Failed--throwing excep
;
$name ~~ s:g/<[ _]>+/_/;
$name ~~ s:g/\W//;
$page.name = $name;
}
if $request.mode eq 'create' | 'edit' and $p<action> eq 'save' {
$.revision.attributes<kiki:content> ~~ s:g{\n}{\
readme.txt' => 'README',
);
my @Tempfiles = qw(
pod2htmd.tmp
pod2htmd.x~~
pod2htmi.tmp
pod2htmi.x~~
);
use strict;
use File::Copy;
local $/;
foreach my $target (keys %TEXT) {
readme.txt' => 'README',
);
my @Tempfiles = qw(
pod2htmd.tmp
pod2htmd.x~~
pod2htmi.tmp
pod2htmi.x~~
);
use strict;
use File::Copy;
local $/;
foreach my $target (keys %TEXT) {