Perl 6: maxpairs предупреждает о строковых неопределенных значениях - PullRequest
0 голосов
/ 09 декабря 2018

Похоже, maxpairs не нравится, когда его вызывают в списке с неопределенными значениями:

> my @foo; @foo[2] = 4; say @foo.maxpairs;
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
  in block <unit> at <unknown file> line 1

(2 => 4)

max не имеет такой же проблемы и, похоже, просто игнорирует неопределенные значения:

> my @foo; @foo[2] = 4; say @foo.max;
4

Та же ошибка возникает с:

> my @foo; @foo[2] = 4; say @foo.pairs.max(*.value)
Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
  in block <unit> at <unknown file> line 1

2 => 4

Таким образом, кажется, что неопределенные значения игнорируются только при использовании max без параметра фильтра.

Это ошибка?

1 Ответ

0 голосов
/ 09 декабря 2018

Поскольку это похоже на ошибку, я исправил ее с помощью

https://github.com/rakudo/rakudo/commit/7bf7a2c6f83a57713c

, которая также заботится о "minpairs".

...