@@ -28,7 +28,7 @@ function identUrl(project, ident, version, family) {
2828 ]
2929*/
3030
31- function generateSymbolDefinitionsHTML ( symbolDefinitions , project , version ) {
31+ function generateSymbolDefinitionsHTML ( symbolDefinitions , peeks , project , version ) {
3232 let result = "" ;
3333 let typesCount = { } ;
3434 let previous_type = "" ;
@@ -55,7 +55,7 @@ function generateSymbolDefinitionsHTML(symbolDefinitions, project, version) {
5555 previous_type = sd . type ;
5656 }
5757 let ln = sd . line . toString ( ) . split ( ',' ) ;
58- if ( ln . length == 1 ) {
58+ if ( ln . length == 1 && ! peeks ) {
5959 let n = ln [ 0 ] ;
6060 result += `<li><a href="/${ project } /${ version } /source/${ sd . path } #L${ n } "><strong>${ sd . path } </strong>, line ${ n } <em>(as a ${ sd . type } )</em></a>` ;
6161 } else {
@@ -66,7 +66,14 @@ function generateSymbolDefinitionsHTML(symbolDefinitions, project, version) {
6666 result += `<li><a href="/${ project } /${ version } /source/${ sd . path } #L${ ln [ 0 ] } "><strong>${ sd . path } </strong> <em>(as a ${ sd . type } )</em></a>` ;
6767 result += '<ul>' ;
6868 for ( let n of ln ) {
69- result += `<li><a href="/${ project } /${ version } /source/${ sd . path } #L${ n } ">line ${ n } </a></li>` ;
69+ result += `<li><a href="/${ project } /${ version } /source/${ sd . path } #L${ n } "><span>line ${ n } </span>` ;
70+ let srcLine = peeks ?. [ sd . path ] ?. [ n ] ;
71+ if ( srcLine ) {
72+ let tag = document . createElement ( "pre" ) ;
73+ tag . textContent = srcLine ;
74+ result += tag . outerHTML ;
75+ }
76+ result += '</a></li>'
7077 }
7178 result += '</ul>' ;
7279 }
@@ -77,7 +84,7 @@ function generateSymbolDefinitionsHTML(symbolDefinitions, project, version) {
7784 return result ;
7885}
7986
80- function generateSymbolReferencesHTML ( symbolReferences , project , version ) {
87+ function generateSymbolReferencesHTML ( symbolReferences , peeks , project , version ) {
8188 let result = "" ;
8289
8390 if ( symbolReferences . length == 0 ) {
@@ -88,7 +95,7 @@ function generateSymbolReferencesHTML(symbolReferences, project, version) {
8895 result += '<ul>' ;
8996 for ( let sr of symbolReferences ) {
9097 let ln = sr . line . split ( ',' ) ;
91- if ( ln . length == 1 ) {
98+ if ( ln . length == 1 && ! peeks ) {
9299 let n = ln [ 0 ] ;
93100 result += `<li><a href="/${ project } /${ version } /source/${ sr . path } #L${ n } "><strong>${ sr . path } </strong>, line ${ n } </a>` ;
94101 } else {
@@ -99,7 +106,14 @@ function generateSymbolReferencesHTML(symbolReferences, project, version) {
99106 result += `<li><a href="/${ project } /${ version } /source/${ sr . path } #L${ ln [ 0 ] } "><strong>${ sr . path } </strong></a>` ;
100107 result += '<ul>'
101108 for ( let n of ln ) {
102- result += `<li><a href="/${ project } /${ version } /source/${ sr . path } #L${ n } ">line ${ n } </a>`
109+ result += `<li><a href="/${ project } /${ version } /source/${ sr . path } #L${ n } "><span>line ${ n } </span>`
110+ let srcLine = peeks ?. [ sr . path ] ?. [ n ] ;
111+ if ( srcLine ) {
112+ let tag = document . createElement ( "pre" ) ;
113+ tag . textContent = srcLine ;
114+ result += tag . outerHTML ;
115+ }
116+ result += '</a></li>'
103117 }
104118 result += '</ul>'
105119 }
@@ -143,10 +157,11 @@ function generateReferencesHTML(data, project, version) {
143157 let symbolDefinitions = data [ "definitions" ] ;
144158 let symbolReferences = data [ "references" ] ;
145159 let symbolDocumentations = data [ "documentations" ] ;
160+ let peeks = data [ "peeks" ] ;
146161 return '<div class="lxrident">' +
147162 generateDocCommentsHTML ( symbolDocumentations , project , version ) +
148- generateSymbolDefinitionsHTML ( symbolDefinitions , project , version ) +
149- generateSymbolReferencesHTML ( symbolReferences , project , version ) +
163+ generateSymbolDefinitionsHTML ( symbolDefinitions , peeks , project , version ) +
164+ generateSymbolReferencesHTML ( symbolReferences , peeks , project , version ) +
150165 '</div>' ;
151166}
152167
0 commit comments