]> git.donarmstrong.com Git - perltidy.git/commitdiff
rewrote Alignment.pm for improved efficiency
authorSteve Hancock <perltidy@users.sourceforge.net>
Fri, 2 Oct 2020 22:45:39 +0000 (15:45 -0700)
committerSteve Hancock <perltidy@users.sourceforge.net>
Fri, 2 Oct 2020 22:45:39 +0000 (15:45 -0700)
lib/Perl/Tidy/VerticalAligner/Alignment.pm

index c4f2556f3b6cedc1028c4aba5d368e5e3b8e4291..749be2b6d36aa5e6c0c0dd6b45410f8833df0194 100644 (file)
@@ -7,57 +7,38 @@
 package Perl::Tidy::VerticalAligner::Alignment;
 use strict;
 use warnings;
-our $VERSION = '20201001';
-
-{
-
-    #    _column          # the current column number
-    #    _starting_column # column number when created
-    #    _saved_column    # a place for temporary storage
 
-    my %default_data = (
-        column          => undef,
-        starting_column => undef,
-        saved_column    => undef,
-    );
+{ #<<< A non-indenting brace
 
-    # class population count
-    {
-        my $_count = 0;
-        sub get_count        { return $_count }
-        sub _increment_count { return ++$_count }
-        sub _decrement_count { return --$_count }
-    }
-
-    # constructor
-    sub new {
-        my ( $caller, %arg ) = @_;
-        my $caller_is_obj = ref($caller);
-        my $class         = $caller_is_obj || $caller;
-        my $self          = bless {}, $class;
+our $VERSION = '20201001';
 
-        foreach my $key ( keys %default_data ) {
-            my $_key = '_' . $key;
-            if    ( exists $arg{$key} ) { $self->{$_key} = $arg{$key} }
-            elsif ($caller_is_obj)      { $self->{$_key} = $caller->{$_key} }
-            else { $self->{$_key} = $default_data{$_key} }
-        }
-        if ( !defined( $self->{_starting_column} ) ) {
-            $self->{_starting_column} = $self->{_column};
-        }
-        $self->_increment_count();
-        return $self;
+#    _column          # the current column number
+#    _starting_column # column number when created
+#    _saved_column    # a place for temporary storage
+
+sub new {
+    my ( $caller, %arg ) = @_;
+    my $caller_is_obj = ref($caller);
+    my $class         = $caller_is_obj || $caller;
+    my $self          = bless {}, $class;
+    $self->{_column}          = $arg{column};
+    $self->{_starting_column} = $arg{starting_column};
+    $self->{_saved_column}    = $arg{saved_column};
+    if ( !defined( $self->{_starting_column} ) ) {
+        $self->{_starting_column} = $self->{_column};
     }
+    return $self;
+}
 
-    sub AUTOLOAD {
+sub AUTOLOAD {
 
-        # Catch any undefined sub calls so that we are sure to get
-        # some diagnostic information.  This sub should never be called
-        # except for a programming error.
-        our $AUTOLOAD;
-        return if ( $AUTOLOAD eq 'DESTROY' );
-        my ( $pkg, $fname, $lno ) = caller();
-        print STDERR <<EOM;
+    # Catch any undefined sub calls so that we are sure to get
+    # some diagnostic information.  This sub should never be called
+    # except for a programming error.
+    our $AUTOLOAD;
+    return if ( $AUTOLOAD eq 'DESTROY' );
+    my ( $pkg, $fname, $lno ) = caller();
+    print STDERR <<EOM;
     ======================================================================
     Unexpected call to Autoload looking for sub $AUTOLOAD
     Called from package: '$pkg'  
@@ -65,47 +46,41 @@ our $VERSION = '20201001';
     This error is probably due to a recent programming change
     ======================================================================
 EOM
-        exit 1;
-    }
-
-    sub DESTROY {
-        my $self = shift;
-        $self->_decrement_count();
-        return;
-    }
-
-    sub get_column { my $self = shift; return $self->{_column} }
+    exit 1;
+}
 
-    sub get_starting_column {
-        my $self = shift;
-        return $self->{_starting_column};
-    }
+sub get_column { my $self = shift; return $self->{_column} }
 
-    sub set_column { my ( $self, $val ) = @_; $self->{_column} = $val; return }
+sub get_starting_column {
+    my $self = shift;
+    return $self->{_starting_column};
+}
 
-    sub set_starting_column {
-        my ( $self, $val ) = @_;
-        $self->{_starting_column} = $val;
-        return;
-    }
+sub set_column { my ( $self, $val ) = @_; $self->{_column} = $val; return }
 
-    sub increment_column {
-        my ( $self, $val ) = @_;
-        $self->{_column} += $val;
-        return;
-    }
+sub set_starting_column {
+    my ( $self, $val ) = @_;
+    $self->{_starting_column} = $val;
+    return;
+}
 
-    sub save_column {
-        my $self = shift;
-        $self->{_saved_column} = $self->{_column};
-        return;
-    }
+sub increment_column {
+    my ( $self, $val ) = @_;
+    $self->{_column} += $val;
+    return;
+}
 
-    sub restore_column {
-        my $self = shift;
-        $self->{_column} = $self->{_saved_column};
-        return;
-    }
+sub save_column {
+    my $self = shift;
+    $self->{_saved_column} = $self->{_column};
+    return;
 }
 
+sub restore_column {
+    my $self = shift;
+    $self->{_column} = $self->{_saved_column};
+    return;
+}
+} ## end of package VerticalAligner::Alignment
 1;
+