PPI::Statement::When - Describes all compound statements


PPI documentation Contained in the PPI distribution.

Index


Code Index:

NAME

Top

PPI::Statement::When - Describes all compound statements

SYNOPSIS

Top

  foreach ( qw/ foo bar baz / ) {
      when ( m/b/ ) {
          boing($_);
      }
      when ( m/f/ ) {
          boom($_);
      }
      default {
          tchak($_);
      }
  }

INHERITANCE

Top

  PPI::Statement::When
  isa PPI::Statement
      isa PPI::Node
          isa PPI::Element

DESCRIPTION

Top

PPI::Statement::When objects are used to describe when and default statements, as described in perlsyn.

METHODS

Top

PPI::Structure::When has no methods beyond those provided by the standard PPI::Structure, PPI::Node and PPI::Element methods.

Got any ideas for methods? Submit a report to rt.cpan.org!

TO DO

Top

- Write unit tests for this package

SUPPORT

Top

See the support section in the main module.

AUTHOR

Top

Adam Kennedy <adamk@cpan.org>

COPYRIGHT

Top


PPI documentation Contained in the PPI distribution.
package PPI::Statement::When;

use strict;
use PPI::Statement ();

use vars qw{$VERSION @ISA};
BEGIN {
	$VERSION = '1.215';
	@ISA     = 'PPI::Statement';
}

# Lexer clues
sub __LEXER__normal { '' }

sub _complete {
	my $child = $_[0]->schild(-1);
	return !! (
		defined $child
		and
		$child->isa('PPI::Structure::Block')
		and
		$child->complete
	);
}





#####################################################################
# PPI::Node Methods

sub scope {
	1;
}

1;