From: Steve Hancock Date: Wed, 7 Oct 2020 00:09:02 +0000 (-0700) Subject: add sub to return maximum indentation level X-Git-Tag: 20201001.01~12 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=dddf375e7503cdc45d5aa68ca8764021b3bf2ba1;p=perltidy.git add sub to return maximum indentation level --- diff --git a/lib/Perl/Tidy/Tokenizer.pm b/lib/Perl/Tidy/Tokenizer.pm index 8f1b81f0..27ceee9f 100644 --- a/lib/Perl/Tidy/Tokenizer.pm +++ b/lib/Perl/Tidy/Tokenizer.pm @@ -163,6 +163,7 @@ BEGIN { _line_of_text_ => $i++, _rlower_case_labels_at_ => $i++, _extended_syntax_ => $i++, + _maximum_level_ => $i++, }; } @@ -320,6 +321,7 @@ sub new { $self->[_line_of_text_] = ""; $self->[_rlower_case_labels_at_] = undef; $self->[_extended_syntax_] = $args{extended_syntax}; + $self->[_maximum_level_] = 0; bless $self, $class; $tokenizer_self = $self; @@ -433,6 +435,10 @@ sub write_diagnostics { return; } +sub get_maximum_level { + return $tokenizer_self->[_maximum_level_]; +} + sub report_tokenization_errors { my $self = shift; @@ -3995,6 +4001,11 @@ EOM push( @{$rslevel_stack}, 1 + $slevel_in_tokenizer ); $level_in_tokenizer++; + if ( $level_in_tokenizer > $tokenizer_self->[_maximum_level_] ) + { + $tokenizer_self->[ _maximum_level_ ] = $level_in_tokenizer; + } + if ($forced_indentation_flag) { # break BEFORE '?' when there is forced indentation