Skip to content

Commit

Permalink
just use splice
Browse files Browse the repository at this point in the history
  • Loading branch information
kraih committed Feb 11, 2015
1 parent e6fe5ca commit b6133ab
Show file tree
Hide file tree
Showing 3 changed files with 5 additions and 9 deletions.
3 changes: 1 addition & 2 deletions lib/Mojo/Cookie/Request.pm
Expand Up @@ -8,8 +8,7 @@ sub parse {

my @cookies;
my @pairs = map {@$_} @{split_header $str // ''};
while (@pairs) {
my ($name, $value) = (shift @pairs, shift @pairs);
while (my ($name, $value) = splice @pairs, 0, 2) {
next if $name =~ /^\$/;
push @cookies, $self->new(name => $name, value => $value // '');
}
Expand Down
8 changes: 3 additions & 5 deletions lib/Mojo/Cookie/Response.pm
Expand Up @@ -14,12 +14,10 @@ sub parse {
my @cookies;
my $tree = split_cookie_header $str // '';
while (my $pairs = shift @$tree) {
push @cookies,
$self->new(name => shift(@$pairs), value => shift(@$pairs) // '');

while (@$pairs) {
my ($name, $value) = (shift @$pairs, shift @$pairs);
my ($name, $value) = splice @$pairs, 0, 2;
push @cookies, $self->new(name => $name, value => $value // '');

while (my ($name, $value) = splice @$pairs, 0, 2) {
next unless $ATTRS{my $attr = lc $name};
$value = Mojo::Date->new($value)->epoch if $attr eq 'expires';
$value = 1 if $attr eq 'secure' || $attr eq 'httponly';
Expand Down
3 changes: 1 addition & 2 deletions lib/Mojo/Reactor/Poll.pm
Expand Up @@ -44,8 +44,7 @@ sub one_tick {

# This may break in the future, but is worth it for performance
if (IO::Poll::_poll($timeout, @poll) > 0) {
while (@poll) {
my ($fd, $mode) = (shift(@poll), shift(@poll));
while (my ($fd, $mode) = splice @poll, 0, 2) {

if ($mode & (POLLIN | POLLPRI | POLLHUP | POLLERR)) {
next unless my $io = $self->{io}{$fd};
Expand Down

0 comments on commit b6133ab

Please sign in to comment.