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

# [NAME](#NAME)

PPI::Token::Symbol - A token class for variables and other symbols

# [INHERITANCE](#INHERITANCE)

```
  PPI::Token::Symbol
  isa PPI::Token
      isa PPI::Element
```

# [DESCRIPTION](#DESCRIPTION)

The "PPI::Token::Symbol" class is used to cover all tokens that represent variables and other things that start with a sigil.

# [METHODS](#METHODS)

This class has several methods beyond what is provided by its PPI::Token and PPI::Element parent classes.

Most methods are provided to help work out what the object is actually pointing at, rather than what it might appear to be pointing at.

## [canonical](#canonical)

The "canonical" method returns a normalized, canonical version of the symbol.

For example, it converts "$ ::foo'bar::baz" to $main::foo::bar::baz.

This does not fully resolve the symbol, but merely removes syntax variations.

## [symbol](#symbol)

The "symbol" method returns the ACTUAL symbol this token refers to.

A token of $foo might actually be referring to @foo, if it is found in the form $foo\[1].

This method attempts to resolve these issues to determine the actual symbol.

Returns the symbol as a string.

## [raw\_type](#raw_type)

The "raw\_type" method returns the **apparent** type of the symbol in the form of its sigil.

Returns the sigil as a string.

## [symbol\_type](#symbol_type)

The "symbol\_type" method returns the **actual** type of the symbol in the form of its sigil.

Returns the sigil as a string.

# [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-10-26 perl v5.44.0

---

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