1 package Filter::Keyword::Filter;
4 use Filter::Keyword::Parser;
5 use Filter::Util::Call;
6 use Scalar::Util qw(weaken);
7 use B::Hooks::EndOfScope;
9 has parser => (is => 'lazy');
10 has active => (is => 'rwp', default => 0);
15 Filter::Keyword::Parser->new(
16 reader => sub { my $r = filter_read; ($_, $r) },
17 re_add => sub { filter_add($self) },
23 return if $self->active;
24 $self->_set_active(1);
27 $self->_set_active(0);
35 my ($string, $code) = $self->parser->get_next;