[Templates-cvs] cvs commit: TT3/lib/Template/Directive My.pm

cvs@template-toolkit.org cvs@template-toolkit.org
Wed, 01 Dec 2004 18:01:22 +0000


cvs         04/12/01 18:01:22

  Modified:    lib/Template/Directive My.pm
  Log:
  * now use parser's parse_ident_assign_expr() method
  
  Revision  Changes    Path
  1.2       +10 -9     TT3/lib/Template/Directive/My.pm
  
  Index: My.pm
  ===================================================================
  RCS file: /template-toolkit/TT3/lib/Template/Directive/My.pm,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- My.pm	2004/12/01 11:15:30	1.1
  +++ My.pm	2004/12/01 18:01:22	1.2
  @@ -15,7 +15,7 @@
   #   modify it under the same terms as Perl itself.
   #
   # REVISION
  -#   $Id: My.pm,v 1.1 2004/12/01 11:15:30 abw Exp $
  +#   $Id: My.pm,v 1.2 2004/12/01 18:01:22 abw Exp $
   #
   #========================================================================
   
  @@ -26,7 +26,7 @@
   use Template::Directive;
   use base qw( Template::Directive );
   
  -our $VERSION = sprintf("%d.%02d", q$Revision: 1.1 $ =~ /(\d+)\.(\d+)/);
  +our $VERSION = sprintf("%d.%02d", q$Revision: 1.2 $ =~ /(\d+)\.(\d+)/);
   our $DEBUG   = 0 unless defined $DEBUG;
   our $ERROR   = '';
   our $KEYWORD = 'MY';
  @@ -34,23 +34,24 @@
   
   sub parse {
       my ($self, $textref, $handler, $match) = @_;
  -    my ($expr, @exprs);
  +    my ($tuple, @vars);
   
       my $parser = $match->{ parser }
           || return $self->error('no parser defined');
   
  -    while ($expr = $parser->parse_assign($textref, $match)) {
  -        push(@exprs, $expr);
  +    while ($tuple = $parser->parse_ident_assign_expr($textref)) {
  +        push(@vars, $tuple);
       }
   
  -    if (@exprs) {
  -        return $handler->expr([ my => @exprs ])
  +    if (@vars) {
  +        return $handler->expr([ my => \@vars ])
               || return $self->error($handler->error());
       }
       else {
  -        return $self->error( 'missing assignment(s) after ',
  +        return $self->error( 'no variables set after ',
                                $self->keyword($match) );
       }
  +
   }
   
   
  @@ -82,7 +83,7 @@
   
   =head1 VERSION
   
  -$Revision: 1.1 $
  +$Revision: 1.2 $
   
   =head1 COPYRIGHT