]> Sergey Matveev's repositories - public-inbox.git/commitdiff
searchthread: remove + inline single-use cast sub
authorEric Wong <e@80x24.org>
Wed, 22 Jun 2022 08:02:52 +0000 (08:02 +0000)
committerEric Wong <e@80x24.org>
Wed, 22 Jun 2022 16:33:14 +0000 (16:33 +0000)
No point in wasting several kilobytes of memory for a single-use
one-line sub.

lib/PublicInbox/SearchThread.pm

index f07dd69665623985461df30166cd0c148b4fe7f8..cc8c90ce23d4f51354e5599ecf16810d86afdd6d 100644 (file)
@@ -38,13 +38,13 @@ sub thread {
                # TODO: move this to a more appropriate place, breaks tests
                # if we do it during psgi_cull
                delete $_->{num};
-
-               PublicInbox::SearchThread::Msg::cast($_);
+               bless $_, 'PublicInbox::SearchThread::Msg';
                if (exists $id_table{$_->{mid}}) {
                        $_->{children} = [];
                        push @imposters, $_; # we'll deal with them later
                        undef;
                } else {
+                       $_->{children} = {}; # will become arrayref later
                        $id_table{$_->{mid}} = $_;
                        defined($_->{references});
                }
@@ -108,13 +108,6 @@ sub ghost {
        }, __PACKAGE__;
 }
 
-# give a existing smsg the methods of this class
-sub cast {
-       my ($smsg) = @_;
-       $smsg->{children} = {};
-       bless $smsg, __PACKAGE__;
-}
-
 sub topmost {
        my ($self) = @_;
        my @q = ($self);