PAR::Filter(3)

✨ NAME ✨

PAR::Filter β€” Input filter for PAR. You're reading the PAR::Filter(3) manual page, bestie, and it's literally all about filtering input for PAR.

πŸ¦‹ SYNOPSIS πŸ¦‹

Okay so here's the canonical code moment β€” copy it exactly, no remixing:

$code = 'use strict; print "Hello, World!\n";';
$ref = PAR::Filter->new('PodStrip', 'Bleach')->apply(\$code);
print $code;    # pod-stripped and obfuscated code
print $$ref;    # same thing

$ref = PAR::Filter->new('PodStrip', 'Bleach')->apply('file.pl');
print $$ref;    # same thing, applied to file.pl

🌸 DESCRIPTION 🌸

Starting with PAR 0.76, pp -f takes a filter name, like "Bleach", and invokes this module to transform the programs with PAR::Filter::Bleach. Similarly, pp -F Bleach applies the Bleach filter to all included modules.

You can pass in multiple such filters, and they get applied in turn β€” stack 'em like your fave accessories. πŸ’…

The output of each such filter is expected to be semantically equivalent to the input, although possibly obfuscated. Translation: same meaning, maybe with a little disguise on top. iykyk.

The default filter list πŸ‘‘

The default list of filters includes:

  • PAR::Filter::Bleach β€” The archetypical obfuscating filter. This is the blueprint, the OG vibe.
  • PAR::Filter::Obfuscate β€” This one uses B::Deobfuscate to strip away indents and comments, as well as mangling variable names. So it's giving "less clutter, different names."
  • PAR::Filter::PatchContent β€” Fixes PAR-incompatible modules, applied to modules by default. It's the fixer of the squad.
  • PAR::Filter::PodStrip β€” Strips away POD sections, applied to modules by default. Bye-bye, POD. βœ‚οΈ
  • PAR::Filter::Bytecode β€” This one uses B::Bytecode to strip away indents and comments. This filter is deprecated! For source hiding, have a look at PAR::Filter::Crypto instead and make sure to read about its caveats.

🫢 AUTHORS 🫢

Audrey Tang <cpan@audreyt.org> β€” the icon, the legend, the author.

Copyright 2003-2009 by Audrey Tang <cpan@audreyt.org>.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See LICENSE.

And that's the page, bestie! This PAR::Filter(3) manual came from perl v5.42.3 and is dated 2026-11-03. Go forth and filter with main character energy! πŸ’–βœ¨
πŸ“¦ where this page comes from