aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Dalton <aaron@FreeBSD.org>2006-05-15 06:53:27 +0000
committerAaron Dalton <aaron@FreeBSD.org>2006-05-15 06:53:27 +0000
commit1c588756cc9814601beecb27df11fe37bf6d7db2 (patch)
tree719c3a7808448be917fc9dcb91862b04e2b8a7b1
parent2d627f9f285817593c1c8fc70da15e5a5b3f39ca (diff)
downloadports-1c588756cc9814601beecb27df11fe37bf6d7db2.tar.gz
ports-1c588756cc9814601beecb27df11fe37bf6d7db2.zip
Notes
-rw-r--r--math/Makefile1
-rw-r--r--math/p5-Math-SymbolicX-ParserExtensionFactory/Makefile31
-rw-r--r--math/p5-Math-SymbolicX-ParserExtensionFactory/distinfo3
-rw-r--r--math/p5-Math-SymbolicX-ParserExtensionFactory/pkg-descr38
-rw-r--r--math/p5-Math-SymbolicX-ParserExtensionFactory/pkg-plist7
5 files changed, 80 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile
index 271fea7f1209..9293d4e3b80b 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -193,6 +193,7 @@
SUBDIR += p5-Math-Symbolic-Custom-CCompiler
SUBDIR += p5-Math-Symbolic-Custom-Contains
SUBDIR += p5-Math-SymbolicX-Inline
+ SUBDIR += p5-Math-SymbolicX-ParserExtensionFactory
SUBDIR += p5-Math-TrulyRandom
SUBDIR += p5-Math-Vec
SUBDIR += p5-Math-VecStat
diff --git a/math/p5-Math-SymbolicX-ParserExtensionFactory/Makefile b/math/p5-Math-SymbolicX-ParserExtensionFactory/Makefile
new file mode 100644
index 000000000000..4ca6594ba1f1
--- /dev/null
+++ b/math/p5-Math-SymbolicX-ParserExtensionFactory/Makefile
@@ -0,0 +1,31 @@
+# New ports collection makefile for: Math-SymbolicX-ParserExtensionFactory
+# Date created: 15 May 2006
+# Whom: Aaron Dalton <aaron@FreeBSD.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= Math-SymbolicX-ParserExtensionFactory
+PORTVERSION= 1.00
+CATEGORIES= math perl5
+MASTER_SITES= ${MASTER_SITE_PERL_CPAN}
+MASTER_SITE_SUBDIR= Math
+PKGNAMEPREFIX= p5-
+
+MAINTAINER= aaron@FreeBSD.org
+COMMENT= Generate parser extensions
+
+BUILD_DEPENDS= ${SITE_PERL}/Math/Symbolic.pm:${PORTSDIR}/math/p5-Math-Symbolic
+RUN_DEPENDS= ${BUILD_DEPENDS}
+
+MAN3= Math::SymbolicX::ParserExtensionFactory.3
+
+PERL_CONFIGURE= yes
+
+.include <bsd.port.pre.mk>
+
+.if ${PERL_LEVEL} < 500600
+IGNORE= requires at least Perl 5.6 due to dependencies. Please install lang/perl5.8 and try again
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/math/p5-Math-SymbolicX-ParserExtensionFactory/distinfo b/math/p5-Math-SymbolicX-ParserExtensionFactory/distinfo
new file mode 100644
index 000000000000..ddd0912d8e4a
--- /dev/null
+++ b/math/p5-Math-SymbolicX-ParserExtensionFactory/distinfo
@@ -0,0 +1,3 @@
+MD5 (Math-SymbolicX-ParserExtensionFactory-1.00.tar.gz) = f9f9cd7ed2e65c3378824833320b4512
+SHA256 (Math-SymbolicX-ParserExtensionFactory-1.00.tar.gz) = d6343cc4260f0bf6e52a31f97030fe0faa7ea25a1cc33d0a1754968f1e3d38e3
+SIZE (Math-SymbolicX-ParserExtensionFactory-1.00.tar.gz) = 5481
diff --git a/math/p5-Math-SymbolicX-ParserExtensionFactory/pkg-descr b/math/p5-Math-SymbolicX-ParserExtensionFactory/pkg-descr
new file mode 100644
index 000000000000..0a0cb788d5dc
--- /dev/null
+++ b/math/p5-Math-SymbolicX-ParserExtensionFactory/pkg-descr
@@ -0,0 +1,38 @@
+This module provides a simple way to extend the Math::Symbolic parser with
+arbitrary functions that return any valid Math::Symbolic tree. The return
+value of the function call is inserted into the complete parse tree at the
+point at which the function call is parsed. Familiarity with the
+Math::Symbolic module will be assumed throughout the documentation.
+
+This module is not object oriented. It does not export anything. You
+should not call any subroutines directly nor should you modify any class
+data directly. The complete interface is the call to use
+Math::SymbolicX::ParserExtensionFactory and its arguments. The reason for
+the long module name is that you should not have to call it multiple times
+in your code because it modifies the parser for good. It is intended to be
+a pain to type. :-)
+
+The aim of the module is to allow for hooks into the parser without
+modifying the parser yourself because that requires rather in-depth
+knowledge of the module code. By specifying key => value pairs of function
+names and function implementations (code references) as arguments to the
+use() call of the module, this module extends the parser that is stored in
+the $Math::Symbolic::Parser variable with the specified functions and
+whenever "yourfunction(any argument string not containing an unescaped \)
+)" occurs in the code, the subroutine reference is called with the
+argument string as argument.
+
+The subroutine is expected to return any Math::Symbolic tree. That means,
+as of version 0.133, a Math::Symbolic::Operator, a
+Math::Symbolic::Variable, or a Math::Symbolic::Constant object. The
+returned object will be incorporated into the Math::Symbolic tree that
+results from the parse at the exact position at which the custom function
+call was parsed.
+
+Please note that the usage of this module will be quite slow at compile
+time because it has to regenerate the complete Math::Symbolic parser the
+first time you use this module in your code. The run time performance
+penalty should be low, however.
+
+WWW: http://search.cpan.org/dist/Math-SymbolicX-ParserExtensionFactory
+Author: Steffen Mueller <symbolic-module@steffen-mueller.net>
diff --git a/math/p5-Math-SymbolicX-ParserExtensionFactory/pkg-plist b/math/p5-Math-SymbolicX-ParserExtensionFactory/pkg-plist
new file mode 100644
index 000000000000..84f8a96b19f1
--- /dev/null
+++ b/math/p5-Math-SymbolicX-ParserExtensionFactory/pkg-plist
@@ -0,0 +1,7 @@
+%%SITE_PERL%%/Math/SymbolicX/ParserExtensionFactory.pm
+%%SITE_PERL%%/%%PERL_ARCH%%/auto/Math/SymbolicX/ParserExtensionFactory/.packlist
+@dirrm %%SITE_PERL%%/%%PERL_ARCH%%/auto/Math/SymbolicX/ParserExtensionFactory
+@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Math/SymbolicX
+@dirrmtry %%SITE_PERL%%/%%PERL_ARCH%%/auto/Math
+@dirrmtry %%SITE_PERL%%/Math/SymbolicX
+@dirrmtry %%SITE_PERL%%/Math