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

Specio::DeclaredAt - A class to represent where a type or coercion was declared

Api

       This class provides the following methods.

   Specio::DeclaredAt->new_from_caller($depth)
       Given a call stack depth, this method returns a new "Specio::DeclaredAt" object.

   $declared_at->package,$declared_at->filename,$declared_at->line
       Returns the call stack information recorded when the object was created. These values are always
       populated.

   $declared_at->subroutine
       Returns the subroutine from the call stack. This may be an "udnef"

   $declared_at->has_subroutine
       Returns true if there is a subroutine name associated with this object.

   $declared_at->description
       Puts all the information together into a single string like "declared in package Foo::Bar
       (.../Foo/Bar.pm) at line 42 in sub named blah".

Author

       Dave Rolsky <autarch@urth.org>

Description

       This class provides a thin wrapper around some of the return values from Perl's "caller" built-in. It's
       used internally to identify where types and coercions are being declared, which is useful when generating
       error messages.

Name

       Specio::DeclaredAt - A class to represent where a type or coercion was declared

Source

       The source code repository for Specio can be found at <https://github.com/houseabsolute/Specio>.

Support

       Bugs may be submitted at <https://github.com/houseabsolute/Specio/issues>.

Synopsis

           my $declared = Specio::DeclaredAt->new_from_caller(1);

           print $declared->description;

Version

       version 0.50

See Also