Identity::Utils
NAME
Identity::Utils - Provide utility functions related to distribution identities
SYNOPSIS
use Identity::Utils;
my $identity = "Foo::Bar:ver<0.0.42>:auth<zef:lizmat>:api<2.0>";
say short-name($identity); # Foo::Bar
say ver($identity); # 0.0.42
say version($identity); # v0.0.42
say auth($identity); # zef:lizmat
say ecosystem($identity); # zef
say nick($identity); # lizmat
say api($identity); # 2.0DESCRIPTION
Identity::Utils provides some utility functions for inspecting various aspects of distribution identity strings. They assume any given string is a well-formed identity in the form name:ver<0.0.1>:auth<eco:nick> with an optional api:<1> field.
SUBROUTINES
api
my $identity = "Foo::Bar:ver<0.0.42>:auth<zef:lizmat>:api<2.0>";
say api($identity); # 2.0Returns the api field of the given identity, or Nil if no api field could be found.
auth
my $identity = "Foo::Bar:ver<0.0.42>:auth<zef:lizmat>:api<2.0>";
say auth($identity); # zef:lizmatReturns the auth field of the given identity, or Nil if no auth field could be found.
ecosystem
my $identity = "Foo::Bar:ver<0.0.42>:auth<zef:lizmat>:api<2.0>";
say ecosystem($identity); # zefReturns the ecosystem part of the auth field of the given identity, or Nil if no auth field could be found.
nick
my $identity = "Foo::Bar:ver<0.0.42>:auth<zef:lizmat>:api<2.0>";
say nick($identity); # lizmatReturns the nickname part of the auth field of the given identity, or Nil if no auth field could be found.
short-name
my $identity = "Foo::Bar:ver<0.0.42>:auth<zef:lizmat>:api<2.0>";
say short-name($identity); # Foo::BarReturns the short name part of the given identity, or the identity itself if no ver, auth or api fields could be found.
ver
my $identity = "Foo::Bar:ver<0.0.42>:auth<zef:lizmat>:api<2.0>";
say ver($identity); # 0.0.42Returns the ver field of the given identity as a Str, or Nil if no ver field could be found.
version
my $identity = "Foo::Bar:ver<0.0.42>:auth<zef:lizmat>:api<2.0>";
say version($identity); # v0.0.42Returns the ver field of the given identity as a Version object, or Nil if no ver field could be found.
AUTHOR
Elizabeth Mattijsen [email protected]
Source can be located at: https://github.com/lizmat/Identity-Utils . Comments and Pull Requests are welcome.
COPYRIGHT AND LICENSE
Copyright 2022 Elizabeth Mattijsen
This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.