Perl-PrereqScanner-NotQuiteLite

 view release on metacpan or  search on metacpan

lib/Perl/PrereqScanner/NotQuiteLite/Context.pm  view on Meta::CPAN

  return 1 if $token eq 'sub';
  return 0 if !exists $self->{defines_sub};
  return 1 if exists $self->{defines_sub}{$token};
  return 0;
}

sub enables_utf8 {
  my ($self, $module) = @_;
  exists $enables_utf8{$module} ? 1 : 0;
}

sub add_package {
  my ($self, $package) = @_;
  $self->{packages}{$package} = 1;
}

sub packages {
  my $self = shift;
  keys %{$self->{packages} || {}};
}

sub remove_inner_packages_from_requirements {
  my $self = shift;
  for my $package ($self->packages) {
    for my $rel (qw/requires recommends suggests noes/) {
      next unless $self->{$rel};
      $self->{$rel}->clear_requirement($package);
    }
  }
}

sub merge_perl {
  my $self = shift;
  return unless $self->{perl};

  my $perl = $self->{requires}->requirements_for_module('perl');
  if ($self->{perl}->accepts_module('perl', $perl)) {
    delete $self->{perl_minimum_version};
  } else {
    $self->add(perl => $self->{perl}->requirements_for_module('perl'));
  }
}

sub _keywords {
    my $i = 1;
    map {$_ => $i++} qw(
        __CLASS__
        __DATA__
        __END__
        __FILE__
        __LINE__
        __PACKAGE__
        __SUB__
        ADJUST
        AUTOLOAD
        BEGIN
        CHECK
        DESTROY
        END
        INIT
        UNITCHECK
        abs
        accept
        alarm
        all
        and
        any
        atan2
        bind
        binmode
        bless
        break
        caller
        catch
        chdir
        chmod
        chomp
        chop
        chown
        chr
        chroot
        class
        close
        closedir
        cmp
        connect
        continue
        cos
        crypt
        dbmclose
        dbmopen
        default
        defer
        defined
        delete
        die
        do
        dump
        each
        else
        elsif
        endgrent
        endhostent
        endnetent
        endprotoent
        endpwent
        endservent
        eof
        eq
        eval
        evalbytes
        exec
        exists
        exit
        exp
        fc
        fcntl
        field
        fileno
        finally
        flock



( run in 1.167 second using v1.01-cache-2.11-cpan-39bf76dae61 )