[
https://issues.apache.org/jira/browse/CLOWNFISH-64?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15054347#comment-15054347
]
ASF GitHub Bot commented on CLOWNFISH-64:
-----------------------------------------
GitHub user nwellnhof opened a pull request:
https://github.com/apache/lucy-clownfish/pull/49
CLOWNFISH-64 Autogenerate Perl subroutine code samples
Now the generated POD looks like
=head2 glean_query
$searcher->glean_query($query);
$searcher->glean_query(); # default: undef
[...]
=head2 hits
$searcher->hits(
query => $obj, # required
offset => $int, # default: 0
num_wanted => $int, # default: 10
sort_spec => $sort_spec, # default: undef
);
[...]
This also makes it possible to link to the POD section of a method or
constructor.
Having `$int` appear multiple times in the example above might be
confusing. Maybe the following more verbose format is better?
$searcher->hits(
query => $query, # Clownfish::Obj, required
offset => $offset, # integer, default: 0
num_wanted => $num_wanted, # integer, default: 10
sort_spec => $sort_spec, # Lucy::Search::SortSpec, default: undef
);
Other things that could be improved:
- Type information for positional parameters.
- Type information for return types.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/nwellnhof/lucy-clownfish
CLOWNFISH-64-autogenerate-code-samples
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/lucy-clownfish/pull/49.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #49
----
commit 5e7c5ceaa56e900417c67550fab2573598cb8eb4
Author: Nick Wellnhofer <[email protected]>
Date: 2015-12-12T14:34:03Z
Autogenerate Perl subroutine code samples
Resolves CLOWNFISH-64.
commit e2626d979b25c9a8f4bb8af9d48f104cdae99aeb
Author: Nick Wellnhofer <[email protected]>
Date: 2015-12-12T14:37:40Z
Remove argument summary from =head2 in POD
commit 18007a3a085fe51ebc12cd6b991770a0d6a17974
Author: Nick Wellnhofer <[email protected]>
Date: 2015-12-12T14:56:31Z
Make Clownfish URIs link to relevant POD section
----
> Autogenerate subroutine code samples in Perl POD
> ------------------------------------------------
>
> Key: CLOWNFISH-64
> URL: https://issues.apache.org/jira/browse/CLOWNFISH-64
> Project: Apache Lucy-Clownfish
> Issue Type: Improvement
> Components: Perl
> Reporter: Nick Wellnhofer
> Priority: Minor
>
> It should be possible to add autogenerated code samples for constructors and
> methods to the generated Perl POD. This would ensure that every subroutine
> has at least some rudimentary documentation of parameters even if `@param`
> directives are missing, and that default values are always documented.
> Furthermore, it would relieve authors from providing code samples manually.
> The general format could look like:
> {noformat}
> $object->method(
> param1 => $value1, # required
> param2 => $value2, # default: xxx
> );
> {noformat}
> The name of the invocant {{$object}} can be derived from the class name, the
> names of the values from their types. For example:
> {noformat}
> $searcher->hits(
> query => $obj, # required
> offset => $uint32, # default: 0
> num_wanted => $uint32, # default: 10
> sort_spec => $sort_spec, # default: undef
> );
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)