Decision-Depends

 view release on metacpan or  search on metacpan

lib/Decision/Depends/Var.pm  view on Meta::CPAN

  {
    print STDOUT "    No value on file for variable `", $var, "'\n"
	if $state->Verbose;
      push @deps, $var;
  }

  var => \@deps;
}

sub cmp_strVar
{
  my ( $case, $var1, $var2 ) = @_;
  
  ( $case ? uc($var1) ne uc($var2) : $var1 ne $var2 );
}

sub cmp_numVar
{
  my ( $var1, $var2 ) = @_;
  
  $var1 != $var2;
}

sub cmpVar
{
  my ( $case, $num, $str, $var1, $var2 ) = @_;

  # references that aren't the same
  if ( ref $var1 ne ref $var2 )
  {
      return 1;
  }

  # references
  elsif ( ref $var1 )
  {
      ! Data::Compare::Compare( $var1, $var2 );
  }

  elsif ( defined $num && $num )
  {
    cmp_numVar( $var1, $var2 );
  }

  elsif ( defined $str && $str )
  {
    cmp_strVar( $case, $var1, $var2 );
  }

  elsif ( $var1 =~ /$RE_Float/o && $var2 =~ /$RE_Float/o) 
  {
    cmp_numVar( $var1, $var2 );
  }

  else
  {
    cmp_strVar( $case, $var1, $var2 );
  }
}

sub update
{
  my ( $self, $target ) = @_;

  $self->{state}->setVar( $target, $self->{attr}{var}, $self->{val} );
}

sub pprint
{
  my $self = shift;

  "$self->{attr}{var} = $self->{val}";
}

1;



( run in 2.619 seconds using v1.01-cache-2.11-cpan-5837b0d9d2c )