---
name: "MooseX::Declare::Syntax::KeywordHandling"
section: "3pm"
platform: "linux"
package: "libmoosex-declare-perl"
version: "0.43-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/MooseX::Declare::Syntax::KeywordHandling"
---

# MooseX::Declare::Syntax::KeywordHandling(3pm)

Basic keyword functionality

## NAME

MooseX::Declare::Syntax::KeywordHandling - Basic keyword functionality

## VERSION

version 0.43

## DESCRIPTION

This role provides the functionality common for all keyword handlers in MooseX::Declare.

## ATTRIBUTES

### identifier

This is the name of the actual keyword. It is a required string that is in the same format as a usual Perl identifier.

## METHODS

### get\_identifier

```
  Str Object->get_identifier ()
```

Returns the name the handler will be setup under.

### setup\_for

```
  Object->setup_for (ClassName $class, %args)
```

This will setup the handler in the specified `$class`. The handler will dispatch to the "parse\_declaration" method when the keyword is used.

A normal code reference will also be exported into the calling namespace. It will either be empty or, if a `"generate_export"` method is provided, the return value of that method.

### parse\_declaration

```
  Object->parse_declaration (Str $filename, HashRef $setup_args, @call_args)
```

This simply creates a new context and passes it to the "parse" method.

## REQUIRED METHODS

### parse

```
  Object->parse (Object $context)
```

This method must implement the actual parsing of the keyword syntax.

## SEE ALSO

- •

  MooseX::Declare

- •

  MooseX::Declare::Context

## AUTHOR

Florian Ragwitz \<rafl@debian.org\>

## COPYRIGHT AND LICENSE

This software is copyright (c) 2008 by Florian Ragwitz.

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