Branch: refs/heads/blead Home: https://github.com/Perl/perl5 Commit: 5295a7116512d54524d09df4357af409481e801e https://github.com/Perl/perl5/commit/5295a7116512d54524d09df4357af409481e801e Author: Karl Williamson <k...@cpan.org> Date: 2024-06-16 (Sun, 16 Jun 2024)
Changed paths: M autodoc.pl Log Message: ----------- autodoc.pl: White-space only Wrap lines to fit in an 80 column terminal Commit: 90be1ac7c0cbf05700eee2deb76b88b535b546e7 https://github.com/Perl/perl5/commit/90be1ac7c0cbf05700eee2deb76b88b535b546e7 Author: Karl Williamson <k...@cpan.org> Date: 2024-06-16 (Sun, 16 Jun 2024) Changed paths: M autodoc.pl Log Message: ----------- autodoc: improve internal uniformity of entries Originally, each entry was for a single function or macro, etc. Then the ability to group similar items in a single entry was shoe-horned in, with the extra ones in a group being a subsidiary data structure with most of the same elements. But it is easier to code new things based on a uniform structure with all items the same. That's what this commit does. The first item in a group is added to the array of all the items as the 0th element. This had already been done in one subroutine because it made for easier handling; this commit moves that to much earlier in the process. Commit: da698f8f246dc59f2158f7c56d83a85d126fbee6 https://github.com/Perl/perl5/commit/da698f8f246dc59f2158f7c56d83a85d126fbee6 Author: Karl Williamson <k...@cpan.org> Date: 2024-06-16 (Sun, 16 Jun 2024) Changed paths: M autodoc.pl Log Message: ----------- autodoc: Extract code into a function This is in preparation for it being called from a second place. Commit: 8264ee4c88a0b12fa191cb5b2c0ff3bd1e7550e9 https://github.com/Perl/perl5/commit/8264ee4c88a0b12fa191cb5b2c0ff3bd1e7550e9 Author: Karl Williamson <k...@cpan.org> Date: 2024-06-16 (Sun, 16 Jun 2024) Changed paths: M autodoc.pl Log Message: ----------- autodoc: Extract code into function This is in preparation for it to be called from more places Commit: e09e48074f0717ae8e92ae9dea0ca67361c100d9 https://github.com/Perl/perl5/commit/e09e48074f0717ae8e92ae9dea0ca67361c100d9 Author: Karl Williamson <k...@cpan.org> Date: 2024-06-16 (Sun, 16 Jun 2024) Changed paths: M autodoc.pl Log Message: ----------- autodoc: Add missing /x on pattern The issue this was supposed to be protecting against had never come up Commit: e460de7d043e47f7589331516bfb9dda0a2b87b5 https://github.com/Perl/perl5/commit/e460de7d043e47f7589331516bfb9dda0a2b87b5 Author: Karl Williamson <k...@cpan.org> Date: 2024-06-16 (Sun, 16 Jun 2024) Changed paths: M autodoc.pl Log Message: ----------- autodoc: Clarifications This changes some comments and white space, and reverses the logic of some conditionals to make clearer what is being done, especially with future commits Commit: ef302588bff6e9cead3506a3d6117d3edd1ca9e0 https://github.com/Perl/perl5/commit/ef302588bff6e9cead3506a3d6117d3edd1ca9e0 Author: Karl Williamson <k...@cpan.org> Date: 2024-06-16 (Sun, 16 Jun 2024) Changed paths: M autodoc.pl M embed.fnc Log Message: ----------- autodoc: Add apidoc_defn directive perlapi and perlintern document a variety of constructs. Function prototypes are declared in embed.fnc and used to generate header files that the compiler sees, for example, to declare function signatures without having to worry that a function call will be encountered during compilation prior to its definition. The compiler likely notes any discrepancies. Macros don't have that kind of checking, beyond having the correct number of parameters. We have added some further macros that can be applied to individual parameters in the main macro's definition to make sure the parameter is a pointer when it should be, and vice versa. But lots of possible issues are uncaught. We also can specify our expected types of each parameter in embed.fnc like we do for functions, and additionally in apidoc lines. But, those can be wrong without it being apparent. To lessen the chances of being wrong, it would be advantageous to place the declaration of the macro's signature adjacent to its actual definition in the code. Discrepancies are easily noted. But this conflicts with combining many variants of a function into the same api entry. Some variants will be functions, and their definitions will likely be in .c files, while others will be macros that merely wrap the function call. These will necessarily be in .h files. This commit is a solution. The new construct 'apidoc_defn' is created. This is to be placed adjacent to the macro's definition, documenting there how we expect it to be called. But it only contains the macro's signature. Somewhere else in the source will be a regular apidoc (or apidoc_item) line without any signature information attached to it. That line will put the information from the apidoc_defn no matter where in the source it is located. Prior to this commit, that was already true for macro signatures in embed.fnc. The apidoc line pulls the signature information from what embed.fnc generates. This essentially just supplements that information from lines in the source corpus. We could gradually move macro signatures from embed.fnc to be adjacent to the actual macro defines. Commit: d72045062d9cd217a9a179c8220c0e059a7fa57c https://github.com/Perl/perl5/commit/d72045062d9cd217a9a179c8220c0e059a7fa57c Author: Karl Williamson <k...@cpan.org> Date: 2024-06-16 (Sun, 16 Jun 2024) Changed paths: M autodoc.pl Log Message: ----------- autodoc: Process .h files before .c ones The previous commit adds code that takes macro signature definitions in the source and allows them to be used from elsewhere. When a use comes before the definition it has to be saved for later processing. When a definition comes before the use, it can be processed immediately. Most definitions will be in header files. It is a simple matter to arrange these to be processed before any .c files, thus minimizing the number of instances of having to save for later. Commit: 5f29d4af0d614d71208c262bf94fc997f153c796 https://github.com/Perl/perl5/commit/5f29d4af0d614d71208c262bf94fc997f153c796 Author: Karl Williamson <k...@cpan.org> Date: 2024-06-16 (Sun, 16 Jun 2024) Changed paths: M av.c M av.h M embed.fnc M proto.h Log Message: ----------- perlapi: Combine all av_len synonyms into one entry Compare: https://github.com/Perl/perl5/compare/9d88c73aa672...5f29d4af0d61 To unsubscribe from these emails, change your notification settings at https://github.com/Perl/perl5/settings/notifications