GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Complete::Sah(3) User Contributed Perl Documentation Complete::Sah(3)

Complete::Sah - Sah-related completion routines

This document describes version 0.013 of Complete::Sah (from Perl distribution Complete-Sah), released on 2023-05-26.

 use Complete::Sah qw(complete_from_schema);
 my $res = complete_from_schema(word => 'a', schema=>[str => {in=>[qw/apple apricot banana/]}]);
 # -> {words=>['apple', 'apricot'], static=>0}

Usage:

 complete_from_schema(%args) -> any

Complete a value from schema.

Employ some heuristics to complete a value from Sah schema. For example, if schema is "[str => in => [qw/new open resolved rejected/]]", then we can complete from the "in" clause. Or for something like "[int => between => [1, 20]]" we can complete using values from 1 to 20.

Tip: If you want to give summary for each entry in "in" clause, you can use the "x.in.summaries" attribute, example:

 # schema
 ['str', {
     in => ['b', 'g'],
     'x.in.summaries' => ['Male/boy', 'Female/girl'],
 }]

This function is not exported by default, but exportable.

Arguments ('*' denotes required arguments):

  • schema* => str|array

    Will be normalized, unless when "schema_is_normalized" is set to true, in which case schema must already be normalized.

  • schema_is_normalized => bool (default: 0)

    (No description)

  • word* => str (default: "")

    (No description)

Return value: (any)

Please visit the project's homepage at <https://metacpan.org/release/Complete-Sah>.

Source repository is at <https://github.com/perlancar/perl-Complete-Sah>.

perlancar <perlancar@cpan.org>

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) 2023, 2020, 2019 by perlancar <perlancar@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.

Please report any bugs or feature requests on the bugtracker website <https://rt.cpan.org/Public/Dist/Display.html?Name=Complete-Sah>

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.

2023-05-26 perl v5.40.2

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.