package PPI::Statement::When; =pod =head1 NAME PPI::Statement::When - A when statement =head1 SYNOPSIS foreach ( qw/ foo bar baz / ) { when ( m/b/ ) { boing($_); } when ( m/f/ ) { boom($_); } default { tchak($_); } } =head1 INHERITANCE PPI::Statement::When isa PPI::Statement isa PPI::Node isa PPI::Element =head1 DESCRIPTION C objects are used to describe when and default statements, as described in L. =head1 METHODS C has no methods beyond those provided by the standard L, L and L methods. =cut use strict; use PPI::Statement (); our $VERSION = '1.279'; our @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; =pod =head1 TO DO - Write unit tests for this package =head1 SUPPORT See the L in the main module. =head1 AUTHOR Adam Kennedy Eadamk@cpan.orgE =head1 COPYRIGHT Copyright 2001 - 2011 Adam Kennedy. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. The full text of the license can be found in the LICENSE file included with this module. =cut