The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


Sort::Sub::sah_schema_clause - Sort Sah schema clause (and attributes)


This document describes version 0.001 of Sort::Sub::sah_schema_clause (from Perl distribution Sort-SubBundle-Sah), released on 2024-01-12.


Generate sorter (accessed as variable) via Sort::Sub import:

 use Sort::Sub '$sah_schema_clause'; # use '$sah_schema_clause<i>' for case-insensitive sorting, '$sah_schema_clause<r>' for reverse sorting
 my @sorted = sort $sah_schema_clause ('item', ...);

Generate sorter (accessed as subroutine):

 use Sort::Sub 'sah_schema_clause<ir>';
 my @sorted = sort {sah_schema_clause} ('item', ...);

Generate directly without Sort::Sub:

 use Sort::Sub::sah_schema_clause;
 my $sorter = Sort::Sub::sah_schema_clause::gen_sorter(
     ci => 1,      # default 0, set 1 to sort case-insensitively
     reverse => 1, # default 0, set 1 to sort in reverse order
 my @sorted = sort $sorter ('item', ...);

Use in shell/CLI with sortsub (from App::sortsub):

 % some-cmd | sortsub sah_schema_clause
 % some-cmd | sortsub sah_schema_clause --ignore-case -r


This module can generate sort subroutine. It is meant to be used via Sort::Sub, although you can also use it directly via gen_sorter().


Please visit the project's homepage at


Source repository is at




perlancar <>


To contribute, you can send patches by email/via RT, or send pull requests on GitHub.

Most of the time, you don't need to build the distribution yourself. You can simply modify the code, then test via:

 % prove -l

If you want to build the distribution (e.g. to try to install it locally on your system), you can install Dist::Zilla, Dist::Zilla::PluginBundle::Author::PERLANCAR, Pod::Weaver::PluginBundle::Author::PERLANCAR, and sometimes one or two other Dist::Zilla- and/or Pod::Weaver plugins. Any additional steps required beyond that are considered a bug and can be reported to me.


This software is copyright (c) 2024 by perlancar <>.

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


Please report any bugs or feature requests on the bugtracker website

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.