Perl::Tidy::Sweetened - Tweaks to Perl::Tidy to support some syntactic sugar
Contents
Bugs
Please report any bugs or feature requests on the bugtracker website
<https://github.com/mvgrimes/Perl-Tidy-Sweetened/issues>
When submitting a bug or request, please include a test-file or a patch to an existing test-file that
illustrates the bug or desired feature.
Copyright And License
This software is copyright (c) 2023 by Mark Grimes <mgrimes@cpan.org>.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5
programming language system itself.
perl v5.36.0 2023-06-18 Perl::Tidy::Sweetened(3pm)
Description
There are a number of modules on CPAN that allow users to write their classes with a more "modern"
syntax. These tools eliminate the need to shift off $self, can support type checking and offer other
improvements. Unfortunately, they can break the support tools that the Perl community has come to rely
on. This module attempts to work around those issues.
The module uses Perl::Tidy's "prefilter" and "postfilter" hooks to support "method" and "func" keywords,
including the (possibly multi-line) parameter lists. This is quite an ugly hack, but it is the
recommended method of supporting these new keywords (see the 2010-12-17 entry in the Perl::Tidy CHANGES
<https://metacpan.org/source/SHANCOCK/Perl-Tidy-20120714/CHANGES> file). Theresultingformattedcodewillleavetheparameterlistsuntouched.
"Perl::Tidy::Sweetened" attempts to support the syntax outlined in the following modules, but most of the
new syntax styles should work:
• p5-mop
• Method::Signatures::Simple
• MooseX::Method::Signatures
• MooseX::Declare
• Moops
• perl 5.20 signatures
• Kavorka
Name
Perl::Tidy::Sweetened - Tweaks to Perl::Tidy to support some syntactic sugar
See Also
Perl::Tidy
Source
Source repository is at <https://github.com/mvgrimes/Perl-Tidy-Sweetened>.
Status
Thanks
The idea and much of original code taken from Jonathan Swartz' blog
<http://www.openswartz.com/2010/12/19/perltidy-and-method-happy-together/>.
Version
version 1.20
