les);
}
sub fill_with($template: %variables?) is export {
my $return = $template;
$return ~~ s:g! <elem> | <block> !{ run_widget($/, %variables) }!;
return $return;
}
## some basic widge
ch
Number The numeric value of the matched string (i.e. given
"foo123bar"~~/\d+/, then $/ in numeric context will be 123)
Boolean True if success, false otherwise
=h
mit> and <cut> (see below).
=head2 Modifiers
Used as adverbial modifiers:
"foO bar" ~~ m:s:ignorecase:g/[o | r] ./
and can appear within rules
sub rule { <foo> [:i <ba
er .= chomp;
},
string => -> ($str) { $buffer ~= $str }
);
my $file = $?FILE;
$file ~~ s:P5/basic.t/sample.kwid/;
lives_ok {
parse($file, %events);
}, '... we parsed the sample fil
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");
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';
in32 mingw msys cygwin> {
$redir_pre = ">";
$redir_post = "";
};
my $file = $?FILE;
$file ~~ s:P5/output.t/script.pl/;
my $cmd = "$*EXECUTABLE_NAME $file $redir_pre $out_fn $redir_post";
%*EN
use v6-alpha;
use Rosetta::Shell;
my Str @cmd_line_args = @*ARGS.grep:{ $_ ~~ m/^<[a-zA-Z:_]>+$/ };
my ($engine_name, @user_lang_prefs) = @cmd_line_args;
$engine_name //= 'Rosetta::Engine::Example'
Kiss;
=cut
my $RAND = Math::Random::Kiss.new();
ok($RAND, 'new() Math::Random::Kiss');
ok($RAND ~~ Rand, 'Math::Random::Kiss does Rand');
ok($RAND.rand() >= 0, 'rand() returns numbers greater than
my Automata::Cellular $ca .= new(:@state, :$rule, :$steps, :$display_width);
is($ca ~~ ::Automata::Cellular, Bool::True, '$ca object instantiated');
is($ca.stage, 1,
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) {
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) {