---
name: "ExtUtils::XSpp::Parser"
section: "3pm"
platform: "linux"
package: "libextutils-xspp-perl"
version: "0.1800-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/ExtUtils::XSpp::Parser"
---

# ExtUtils::XSpp::Parser(3pm)

an XS++ parser

## NAME

ExtUtils::XSpp::Parser - an XS++ parser

### ExtUtils::XSpp::Parser::new( file =\> path )

Create a new XS++ parser.

### ExtUtils::XSpp::Parser::parse

Parse the file data; returns true on success, false otherwise, on failure `"get_errors"` will return the list of errors.

### ExtUtils::XSpp::Parser::get\_data

Returns a list containing the parsed data. Each item of the list is a subclass of `"ExtUtils::XSpp::Node"`

### ExtUtils::XSpp::Parser::get\_errors

Returns the parsing errors as an array.

### ExtUtils::XSpp::Parser::load\_plugin

Loads the specified plugin and calls its `"register_plugin"` method.

### ExtUtils::XSpp::Parser::add\_post\_process\_plugin

Adds the specified plugin to be called after parsing is complete to modify the parse tree before it is emitted.

### ExtUtils::XSpp::Parser::add\_class\_tag\_plugin

Adds the specified plugin to the list of plugins that can handle custom `%foo` annotations for a class.

### ExtUtils::XSpp::Parser::add\_function\_tag\_plugin

Adds the specified plugin to the list of plugins that can handle custom `%foo` annotations for a function.

### ExtUtils::XSpp::Parser::add\_method\_tag\_plugin

Adds the specified plugin to the list of plugins that can handle custom `%foo` annotations for a function.

### ExtUtils::XSpp::Parser::add\_argument\_tag\_plugin

Adds the specified plugin to the list of plugins that can handle custom `%foo` annotations for an arguments.

### ExtUtils::XSpp::Parser::add\_toplevel\_tag\_plugin

Adds the specified plugin to the list of plugins that can handle custom `%foo` top level directives.
