7 use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
9 ###############################################################################
13 TmplToken.pm - Object representing a scanner token for .tmpl files
17 This is a class representing a token scanned from an HTML::Template .tmpl file.
21 ###############################################################################
28 ###############################################################################
32 my $class = ref($this) || $this;
35 ($self->{'_string'}, $self->{'_type'}, $self->{'_lc'}, $self->{'_path'}) = @_;
41 return $this->{'_string'}
46 return $this->{'_type'}
51 return $this->{'_path'}
61 return $this->{'_attr'};
66 $this->{'_attr'} = ref $_[0] eq 'HASH'? $_[0]: \@_;
70 # only meaningful for TEXT_PARAMETRIZED tokens
73 return $this->{'_kids'};
76 # only meaningful for TEXT_PARAMETRIZED tokens
79 $this->{'_kids'} = ref $_[0] eq 'ARRAY'? $_[0]: \@_;
83 # only meaningful for TEXT_PARAMETRIZED tokens
84 # FIXME: DIRECTIVE is not necessarily TMPL_VAR !!
87 return map { $_->type == TmplTokenType::DIRECTIVE? $_: ()} @{$this->{'_kids'}};
90 # only meaningful for TEXT_PARAMETRIZED tokens
93 return $this->{'_form'};
96 # only meaningful for TEXT_PARAMETRIZED tokens
99 $this->{'_form'} = $_[0];
103 ###############################################################################