diff options
author | Chris 'BinGOs' Williams <chris@bingosnet.co.uk> | 2014-12-17 21:01:29 +0000 |
---|---|---|
committer | Chris 'BinGOs' Williams <chris@bingosnet.co.uk> | 2014-12-17 21:03:24 +0000 |
commit | f686c54e62c95370bd11d48d8f2f735c2430982a (patch) | |
tree | 830f4c373d0874e17b9e48c3903dfb89107c1c17 /pod | |
parent | dc6bb7ba3b9ef9b60fcf85c93613dc6eeb1b4972 (diff) | |
download | perl-f686c54e62c95370bd11d48d8f2f735c2430982a.tar.gz |
Update Filter::Util::Call to CPAN version 1.51
[DELTA]
1.50 2014-06-04 rurban
----
* Do not re-bless already blessed filter_add arguments into the callers package.
Fixes RT #54452
* t/z_pod-coverage.t: omit empty Filter::decrypt (also fixes RT #84405)
* Fix Perl Compiler detection in Filter::decrypt
1.51 2014-12-09 rurban
----
* Minor -Wall -Wextra cleanups by jhi and me. Fixes RT #100742
* Updated Copyright years
* Document and warn about its limitations
Diffstat (limited to 'pod')
-rw-r--r-- | pod/perlfilter.pod | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/pod/perlfilter.pod b/pod/perlfilter.pod index 27061883c1..21df352c9c 100644 --- a/pod/perlfilter.pod +++ b/pod/perlfilter.pod @@ -550,6 +550,28 @@ useful features from the C preprocessor and any other macro processors you know. The tricky bit will be choosing how much knowledge of Perl's syntax you want your filter to have. +=head1 LIMITATIONS + +Source filters only work on the string level, thus are highly limited +in its ability to change source code on the fly. It cannot detect +comments, quoted strings, heredocs, it is no replacement for a real +parser. +The only stable usage for source filters are encryption, compression, +or the byteloader, to translate binary code back to source code. + +See for example the limitations in Switch, which uses source filters, +and thus is does not work inside a string eval, the presence of +regexes with embedded newlines that are specified with raw /.../ +delimiters and don't have a modifier //x are indistinguishable from +code chunks beginning with the division operator /. As a workaround +you must use m/.../ or m?...? for such patterns. Also, the presence of +regexes specified with raw ?...? delimiters may cause mysterious +errors. The workaround is to use m?...? instead. See +http://search.cpan.org/perldoc?Switch#LIMITATIONS + +Currently internal buffer lengths are limited to 32-bit only. + + =head1 THINGS TO LOOK OUT FOR =over 5 |