p5-Math-SymbolicX-ParserExtensionFactory - Generate parser extensions

Property Value
Distribution FreeBSD 12
Repository FreeBSD Ports Quarterly amd64
Package filename p5-Math-SymbolicX-ParserExtensionFactory-3.02_1.txz
Package name p5-Math-SymbolicX-ParserExtensionFactory
Package version 3.02
Package release 1
Package architecture amd64
Package type txz
Category math perl5
Homepage https://metacpan.org/release/Math-SymbolicX-ParserExtensionFactory
License -
Maintainer perl@FreeBSD.org
Download size 7.19 KB
Installed size 12.25 KB
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: https://metacpan.org/release/Math-SymbolicX-ParserExtensionFactory


Package Version Architecture Repository
p5-Math-SymbolicX-ParserExtensionFactory-3.02_1.txz 3.02 i386 FreeBSD Ports Quarterly
p5-Math-SymbolicX-ParserExtensionFactory-3.02_1.txz 3.02 amd64 FreeBSD Ports Latest
p5-Math-SymbolicX-ParserExtensionFactory-3.02_1.txz 3.02 i386 FreeBSD Ports Latest
p5-Math-SymbolicX-ParserExtensionFactory - - -


Name Value
p5-Math-Symbolic = 0.612_2
perl5 = 5.28.1_1


Type URL
Mirror pkg.freebsd.org
Binary Package p5-Math-SymbolicX-ParserExtensionFactory-3.02_1.txz
Source Package math/p5-Math-SymbolicX-ParserExtensionFactory

Install Howto

Install p5-Math-SymbolicX-ParserExtensionFactory txz package:

# pkg install p5-Math-SymbolicX-ParserExtensionFactory

See Also

Package Description
p5-Math-SymbolicX-Statistics-Distributions-1.02_1.txz Statistical distributions
p5-Math-TrulyRandom-1.0_2.txz Perl interface to a truly random number generator function
p5-Math-Units-1.3_1.txz Unit conversion
p5-Math-Utils-1.13.txz Useful mathematical functions not in Perl
p5-Math-Vec-1.01_1.txz Object-Oriented Vector Math Methods in Perl
p5-Math-VecStat-0.08_1.txz Basic statistics on vectors
p5-Math-VectorReal-1.02_1.txz Perl Module to handle 3D Vector Mathematics
p5-MathML-Entities-0.17_1.txz Convert XHTML+MathML Named Entities to Numeric Character References
p5-MaxMind-DB-Common-0.040001_1.txz Code shared by the DB reader and writer modules
p5-MaxMind-DB-Reader-1.000014.txz Read MaxMind DB files
p5-MaxMind-DB-Reader-XS-1.000008_1.txz Fast XS implementation of MaxMind DB reader
p5-MaxMind-DB-Writer-0.300003.txz Create MaxMind DB database files
p5-Maypole-2.13_6.txz MVC web application framework
p5-Maypole-Authentication-UserSessionCookie-1.4_1.txz Track sessions and, optionally, users
p5-Maypole-Component-0.03_1.txz Run Maypole sub-requests as components