aboutsummaryrefslogtreecommitdiffstats
path: root/devel
diff options
context:
space:
mode:
authorsunpoet <sunpoet@FreeBSD.org>2015-01-02 00:08:27 +0800
committersunpoet <sunpoet@FreeBSD.org>2015-01-02 00:08:27 +0800
commit3af9cf50838e6c4d63ffd11596d7afff327d0feb (patch)
treedfea417fa740c07b33a56a3bf34aaa090ed29a51 /devel
parent6218822c26918d2708fcda4ced957860ab31680e (diff)
downloadfreebsd-ports-gnome-3af9cf50838e6c4d63ffd11596d7afff327d0feb.tar.gz
freebsd-ports-gnome-3af9cf50838e6c4d63ffd11596d7afff327d0feb.tar.zst
freebsd-ports-gnome-3af9cf50838e6c4d63ffd11596d7afff327d0feb.zip
- Add p5-Pegex 0.59
Pegex is an Acmeist parser framework. It allows you to easily create parsers that will work equivalently in lots of programming languages! The inspiration for Pegex comes from the parsing engine upon which the postmodern programming language Perl 6 is based on. Pegex brings this beauty to the other justmodern languages that have a normal regular expression engine available. Pegex gets it name by combining Parsing Expression Grammars (PEG), with Regular Expessions (Regex). That's actually what Pegex does. PEG is the cool new way to elegantly specify recursive descent grammars. The Perl 6 language is defined in terms of a self modifying PEG language called Perl 6 Rules. Regexes are familiar to programmers of most modern programming languages. Pegex defines a simple PEG syntax, where all the terminals are regexes. This means that Pegex can be quite fast and powerful. Pegex attempts to be the simplest way to define new (or old) Domain Specific Languages (DSLs) that need to be used in several programming languages and environments. Things like JSON, YAML, Markdown etc. It also great for writing parsers/compilers that only need to work in one language. WWW: http://search.cpan.org/dist/Pegex/
Diffstat (limited to 'devel')
-rw-r--r--devel/Makefile1
-rw-r--r--devel/p5-Pegex/Makefile25
-rw-r--r--devel/p5-Pegex/distinfo2
-rw-r--r--devel/p5-Pegex/pkg-descr21
-rw-r--r--devel/p5-Pegex/pkg-plist60
5 files changed, 109 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 26fbb1b98718..406c65747cbe 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -2635,6 +2635,7 @@
SUBDIR += p5-Path-Resource
SUBDIR += p5-Path-Tiny
SUBDIR += p5-PathTools
+ SUBDIR += p5-Pegex
SUBDIR += p5-Penguin
SUBDIR += p5-Perl-Critic-Deprecated
SUBDIR += p5-Perl-Metrics-Lite
diff --git a/devel/p5-Pegex/Makefile b/devel/p5-Pegex/Makefile
new file mode 100644
index 000000000000..5061f76d4b4b
--- /dev/null
+++ b/devel/p5-Pegex/Makefile
@@ -0,0 +1,25 @@
+# Created by: Sunpoet Po-Chuan Hsieh <sunpoet@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= Pegex
+PORTVERSION= 0.59
+CATEGORIES= devel perl5
+MASTER_SITES= CPAN
+MASTER_SITE_SUBDIR= CPAN:INGY
+PKGNAMEPREFIX= p5-
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Acmeist PEG Parser Framework
+
+LICENSE= ART10 GPLv1
+LICENSE_COMB= dual
+
+BUILD_DEPENDS= p5-JSON-XS>=0:${PORTSDIR}/converters/p5-JSON-XS \
+ p5-YAML-LibYAML>=0:${PORTSDIR}/textproc/p5-YAML-LibYAML
+RUN_DEPENDS:= ${BUILD_DEPENDS}
+BUILD_DEPENDS+= p5-File-ShareDir-Install>=0.06:${PORTSDIR}/devel/p5-File-ShareDir-Install
+
+USE_PERL5= configure
+USES= perl5
+
+.include <bsd.port.mk>
diff --git a/devel/p5-Pegex/distinfo b/devel/p5-Pegex/distinfo
new file mode 100644
index 000000000000..478973bfdffe
--- /dev/null
+++ b/devel/p5-Pegex/distinfo
@@ -0,0 +1,2 @@
+SHA256 (Pegex-0.59.tar.gz) = f6561f6884a0b7c54e7d41ad989c5732c788fed35f3bbb0b5c08c30456aa231e
+SIZE (Pegex-0.59.tar.gz) = 149423
diff --git a/devel/p5-Pegex/pkg-descr b/devel/p5-Pegex/pkg-descr
new file mode 100644
index 000000000000..44c6249f28f3
--- /dev/null
+++ b/devel/p5-Pegex/pkg-descr
@@ -0,0 +1,21 @@
+Pegex is an Acmeist parser framework. It allows you to easily create parsers
+that will work equivalently in lots of programming languages! The inspiration
+for Pegex comes from the parsing engine upon which the postmodern programming
+language Perl 6 is based on. Pegex brings this beauty to the other justmodern
+languages that have a normal regular expression engine available.
+
+Pegex gets it name by combining Parsing Expression Grammars (PEG), with Regular
+Expessions (Regex). That's actually what Pegex does.
+
+PEG is the cool new way to elegantly specify recursive descent grammars. The
+Perl 6 language is defined in terms of a self modifying PEG language called Perl
+6 Rules. Regexes are familiar to programmers of most modern programming
+languages. Pegex defines a simple PEG syntax, where all the terminals are
+regexes. This means that Pegex can be quite fast and powerful.
+
+Pegex attempts to be the simplest way to define new (or old) Domain Specific
+Languages (DSLs) that need to be used in several programming languages and
+environments. Things like JSON, YAML, Markdown etc. It also great for writing
+parsers/compilers that only need to work in one language.
+
+WWW: http://search.cpan.org/dist/Pegex/
diff --git a/devel/p5-Pegex/pkg-plist b/devel/p5-Pegex/pkg-plist
new file mode 100644
index 000000000000..184a8243e3d6
--- /dev/null
+++ b/devel/p5-Pegex/pkg-plist
@@ -0,0 +1,60 @@
+%%SITE_PERL%%/Pegex.pm
+%%SITE_PERL%%/Pegex.pod
+%%SITE_PERL%%/Pegex/API.pod
+%%SITE_PERL%%/Pegex/Base.pm
+%%SITE_PERL%%/Pegex/Bootstrap.pm
+%%SITE_PERL%%/Pegex/Bootstrap.pod
+%%SITE_PERL%%/Pegex/Compiler.pm
+%%SITE_PERL%%/Pegex/Compiler.pod
+%%SITE_PERL%%/Pegex/Grammar.pm
+%%SITE_PERL%%/Pegex/Grammar.pod
+%%SITE_PERL%%/Pegex/Grammar/Atoms.pm
+%%SITE_PERL%%/Pegex/Grammar/Atoms.pod
+%%SITE_PERL%%/Pegex/Input.pm
+%%SITE_PERL%%/Pegex/Input.pod
+%%SITE_PERL%%/Pegex/Miscellany.pod
+%%SITE_PERL%%/Pegex/Module.pm
+%%SITE_PERL%%/Pegex/Module.pod
+%%SITE_PERL%%/Pegex/Optimizer.pm
+%%SITE_PERL%%/Pegex/Overview.pod
+%%SITE_PERL%%/Pegex/Parser.pm
+%%SITE_PERL%%/Pegex/Parser.pod
+%%SITE_PERL%%/Pegex/Parser/Indent.pm
+%%SITE_PERL%%/Pegex/Pegex/AST.pm
+%%SITE_PERL%%/Pegex/Pegex/Grammar.pm
+%%SITE_PERL%%/Pegex/Pegex/Grammar.pod
+%%SITE_PERL%%/Pegex/Receiver.pm
+%%SITE_PERL%%/Pegex/Receiver.pod
+%%SITE_PERL%%/Pegex/Regex.pm
+%%SITE_PERL%%/Pegex/Regex.pod
+%%SITE_PERL%%/Pegex/Resources.pod
+%%SITE_PERL%%/Pegex/Syntax.pod
+%%SITE_PERL%%/Pegex/Tree.pm
+%%SITE_PERL%%/Pegex/Tree.pod
+%%SITE_PERL%%/Pegex/Tree/Wrap.pm
+%%SITE_PERL%%/Pegex/Tree/Wrap.pod
+%%SITE_PERL%%/Pegex/Tutorial.pod
+%%SITE_PERL%%/Pegex/Tutorial/Calculator.pod
+%%SITE_PERL%%/Pegex/Tutorial/JSON.pod
+%%SITE_PERL%%/auto/share/dist/Pegex/pegex.pgx
+%%PERL5_MAN3%%/Pegex.3.gz
+%%PERL5_MAN3%%/Pegex::API.3.gz
+%%PERL5_MAN3%%/Pegex::Bootstrap.3.gz
+%%PERL5_MAN3%%/Pegex::Compiler.3.gz
+%%PERL5_MAN3%%/Pegex::Grammar.3.gz
+%%PERL5_MAN3%%/Pegex::Grammar::Atoms.3.gz
+%%PERL5_MAN3%%/Pegex::Input.3.gz
+%%PERL5_MAN3%%/Pegex::Miscellany.3.gz
+%%PERL5_MAN3%%/Pegex::Module.3.gz
+%%PERL5_MAN3%%/Pegex::Overview.3.gz
+%%PERL5_MAN3%%/Pegex::Parser.3.gz
+%%PERL5_MAN3%%/Pegex::Pegex::Grammar.3.gz
+%%PERL5_MAN3%%/Pegex::Receiver.3.gz
+%%PERL5_MAN3%%/Pegex::Regex.3.gz
+%%PERL5_MAN3%%/Pegex::Resources.3.gz
+%%PERL5_MAN3%%/Pegex::Syntax.3.gz
+%%PERL5_MAN3%%/Pegex::Tree.3.gz
+%%PERL5_MAN3%%/Pegex::Tree::Wrap.3.gz
+%%PERL5_MAN3%%/Pegex::Tutorial.3.gz
+%%PERL5_MAN3%%/Pegex::Tutorial::Calculator.3.gz
+%%PERL5_MAN3%%/Pegex::Tutorial::JSON.3.gz