Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:Ledest:erlang:23
erlang
0628-erl_docgen-Fix-generating-docs-chunk-entry...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0628-erl_docgen-Fix-generating-docs-chunk-entry-for-seeer.patch of Package erlang
From 2879af76e761faec3abb0af385a184da0f923fcf Mon Sep 17 00:00:00 2001 From: Wojtek Mach <wojtek@wojtekmach.pl> Date: Wed, 18 Aug 2021 13:39:26 +0200 Subject: [PATCH] erl_docgen: Fix generating docs chunk entry for `<seeerl>` Before this patch, this XML: <!-- https://github.com/erlang/otp/blob/a40b5380e05a8b390c776556521b6e94e9e11b73/lib/stdlib/doc/src/binary.xml#L472:L474 --> are also available in the <seeerl marker="erts:erlang"><c>erlang</c></seeerl> module under the names Produced this chunk entry: <<" are also available in the ">>, {a,[{href,<<"stdlib:binary#erts:erlang">>}, {rel,<<"https://erlang.org/doc/link/seeerl">>}], [{code,[],[<<"erlang">>]}]}, <<" module under the names ">>, Note the `stdlib:binary#erts:erlang` instead of the expected `stdlib:binary`. With this patch we have the following behaviour. Say, we are generating docs for the app `myapp` and the module `mymod`: "app:mod#anchor" => "app:mod#anchor" "mod#anchor" => "myapp:mod#anchor" "app:mod" => "app:mod" "mod" => "myapp:mod" --- lib/erl_docgen/src/docgen_xml_to_chunk.erl | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/lib/erl_docgen/src/docgen_xml_to_chunk.erl b/lib/erl_docgen/src/docgen_xml_to_chunk.erl index 634013922e..2d34350618 100644 --- a/lib/erl_docgen/src/docgen_xml_to_chunk.erl +++ b/lib/erl_docgen/src/docgen_xml_to_chunk.erl @@ -639,17 +639,22 @@ transform_datatype(Dom,_Acc) -> transform_see({See,[{marker,Marker}],Content}) -> AbsMarker = - case string:lexemes(Marker,"#") of - [Link] -> [get(application),":",get(module),"#",Link]; - [AppMod, Link] -> - case string:lexemes(AppMod,":") of - [Mod] -> [get(application),":",Mod,"#",Link]; - [App, Mod] -> [App,":",Mod,"#",Link] - end + case string:split(Marker, "#") of + [AppFile] -> marker_defaults(AppFile); + [AppFile, Anchor] -> [marker_defaults(AppFile), "#", Anchor] end, + {a, [{href,iolist_to_binary(AbsMarker)}, {rel,<<"https://erlang.org/doc/link/",(atom_to_binary(See))/binary>>}], Content}. +marker_defaults("") -> + [get(application), ":", get(module)]; +marker_defaults(AppFile) -> + case string:split(AppFile, ":") of + [File] -> [get(application), ":", File]; + [App, File] -> [App, ":", File] + end. + to_chunk(Dom, Source, Module, AST) -> [{module,MAttr,Mcontent}] = Dom, -- 2.31.1
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor