Perl Programming Documentation
Download Perl
Explore

Manual

- Overview
- Tutorials
- FAQs
- History / Changes
- License

Reference

- Language
- Functions
- Operators
- Special Variables
- Pragmas
- Utilities
- Internals
- Platform Specific

Modules

- A • B • C • D • E
- F • G • H • I • L
- M • N • O • P • S
- T • U • X

Tools

- Preferences

# state

Perl 5 version 26.0 documentation
Go to top
Show recent pages
Recently read

# state

Perl functions A-Z | Perl functions by category | The 'perlfunc' manpage

- state VARLIST

- state TYPE VARLIST
- state VARLIST : ATTRS
- state TYPE VARLIST : ATTRS

  state declares a lexically scoped variable, just like my. However, those variables will never be reinitialized, contrary to lexical variables that are reinitialized each time their enclosing block is entered. See Persistent Private Variables in perlsub for details.

  If more than one variable is listed, the list must be placed in parentheses. With a parenthesised list, undef can be used as a dummy placeholder. However, since initialization of state variables in list context is currently not possible this would serve no purpose.

  state is available only if the state feature is enabled or if it is prefixed with `CORE::` . The state feature is enabled automatically with a `use v5.10` (or higher) declaration in the current scope.