logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

Class::MakeMethods::Template::Ref - Universal copy and compare methods

Description

       The following types of methods are provided via the Class::MakeMethods interface:

   clone
       Produce a deep copy of an instance of almost any underlying datatype.

       Parameters:

       init_method

       If defined, this method is called on the new object with any arguments passed in.

   prototype
       Create new instances by making a deep copy of a static prototypical instance.

       Parameters:

       init_method

       If defined, this method is called on the new object with any arguments passed in.

   compare
       Compare one object to another.

       Templates

       •   default

           Three-way (sorting-style) comparison.

       •   equals

           Are these two objects equivalent?

       •   identity

           Are these two references to the exact same object?

Name

       Class::MakeMethods::Template::Ref - Universal copy and compare methods

See Also

       See Class::MakeMethods for general information about this distribution.

       See Class::MakeMethods::Template for more about this family of subclasses.

       See Class::MakeMethods::Utility::Ref for the clone and compare functions used above.

perl v5.36.0                                       2022-10-13                    MakeMethods::Template::Ref(3pm)

Synopsis

         package MyObject;
         use Class::MakeMethods::Template::Ref (
           'Hash:new'      => [ 'new' ],
           clone           => [ 'clone' ]
         );

         package main;

         my $obj = MyObject->new( foo => ["Foozle", "Bozzle"] );
         my $clone = $obj->clone();
         print $obj->{'foo'}[1];

See Also