NAME
Math::Symbolic::Custom::Pattern::Export - Export method to MS::Custom
SYNOPSIS
use Math::Symbolic::Custom::Pattern;
# later:
my $pattern = $tree->to_pattern();
# and even later:
$another_tree->is_of_form($pattern);
DESCRIPTION
This module is an extension to the Math::Symbolic module. A basic familiarity with that module is required.
Please have a look at the Math::Symbolic::Custom::Pattern module first. This is an internal module only. It manages to add two new methods to all Math::Symbolic objects: is_of_form
and to_pattern
. It uses the Math::Symbolic::Custom mechanism for that.
EXPORT
In a way, this module exports the is_of_form
and to_pattern
methods to Math::Symbolic::Base. Please look at Math::Symbolic::Custom.
Math::Symbolic method is_of_form
This method can be called on any Math::Symbolic tree. First argument must be a pattern. Returns true if the pattern matches the tree and false if not. As with the match()
method on Math::Symbolic::Custom::Pattern objects, the true value returned reflects the way the pattern matched. Please see Math::Symbolic::Custom::Pattern for details.
The pattern may either be a Math::Symbolic::Custom::Pattern object (fastest) or a Math::Symbolic tree representing a pattern (decent speed, since only the pattern object needs to be constructed) or a string to be parsed as a Math::Symbolic tree (very slow since the string has to be parsed).
For details on patterns, please refer to the documentation of Math::Symbolic::Custom::Pattern.
This method always throws fatal errors since returning a boolean is used for valid, non-error return values. Therefore, if you plan to pass unvalidated objects or strings to be parsed, consider wrapping calls to this method in eval {}
blocks. (Note that eval BLOCK
is the safer brother of the much despised eval STRING
. See perlfunc.)
Math::Symbolic method to_pattern
Generates a Math::Symbolic::Custom::Pattern object from the Math::Symbolic tree to_pattern
is called on. The pattern can be used with the is_of_form()
method or like any other Math::Symbolic::Custom::Pattern object. (See that package for details on patterns.)
SEE ALSO
New versions of this module can be found on http://steffen-mueller.net or CPAN.
Math::Symbolic::Custom::Pattern for details on usage.
Math::Symbolic::Custom and Math::Symbolic::Custom::Base for details on enhancing Math::Symbolic.
AUTHOR
Steffen Müller, <symbolic-module at steffen-mueller dot net>
COPYRIGHT AND LICENSE
Copyright (C) 2005, 2006 by Steffen Müller
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.4 or, at your option, any later version of Perl 5 you may have available.
1 POD Error
The following errors were encountered while parsing the POD:
- Around line 131:
Non-ASCII character seen before =encoding in 'Müller,'. Assuming CP1252