PPI::Token::Attribute(3) User Contributed Perl Documentation PPI::Token::Attribute(3)

# [NAME](#NAME)

PPI::Token::Attribute - A token for a subroutine attribute

# [INHERITANCE](#INHERITANCE)

```
  PPI::Token::Attribute
  isa PPI::Token
      isa PPI::Element
```

# [DESCRIPTION](#DESCRIPTION)

In Perl, attributes are a relatively recent addition to the language.

Given the code " sub foo : bar(something) {} ", the bar(something) part is the attribute.

A "PPI::Token::Attribute" token represents the entire of the attribute, as the braces and its contents are not parsed into the tree, and are treated by Perl (and thus by us) as a single string.

# [METHODS](#METHODS)

This class provides some additional methods beyond those provided by its PPI::Token and PPI::Element parent classes.

## [identifier](#identifier)

The "identifier" attribute returns the identifier part of the attribute.

That is, for the attribute foo(bar), the "identifier" method would return "foo".

## [parameters](#parameters)

The "parameters" method returns the parameter string for the attribute.

That is, for the attribute foo(bar), the "parameters" method would return "bar".

Returns the parameters as a string (including the null string '' for the case of an attribute such as foo().)

Returns "undef" if the attribute does not have parameters.

# [SUPPORT](#SUPPORT)

See the support section in the main module.

# [AUTHOR](#AUTHOR)

Adam Kennedy &lt;adamk@cpan.org&gt;

# [COPYRIGHT](#COPYRIGHT)

Copyright 2001 - 2011 Adam Kennedy.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.

2026-08-18 perl v5.44.0

---

Document: PPI::Token::Attribute(3pm) from perl-ppi 1.291-r1 (Chainguard OS)
Source: https://github.com/Perl-Critic/PPI
