Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: rakudo/rakudo
base: 3f501793cc
...
head fork: rakudo/rakudo
compare: 42ea0f668c
  • 15 commits
  • 110 files changed
  • 0 commit comments
  • 3 contributors
Commits on Feb 28, 2014
@Mouq Mouq Fix regression caused by correct list flattening
$/.pairs couldn't handle Matches with multiple matches under a single
index, e.g., where it should output 0 => (Match1,Match2) it would output
0 => Match1, 1 => Match2. Cursor.pm has been updated to use Arrays
instead of Parcels so this unintentional flattening doesn't occur
7c12aaf
@Mouq Mouq $0, $<named>, etc. should produce a Match if there is only one c622795
Commits on Mar 01, 2014
@TimToady TimToady awesomize Unable to deduce sequence 2209b7b
@TimToady TimToady tired of accidentally adding tabs to setting 45e2308
Commits on Mar 02, 2014
@FROGGS FROGGS bump nqp+moar rev for unicode property fixes 652a1fa
@FROGGS FROGGS check for defined elements in Baggy.grab
For some reason the hash elements are already deleted on parrot when it is about to access
.value on it.
f4c4d2a
@TimToady TimToady implement subparse, redef parse to require $ 4d8734d
Commits on Mar 03, 2014
@Mouq Mouq @<h>, @1 mean @$<h>, @$1 and %<h>, %1 mean %$<h>, %$1 456f3aa
@Mouq Mouq [Pod::To::Text] support nested items 8f8ac8e
@Mouq Mouq Parse and store Pod FormattingCode info in @.meta
This works in conjunction with an updating commit to Pod::To::HTML
3333a41
@Mouq Mouq Serialize strings being put in Pod::FormattingCode.meta 6479fff
@Mouq Mouq Pod definitions are semicolon delimited ed13bb1
@Mouq Mouq Allow any amount of content in C<code> etc f3cf9d5
@FROGGS FROGGS Merge branch 'nom' of github.com:rakudo/rakudo into eleven 74f3013
Commits on Mar 04, 2014
@FROGGS FROGGS add wrapper for scripts on windows 42ea0f6
Showing with 291 additions and 24 deletions.
  1. +2 −2 lib/Pod/To/Text.pm
  2. +16 −1 src/Perl6/Actions.nqp
  3. +12 −3 src/Perl6/Grammar.nqp
  4. +2 −0  src/core/AST.pm
  5. +2 −0  src/core/Any.pm
  6. +2 −0  src/core/Array.pm
  7. +2 −0  src/core/Associative.pm
  8. +2 −0  src/core/Attribute.pm
  9. +2 −0  src/core/Backtrace.pm
  10. +2 −0  src/core/Bag.pm
  11. +2 −0  src/core/BagHash.pm
  12. +3 −1 src/core/Baggy.pm
  13. +2 −0  src/core/Block.pm
  14. +2 −0  src/core/Bool.pm
  15. +2 −0  src/core/Buf.pm
  16. +1 −1  src/core/CallFrame.pm
  17. +2 −0  src/core/Callable.pm
  18. +1 −0  src/core/Capture.pm
  19. +2 −0  src/core/Code.pm
  20. +29 −6 src/core/CompUnitRepo/Local/Installation.pm
  21. +1 −1  src/core/Complex.pm
  22. +2 −0  src/core/Cool.pm
  23. +7 −2 src/core/Cursor.pm
  24. +2 −0  src/core/Deprecations.pm
  25. +2 −0  src/core/Duration.pm
  26. +2 −0  src/core/EXPORTHOW.pm
  27. +2 −0  src/core/Enum.pm
  28. +2 −0  src/core/EnumMap.pm
  29. +2 −0  src/core/Enumeration.pm
  30. +6 −2 src/core/Exception.pm
  31. +2 −0  src/core/Failure.pm
  32. +2 −0  src/core/ForeignCode.pm
  33. +2 −0  src/core/GatherIter.pm
  34. +9 −0 src/core/Grammar.pm
  35. +2 −0  src/core/Hash.pm
  36. +2 −0  src/core/HashIter.pm
  37. +2 −0  src/core/IO.pm
  38. +1 −0  src/core/IO/ArgFiles.pm
  39. +2 −0  src/core/IO/Socket.pm
  40. +2 −0  src/core/IO/Socket/INET.pm
  41. +2 −0  src/core/IO/Spec.pm
  42. +2 −0  src/core/IO/Spec/Cygwin.pm
  43. +3 −1 src/core/IO/Spec/QNX.pm
  44. +2 −0  src/core/IO/Spec/Unix.pm
  45. +2 −0  src/core/IO/Spec/Win32.pm
  46. +2 −0  src/core/Instant.pm
  47. +2 −0  src/core/Int.pm
  48. +2 −0  src/core/Iterable.pm
  49. +2 −0  src/core/Iterator.pm
  50. +2 −0  src/core/Junction.pm
  51. +2 −0  src/core/List.pm
  52. +2 −0  src/core/ListIter.pm
  53. +2 −0  src/core/LoL.pm
  54. +2 −0  src/core/Macro.pm
  55. +2 −0  src/core/Main.pm
  56. +2 −0  src/core/MapIter.pm
  57. +3 −1 src/core/Match.pm
  58. +2 −0  src/core/Method.pm
  59. +2 −0  src/core/Mix.pm
  60. +2 −0  src/core/MixHash.pm
  61. +2 −0  src/core/Mixy.pm
  62. +2 −0  src/core/Mu.pm
  63. +2 −0  src/core/Nil.pm
  64. +2 −0  src/core/Num.pm
  65. +2 −0  src/core/Numeric.pm
  66. +2 −0  src/core/OS.pm
  67. +2 −0  src/core/ObjAt.pm
  68. +2 −0  src/core/Order.pm
  69. +2 −0  src/core/Pair.pm
  70. +2 −0  src/core/Parameter.pm
  71. +2 −0  src/core/Parcel.pm
  72. +2 −1  src/core/Pod.pm
  73. +2 −0  src/core/Positional.pm
  74. +2 −0  src/core/PseudoStash.pm
  75. +2 −0  src/core/QuantHash.pm
  76. +2 −0  src/core/Range.pm
  77. +2 −0  src/core/Rat.pm
  78. +2 −0  src/core/Rational.pm
  79. +2 −0  src/core/Real.pm
  80. +2 −0  src/core/Regex.pm
  81. +2 −0  src/core/Routine.pm
  82. +2 −0  src/core/Scalar.pm
  83. +2 −0  src/core/Seq.pm
  84. +2 −0  src/core/SetHash.pm
  85. +2 −0  src/core/Setty.pm
  86. +2 −0  src/core/Signature.pm
  87. +2 −0  src/core/Stash.pm
  88. +2 −0  src/core/Str.pm
  89. +2 −0  src/core/Stringy.pm
  90. +2 −0  src/core/Sub.pm
  91. +2 −0  src/core/Submethod.pm
  92. +2 −0  src/core/Temporal.pm
  93. +2 −0  src/core/UInt64.pm
  94. +2 −0  src/core/Variable.pm
  95. +2 −0  src/core/Version.pm
  96. +2 −0  src/core/Whatever.pm
  97. +2 −0  src/core/WhateverCode.pm
  98. +2 −0  src/core/array_slice.pm
  99. +2 −0  src/core/control.pm
  100. +2 −0  src/core/core_epilogue.pm
  101. +2 −0  src/core/core_prologue.pm
  102. +2 −0  src/core/hash_slice.pm
  103. +2 −0  src/core/metaops.pm
  104. +2 −0  src/core/natives.pm
  105. +8 −1 src/core/operators.pm
  106. +2 −0  src/core/precedence.pm
  107. +2 −0  src/core/set_operators.pm
  108. +2 −0  src/core/stubs.pm
  109. +2 −0  src/core/tai-utc.pm
  110. +1 −1  tools/build/NQP_REVISION
