Erlang source code parser for Perl. https://metacpan.org/pod/Erlang::Parser
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Nicole Izumi e3c142823e
Release 0.6.
4 years ago
lib/Erlang Release 0.6. 4 years ago
t Disable POD tests for normal installs (per CPAN RT #115216). 4 years ago
.gitignore Including Parser.pm in the release. 9 years ago
.travis.yml Travis-ready. 8 years ago
Changes Release 0.6. 4 years ago
MANIFEST Including Parser.pm in the release. 9 years ago
Makefile.PL Release 0.5.3. 4 years ago
README Release 0.6. 4 years ago
TODO Retab; precedence parsing fixes; missing keywords 8 years ago
ignore.txt ignore .git 9 years ago

README

NAME
Erlang::Parser - Erlang source code parser

VERSION
This document describes version 0.6 of Erlang::Parser released
2016-06-20.

SYNOPSIS
use Erlang::Parser;

# Parse the code found in DATA; return all root-level nodes.
my @nodes = Erlang::Parser->parse(\*DATA);

# Each object in @nodes implements the Erlang::Parser::Node role, which
# is the function 'print'. It takes one argument, the filehandle to
# pretty-print to.
$_->print(*STDOUT) for @nodes;

# Use the accessors of each node type to get at the innards:
my ($directive, $def) = Erlang::Parser->parse(<<ERL);
-export([my_fun/2]).
my_fun(X, Y) -> X + Y.
ERL

# Have fun!

DESCRIPTION
Erlang::Parser is an Erlang source code parser. You can feed "parse()"
any fragment of code which would be acceptable at the top-level of a
".erl" file, including a full file.

Methods
"parse"
Parses an top-level Erlang declarations from a string, list of lines
of code, or filehandle. Returns a list of top-level nodes.

my @nodes = Erlang::Parser->parse(
'myfun(X) -> X + X.',
'myfun(X, Y) -> X + Y.',
);

"error"
Called when an error occurs. Reports based on the parser given as
the first argument.

AUTHOR
Yuki Izumi (anneli@cpan.org)

SUPPORT
You can find documentation for Erlang::Parser with the perldoc command.

perldoc Erlang::Parser

Other places of interest:

* GitHub: source code repository

<http://github.com/kivikakk/Erlang--Parser>

* GitHub: open an issue

<http://github.com/kivikakk/Erlang--Parser/issues>

* Twitter: the author

<http://twitter.com/kivikakk>

LICENSE AND COPYRIGHT
Copyright (c) 2011-2016, Yuki Izumi "<ANNELI@CPAN.org>". All rights
reserved.

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