View
4 lib/Pod/To/Text.pm
@@ -20,7 +20,7 @@ sub pod2text($pod) is export {
when Pod::Block::Para { $pod.content.map({pod2text($_)}).join("") }
when Pod::Block::Table { table2text($pod) }
when Pod::Block::Declarator { declarator2text($pod) }
- when Pod::Item { item2text($pod) }
+ when Pod::Item { item2text($pod).indent(2) }
when Pod::FormattingCode { formatting2text($pod) }
when Positional { $pod.map({pod2text($_)}).join("\n\n")}
when Pod::Block::Comment { }
@@ -42,7 +42,7 @@ sub code2text($pod) {
}
sub item2text($pod) {
- ' * ' ~ pod2text($pod.content).chomp.chomp
+ '* ' ~ pod2text($pod.content).chomp.chomp
}
sub named2text($pod) {
View
17 src/Perl6/Actions.nqp
@@ -690,6 +690,10 @@ class Perl6::Actions is HLL::Actions does STDActions {
for $<pod_string_character> {
@content.push($_.ast)
}
+ my @meta := [];
+ for $<meta> {
+ @meta.push(~$_)
+ }
my @t := Perl6::Pod::build_pod_string(@content);
my $past := Perl6::Pod::serialize_object(
'Pod::FormattingCode',
@@ -698,7 +702,10 @@ class Perl6::Actions is HLL::Actions does STDActions {
),
:content(
Perl6::Pod::serialize_array(@t).compile_time_value
- )
+ ),
+ :meta(
+ Perl6::Pod::serialize_aos(@meta).compile_time_value
+ ),
);
make $past.compile_time_value;
}
@@ -1631,10 +1638,18 @@ class Perl6::Actions is HLL::Actions does STDActions {
QAST::Var.new(:name('$/'), :scope('lexical')),
$*W.add_constant('Int', 'int', +$<index>),
);
+ if $<sigil> eq '@' || $<sigil> eq '%' {
+ my $name := $<sigil> eq '@' ?? 'list' !! 'hash';
+ $past := QAST::Op.new( :op('callmethod'), :name($name), $past );
+ }
}
elsif $<postcircumfix> {
$past := $<postcircumfix>.ast;
$past.unshift( QAST::Var.new( :name('$/'), :scope('lexical') ) );
+ if $<sigil> eq '@' || $<sigil> eq '%' {
+ my $name := $<sigil> eq '@' ?? 'list' !! 'hash';
+ $past := QAST::Op.new( :op('callmethod'), :name($name), $past );
+ }
}
elsif $<semilist> {
$past := $<semilist>.ast;
View
15 src/Perl6/Grammar.nqp
@@ -570,7 +570,7 @@ grammar Perl6::Grammar is HLL::Grammar does STD {
<?{ $*POD_ALLOW_FCODES }>
:my $endtag;
- $<code>=<[A..Z]>
+ <code=[A..Z]>
$<begin-tag>=['<'+ <![<]> | '«'] { $*POD_IN_FORMATTINGCODE := 1 }
<?{
my $codenum := nqp::ord($<code>.Str) - nqp::ord("A");
@@ -593,8 +593,17 @@ grammar Perl6::Grammar is HLL::Grammar does STD {
$*POD_ALLOW_FCODES := 0;
}
}
- $<content>=[ <pod_string_character> ]+?
- $endtag
+ $<content>=[
+ <!before $endtag>
+ [ <?{$<code> ne 'L' && $<code> ne 'D' && $<code> ne 'X' }> || <!before \s* \| > ]
+ <pod_string_character>
+ ]*
+ [
+ | <?{$<code> eq 'L'}> \s* \| \s* $<meta>=[<!before $endtag>.]+
+ | <?{$<code> eq 'X'}> \s* \| \s* [$<meta>=[<!before $endtag | \, >.]+] +% \,
+ | <?{$<code> eq 'D'}> \s* \| \s* [$<meta>=[<!before $endtag | \, >.]+] +% \;
+ ]?
+ [ $endtag || <.panic: "Pod formatting code $<code> missing endtag '$endtag'."> ]
}
token pod_balanced_braces {
View
2  src/core/AST.pm
@@ -33,3 +33,5 @@ my class AST {
so $!quasi_context;
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Any.pm
@@ -834,3 +834,5 @@ sub SLICE_MORE ( \SELF, $more, $array, *%adv ) is hidden_from_backtrace {
?? SLICE_HUH( SELF, @nogo, %a, %adv )
!! result;
} #SLICE_MORE
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Array.pm
@@ -231,3 +231,5 @@ class Array { # declared in BOOTSTRAP
sub circumfix:<[ ]>(*@elems) is rw { my $x = @elems.eager }
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Associative.pm
@@ -1,3 +1,5 @@
my role Associative[::T = Mu] {
method of() { T }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Attribute.pm
@@ -114,3 +114,5 @@ my class Attribute { # declared in BOOTSTRAP
multi method Str(Attribute:D:) { self.name }
multi method gist(Attribute:D:) { self.type.^name ~ " " ~ self.name }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Backtrace.pm
@@ -179,3 +179,5 @@ my class Backtrace is List {
self.grep({ !.is-hidden && (.is-routine || !.is-setting )}).join
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Bag.pm
@@ -40,3 +40,5 @@ my class Bag does Baggy {
method Mix { Mix.new-fp(%!elems.values) }
method MixHash { MixHash.new-fp(%!elems.values) }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/BagHash.pm
@@ -51,3 +51,5 @@ my class BagHash does Baggy {
method Mix { Mix.new-fp(%!elems.values) }
method MixHash { MixHash.new-fp(%!elems.values) }
}
+
+# vim: ft=perl6 expandtab sw=4
View
4 src/core/Baggy.pm
@@ -77,7 +77,7 @@ my role Baggy does QuantHash {
method grab ($count = 1) {
my @grab = ROLLPICKGRAB(self, $count, %!elems.values);
- %!elems{ @grab.map({.WHICH}).grep: { %!elems{$_}.value == 0 } }:delete;
+ %!elems{ @grab.map({.WHICH}).grep: { %!elems{$_} && %!elems{$_}.value == 0 } }:delete;
@grab;
}
method grabpairs($count = 1) {
@@ -181,3 +181,5 @@ my role Baggy does QuantHash {
samewith( { @test[$^a] }, @list );
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Block.pm
@@ -35,3 +35,5 @@ my class Block { # declared in BOOTSTRAP
()
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Bool.pm
@@ -108,3 +108,5 @@ multi infix:<xor>(*@a) { &infix:<^^>(@a); }
proto infix:<orelse>(|) { * }
multi infix:<orelse>(Mu $x = Any) { $x }
multi infix:<orelse>(Mu \a, Mu \b) { a // b }
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Buf.pm
@@ -401,3 +401,5 @@ multi sub infix:<le>(Blob:D $a, Blob:D $b) {
multi sub infix:<ge>(Blob:D $a, Blob:D $b) {
($a cmp $b) != -1
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/CallFrame.pm
@@ -72,4 +72,4 @@ sub callframe(Int $level = 0) {
CallFrame.new(level => ($level + 1));
}
-# vim: ft=perl6
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Callable.pm
@@ -2,3 +2,5 @@ my role Callable[::T = Mu] {
method of() { T }
method returns() { T }
}
+
+# vim: ft=perl6 expandtab sw=4
View
1  src/core/Capture.pm
@@ -118,3 +118,4 @@ multi sub infix:<eqv>(Capture $a, Capture $b) {
$a.WHAT === $b.WHAT && $a.list eqv $b.list && $a.hash eqv $b.hash
}
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Code.pm
@@ -26,3 +26,5 @@ my class Code does Callable { # declared in BOOTSTRAP
nqp::p6box_i(nqp::where(nqp::getstaticcode($!do)));
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
35 src/core/CompUnitRepo/Local/Installation.pm
@@ -52,7 +52,22 @@ class CompUnitRepo::Local::Installation {
%!dists.keys.first( *.IO.w )
}
- my $unix_wrapper = '#!/usr/bin/env #perl#
+ my $windows_wrapper = '@rem = \'--*-Perl-*--
+@echo off
+if "%OS%" == "Windows_NT" goto WinNT
+#perl# "%~dp0\%0" %1 %2 %3 %4 %5 %6 %7 %8 %9
+goto endofperl
+:WinNT
+#perl# "%~dp0\%0" %*
+if NOT "%COMSPEC%" == "%SystemRoot%\system32\cmd.exe" goto endofperl
+if %errorlevel% == 9009 echo You do not have Perl in your PATH.
+if errorlevel 1 goto script_failed_so_exit_with_non_zero_val 2>nul
+goto endofperl
+@rem \';
+__END__
+:endofperl
+';
+ my $perl_wrapper = '#!/usr/bin/env #perl#
sub MAIN(:$name, :$auth, :$ver, *@pos, *%named) {
my @binaries = CompUnitRepo.files(\'bin/#name#\', :$name, :$auth, :$ver);
unless +@binaries {
@@ -125,11 +140,19 @@ sub MAIN(:$name, :$auth, :$ver, *@pos, *%named) {
else {
if $file ~~ /^bin<[\\\/]>/ {
mkdir "$path/bin" unless "$path/bin".IO.d;
- my $basename = $file.IO.path.basename;
- for '', < -p -j -m > -> $ext {
- "$path/bin/$basename$ext".IO.spurt:
- $unix_wrapper.subst('#name#', $basename, :g).subst('#perl#', "perl6$ext");
- "$path/bin/$basename$ext".IO.chmod(0o755) unless $*OS eq 'MSWin32';
+ my $basename = $file.IO.path.basename;
+ my $withoutext = $basename;
+ $withoutext.=subst(/\.[exe|bat]$/, '');
+ for '', < -p -j -m > -> $be {
+ "$path/bin/$withoutext$be".IO.spurt:
+ $perl_wrapper.subst('#name#', $basename, :g).subst('#perl#', "perl6$be");
+ if $*OS eq 'MSWin32' {
+ "$path/bin/$withoutext$be.bat".IO.spurt:
+ $windows_wrapper.subst('#perl#', "perl6$be");
+ }
+ else {
+ "$path/bin/$withoutext$be".IO.chmod(0o755);
+ }
}
}
$d.files{$file} = $file-id
View
2  src/core/Complex.pm
@@ -427,4 +427,4 @@ multi postfix:<i>(Cool \a) returns Complex:D { a.Numeric * Complex.new(0e0,
constant i = Complex.new(0e0, 1e0);
-# vim: ft=perl6
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Cool.pm
@@ -283,3 +283,5 @@ proto sub chars($) is pure {*}
multi sub chars(Cool $x) { $x.Str.chars }
multi sub chars(Str:D $x) { nqp::p6box_i(nqp::chars($x)) }
multi sub chars(str $x) returns int { nqp::chars($x) }
+
+# vim: ft=perl6 expandtab sw=4
View
9 src/core/Cursor.pm
@@ -23,8 +23,11 @@ my class Cursor does NQPCursorRole {
nqp::bindattr_i($match, Match, $key, $value.from);
}
else {
- $value := nqp::p6list($value, List, Mu)
- if nqp::islist($value);
+ $value := nqp::islist($value)
+ ?? nqp::p6list($value, Array, Mu)
+ !! nqp::istype($value, Match)
+ ?? $value
+ !! [$value];
nqp::iscclass(nqp::const::CCLASS_NUMERIC, $key, 0)
?? nqp::bindpos($list, $key, $value)
!! nqp::bindkey($hash, $key, $value);
@@ -196,3 +199,5 @@ sub MAKE_REGEX($arg, :$i) {
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Deprecations.pm
@@ -70,3 +70,5 @@ END {
}
}
#?endif
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Duration.pm
@@ -38,3 +38,5 @@ multi sub infix:<->(Duration:D $a, Duration:D $b) {
multi sub infix:<%>(Duration:D $a, Real $b) {
Duration.new: $a.x % $b
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/EXPORTHOW.pm
@@ -15,3 +15,5 @@ my module EXPORTHOW {
nqp::bindkey($?PACKAGE.WHO, 'subset', Perl6::Metamodel::SubsetHOW);
nqp::bindkey($?PACKAGE.WHO, 'enum', Perl6::Metamodel::EnumHOW);
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Enum.pm
@@ -55,3 +55,5 @@ multi sub infix:<eqv>(Enum:D $a, Enum:D $b) {
multi infix:<cmp>(Enum:D \a, Enum:D \b) {
(a.key cmp b.key) || (a.value cmp b.value)
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/EnumMap.pm
@@ -132,3 +132,5 @@ multi sub infix:<eqv>(EnumMap:D $a, EnumMap:D $b) {
Bool::True;
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Enumeration.pm
@@ -87,3 +87,5 @@ Metamodel::EnumHOW.set_composalizer(-> $type, $name, %enum_values {
$r.HOW.compose($r);
$r
});
+
+# vim: ft=perl6 expandtab sw=4
View
8 src/core/Exception.pm
@@ -1131,7 +1131,11 @@ my class X::Range::InvalidArg is Exception {
}
my class X::Sequence::Deduction is Exception {
- method message() { 'Unable to deduce sequence' }
+ has $.from;
+ method message() {
+ $!from ?? "Unable to deduce arithmetic or geometric sequence from $!from (or did you really mean '..'?)"
+ !! 'Unable to deduce sequence for some unfathomable reason'
+ }
}
my class X::Backslash::UnrecognizedSequence does X::Syntax {
@@ -1443,4 +1447,4 @@ my class X::Caller::NotDynamic is Exception {
}
-# vim: ft=perl6
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Failure.pm
@@ -49,3 +49,5 @@ my &fail := -> *@msg {
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/ForeignCode.pm
@@ -17,3 +17,5 @@ my class ForeignCode does Callable { # declared in BOOTSTRAP
multi method Str(ForeignCode:D:) { self.name }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/GatherIter.pm
@@ -110,3 +110,5 @@ sub GATHER(\block, Mu :$infinite) {
GatherIter.new( block, :$infinite ).list;
}
+
+# vim: ft=perl6 expandtab sw=4
View
9 src/core/Grammar.pm
@@ -1,6 +1,13 @@
my class Grammar is Cursor {
method parse($target, :$rule = 'TOP', Mu :$actions = Mu, *%opt) {
my $*ACTIONS = $actions;
+ my $result =
+ self."!cursor_init"($target, |%opt)."$rule"().MATCH;
+ $result = Nil unless $result.to == $target.chars;
+ nqp::getlexcaller('$/') = $result;
+ }
+ method subparse($target, :$rule = 'TOP', Mu :$actions = Mu, *%opt) {
+ my $*ACTIONS = $actions;
nqp::getlexcaller('$/') =
self."!cursor_init"($target, |%opt)."$rule"().MATCH;
}
@@ -11,3 +18,5 @@ my class Grammar is Cursor {
nqp::getlexcaller('$/') = $match;
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Hash.pm
@@ -396,3 +396,5 @@ my class Hash { # declared in BOOTSTRAP
sub circumfix:<{ }>(*@elems) { my $ = Hash.new(@elems) }
sub hash(*@a, *%h) { my % = @a, %h }
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/HashIter.pm
@@ -149,3 +149,5 @@ my class HashIter is Iterator {
self.DUMP-OBJECT-ATTRS($attrs, :$indent-step, :%ctx);
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/IO.pm
@@ -826,3 +826,5 @@ sub link(Cool $target as Str, Cool $name as Str) {
}
sub chmod($mode, $filename) { $filename.path.absolute.chmod($mode); $filename }
+
+# vim: ft=perl6 expandtab sw=4
View
1  src/core/IO/ArgFiles.pm
@@ -47,3 +47,4 @@ my class IO::ArgFiles is IO::Handle {
}
}
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/IO/Socket.pm
@@ -150,3 +150,5 @@ my role IO::Socket does IO {
#?endif
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/IO/Socket/INET.pm
@@ -188,3 +188,5 @@ my class IO::Socket::INET does IO::Socket {
#?endif
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/IO/Spec.pm
@@ -69,3 +69,5 @@ my class IO::Spec {
nqp::gethllsym('perl6', 'ModuleLoader').register_absolute_path_func(
sub ($path) { return IO::Spec.rel2abs($path); }
);
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/IO/Spec/Cygwin.pm
@@ -46,3 +46,5 @@ my class IO::Spec::Cygwin is IO::Spec::Unix {
method join (|c) { IO::Spec::Win32.join(|c).subst(:global, '\\', '/') }
}
+
+# vim: ft=perl6 expandtab sw=4
View
4 src/core/IO/Spec/QNX.pm
@@ -14,4 +14,6 @@ my class IO::Spec::QNX is IO::Spec::Unix {
$node ~ $path;
}
-}
+}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/IO/Spec/Unix.pm
@@ -156,3 +156,5 @@ my class IO::Spec::Unix {
self.catdir( $base, $path );
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/IO/Spec/Win32.pm
@@ -205,3 +205,5 @@ my class IO::Spec::Win32 is IO::Spec::Unix {
}
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Instant.pm
@@ -120,3 +120,5 @@ sub term:<now>() {
}
PROCESS::<$INITTIME> = now;
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Int.pm
@@ -302,3 +302,5 @@ multi sub lsb(Int:D \i) { i.lsb }
proto sub msb($) {*}
multi sub msb(Int:D \i) { i.msb }
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Iterable.pm
@@ -14,3 +14,5 @@ my class Iterable { # declared in BOOTSTRAP
multi method Numeric(Iterable:D:) { self.elems }
multi method Str(Iterable:D:) { self.list.Str }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Iterator.pm
@@ -3,3 +3,5 @@ my class Iterator { # declared in BOOTSTRAP
method iterator() { nqp::decont(self) }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Junction.pm
@@ -143,3 +143,5 @@ sub AUTOTHREAD_METHOD($name, |c) {
nqp::p6setautothreader(&AUTOTHREAD);
Mu.HOW.setup_junction_fallback(Junction, &AUTOTHREAD_METHOD);
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/List.pm
@@ -611,3 +611,5 @@ sub reduce (&with, *@list) { @list.reduce(&with) }
sub splice(@arr, $offset = 0, $size?, *@values) {
@arr.splice($offset, $size, @values)
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/ListIter.pm
@@ -93,3 +93,5 @@ my class ListIter { # declared in BOOTSTRAP
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/LoL.pm
@@ -90,3 +90,5 @@ sub roundrobin(**@lol) {
}
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Macro.pm
@@ -1,2 +1,4 @@
my class Macro is Routine {
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Main.pm
@@ -148,3 +148,5 @@ my sub MAIN_HELPER($retval = 0) is hidden_from_backtrace {
exit 2;
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/MapIter.pm
@@ -239,3 +239,5 @@ my class MapIter is Iterator {
self.DUMP-OBJECT-ATTRS($attrs, :$indent-step, :%ctx);
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
4 src/core/Match.pm
@@ -26,7 +26,7 @@ my class Match is Capture is Cool {
method caps(Match:D:) {
my @caps;
for self.pairs -> $p {
- if $p.value ~~ Parcel {
+ if $p.value ~~ Array {
@caps.push: $p.key => $_ for $p.value.list
} else {
@caps.push: $p;
@@ -95,3 +95,5 @@ sub make(Mu \ast) {
);
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Method.pm
@@ -3,3 +3,5 @@ my class Method { # declared in BOOTSTRAP
multi method gist(Method:D:) { self.name }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Mix.pm
@@ -30,3 +30,5 @@ my class Mix does Mixy {
method Bag { Bag.new-fp(%!elems.values) }
method BagHash { BagHash.new-fp(%!elems.values) }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/MixHash.pm
@@ -48,3 +48,5 @@ my class MixHash does Mixy {
method Bag { Bag.new-fp(%!elems.values) }
method BagHash { BagHash.new-fp(%!elems.values) }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Mixy.pm
@@ -57,3 +57,5 @@ my role Mixy does Baggy {
}, 1 .. $rolls;
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Mu.pm
@@ -797,3 +797,5 @@ sub DUMP(|args (*@args, :$indent-step = 4, :%ctx?)) {
}
Metamodel::ClassHOW.exclude_parent(Mu);
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Nil.pm
@@ -27,3 +27,5 @@ Nil.^add_fallback(
anon sub (|) { Nil }
}
);
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Num.pm
@@ -473,3 +473,5 @@ multi sub cotanh(num $x) {
multi sub acotanh(num $x) {
atanh(1e0 / $x)
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Numeric.pm
@@ -284,3 +284,5 @@ multi infix:«+>»($x,$y) { $x.Numeric.Int +> $y.Numeric.Int }
proto prefix:<+^>($?, $?) is pure { * }
multi prefix:<+^>($x) { +^ $x.Numeric.Int }
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/OS.pm
@@ -28,3 +28,5 @@ my class Proc::Status {
$!exit == 0
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/ObjAt.pm
@@ -18,3 +18,5 @@ my class ObjAt { # declared in BOOTSTRAP
nqp::p6box_s(nqp::unbox_s(self));
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Order.pm
@@ -26,3 +26,5 @@ multi infix:«<=>»(int $a, int $b) {
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Pair.pm
@@ -13,3 +13,5 @@ my class Pair is Enum {
sub infix:«=>»($key, Mu $value) {
Pair.new(:key($key), :value($value))
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Parameter.pm
@@ -225,3 +225,5 @@ my class Parameter { # declared in BOOTSTRAP
nqp::isnull($!sub_signature) ?? Any !! $!sub_signature
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Parcel.pm
@@ -150,3 +150,5 @@ my sub infix:<,>(|) is pure {
}
+
+# vim: ft=perl6 expandtab sw=4
View
3  src/core/Pod.pm
@@ -66,6 +66,7 @@ my class Pod::Block::Table is Pod::Block {
my class Pod::FormattingCode is Pod::Block {
has $.type;
+ has @.meta;
}
my class Pod::Heading is Pod::Block {
@@ -81,4 +82,4 @@ class Pod::Config {
has %.config;
}
-# vim: ft=perl6
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Positional.pm
@@ -1,3 +1,5 @@
my role Positional[::T = Mu] {
method of() { T }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/PseudoStash.pm
@@ -181,3 +181,5 @@ my class PseudoStash is EnumMap {
}
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/QuantHash.pm
@@ -4,3 +4,5 @@ my role QuantHash does Associative {
method Numeric ( --> Numeric) { self.total.Numeric }
method Real ( --> Real) { self.total.Real }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Range.pm
@@ -203,3 +203,5 @@ sub infix:<^..^>($min, $max) is pure {
sub prefix:<^>($max) is pure {
Range.new(0, $max.Numeric, :excludes_max)
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Rat.pm
@@ -229,3 +229,5 @@ multi sub infix:«<=>»(Rational:D \a, Int:D \b) {
multi sub infix:«<=>»(Int:D \a, Rational:D \b) {
a * b.denominator <=> b.numerator
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Rational.pm
@@ -126,3 +126,5 @@ my role Rational[::NuT, ::DeT] does Real {
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Real.pm
@@ -139,3 +139,5 @@ multi sub atan2( \a, \b = 1e0) { a.Numeric.atan2(b.Numeric) }
proto sub unpolar($, $) {*}
multi sub unpolar(Real $mag, Real $angle) { $mag.unpolar($angle) }
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Regex.pm
@@ -43,3 +43,5 @@ my class Regex { # declared in BOOTSTRAP
$dollar_slash.Bool()
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Routine.pm
@@ -128,3 +128,5 @@ my class Routine { # declared in BOOTSTRAP
method package() { $!package }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Scalar.pm
@@ -21,3 +21,5 @@ my class Scalar { # declared in BOOTSTRAP
nqp::isnull($d) ?? Mu !! so $d.dynamic;
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Seq.pm
@@ -1,2 +1,4 @@
my class Seq is List {
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/SetHash.pm
@@ -41,3 +41,5 @@ my class SetHash does Setty {
method SetHash { self }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Setty.pm
@@ -76,3 +76,5 @@ my role Setty does QuantHash {
# TODO: WHICH will require the capability for >1 pointer in ObjAt
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Signature.pm
@@ -114,3 +114,5 @@ my class Signature { # declared in BOOTSTRAP
method returns() { $!returns }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Stash.pm
@@ -34,3 +34,5 @@ my class Stash { # declared in BOOTSTRAP
}
}
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Str.pm
@@ -1190,3 +1190,5 @@ sub substr-rw($s is rw, $from = 0, $chars = $s.chars - $from) {
}
);
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Stringy.pm
@@ -59,3 +59,5 @@ multi infix:<~&>(\a, \b) { a.Stringy ~& b.Stringy }
proto prefix:<~^>($?, $?) is pure { * }
multi prefix:<~^>(\a) { ~^ a.Stringy }
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Sub.pm
@@ -2,3 +2,5 @@ my class Sub { # declared in BOOTSTRAP
# class Sub is Routine { ... }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Submethod.pm
@@ -3,3 +3,5 @@ my class Submethod { # declared in BOOTSTRAP
multi method gist(Submethod:D:) { self.name }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Temporal.pm
@@ -671,3 +671,5 @@ sub sleep-till (Instant $till --> Bool) {
# loadable module called DateTime::strftime.
#
# =end pod
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/UInt64.pm
@@ -1,2 +1,4 @@
my Int $UINT64_UPPER = nqp::pow_I(2, 64, Num, Int);
subset UInt64 of Int where { 0 <= $_ < $UINT64_UPPER }
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Variable.pm
@@ -172,3 +172,5 @@ multi trait_mod:<will>(Variable:D $v, $block, :$compose! ) {
# for some reason exceptions are caught and not rethrown
# $*W.add_phaser($v.slash, 'COMPOSE', $block) # doesn't work :-(
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Version.pm
@@ -59,3 +59,5 @@ multi sub infix:<cmp>(Version:D $a, Version:D $b) {
$a.plus cmp $b.plus;
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/Whatever.pm
@@ -4,3 +4,5 @@ my class Whatever {
multi method perl(Whatever:D:) { '*' }
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/WhateverCode.pm
@@ -1,2 +1,4 @@
my class WhateverCode is Code {
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/array_slice.pm
@@ -199,3 +199,5 @@ multi sub postcircumfix:<[ ]>(\SELF, :$k!, *%other) is rw {
multi sub postcircumfix:<[ ]>(\SELF, :$v!, *%other) is rw {
SLICE_MORE( SELF, SELF.keys, True, :$v, |%other );
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/control.pm
@@ -254,3 +254,5 @@ sub QX($cmd) {
sub EXHAUST(|) {
X::ControlFlow::Return.new.throw();
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/core_epilogue.pm
@@ -69,3 +69,5 @@ else {
nqp::bindhllsym('perl6', 'ModuleLoader', CompUnitRepo);
{YOU_ARE_HERE}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/core_prologue.pm
@@ -9,3 +9,5 @@ my class WhateverCode { ... }
my role Positional { ... }
my role Associative { ... }
my role Callable { ... }
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/hash_slice.pm
@@ -119,3 +119,5 @@ multi sub postcircumfix:<{ }>(\SELF, :$k!, *%other) is rw {
multi sub postcircumfix:<{ }>(\SELF, :$p!, *%other) is rw {
SLICE_MORE( SELF, SELF.keys, False, :$p, |%other );
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/metaops.pm
@@ -367,3 +367,5 @@ multi sub hyper(\op, \a, Associative \b, :$dwim-left, :$dwim-right) {
hash @keys Z hyper(op, a, b{@keys}, :$dwim-left, :$dwim-right);
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/natives.pm
@@ -21,3 +21,5 @@ my native num32 is repr('P6num') is Num is nativesize(32) { }
my native num64 is repr('P6num') is Num is nativesize(64) { }
my native str is repr('P6str') is Str { }
+
+# vim: ft=perl6 expandtab sw=4
View
9 src/core/operators.pm
@@ -120,6 +120,7 @@ sub SEQUENCE($left, Mu $right, :$exclude_end) {
take $value;
}
unless $stop {
+ my $badseq;
my ($a, $b, $c);
unless $code.defined {
$tail.munch($tail.elems - 3) if $tail.elems > 3;
@@ -158,6 +159,7 @@ sub SEQUENCE($left, Mu $right, :$exclude_end) {
$code = { $^x * $ab }
}
}
+ $badseq = "$a,$b,$c" unless $code;
}
elsif $tail.elems == 2 {
my $ab = $b - $a;
@@ -193,8 +195,11 @@ sub SEQUENCE($left, Mu $right, :$exclude_end) {
take $value;
}
}
+ elsif $badseq {
+ $value = (sub { fail X::Sequence::Deduction.new(:from($badseq)) })();
+ }
else {
- $value = (sub { fail X::Sequence::Deduction.new })();
+ $value = (sub { fail X::Sequence::Deduction.new() })();
}
}
take $value unless $exclude_end;
@@ -336,3 +341,5 @@ sub infix:<andthen>(*@a) {
}
$current;
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/precedence.pm
@@ -125,3 +125,5 @@ BEGIN {
trait_mod:<is>(&infix:<but>, :prec($structural));
trait_mod:<is>(&infix:<does>, :prec($structural));
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/set_operators.pm
@@ -254,3 +254,5 @@ sub bag(*@args --> Bag) { Bag.new(|@args) }
sub mix(*@args --> Mix) { Mix.new(|@args) }
# U+2205 EMPTY SET
#constant term:<<"\x2205">> = set(); #Cannot call ACCEPTS; no signatures match
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/stubs.pm
@@ -42,3 +42,5 @@ sub DYNAMIC(\name) is rw {
}
Dummy.HOW.set_autogen_proto(&Dummy::AUTOGEN);
}
+
+# vim: ft=perl6 expandtab sw=4
View
2  src/core/tai-utc.pm
@@ -88,3 +88,5 @@ my module tai-utc {
};
};
+
+# vim: ft=perl6 expandtab sw=4
View
2  tools/build/NQP_REVISION
@@ -1 +1 @@
-2014.02-2-g5796e43
+2014.02-3-ga2324ac

No commit comments for this range

Something went wrong with that request. Please try again.