| ... | @@ -540,7 +540,23 @@ | ... | @@ -540,7 +540,23 @@ |
| 540 | return typeIndexName(value, wantHtml, wantLink); | 540 | return typeIndexName(value, wantHtml, wantLink); |
| 541 | case typeKinds.Fn: | 541 | case typeKinds.Fn: |
| 542 | var fnObj = zigAnalysis.fns[value]; | 542 | var fnObj = zigAnalysis.fns[value]; |
| 543 | return typeIndexName(fnObj.type, wantHtml, wantLink); | 543 | var declPath = fnObj.decl && getCanonDeclPath(fnObj.decl); |
| | 544 | var fnName = declPath ? declPath.declNames.join('.') : '(unknown)'; |
| | 545 | |
| | 546 | if (!wantHtml) { |
| | 547 | return fnName; |
| | 548 | } |
| | 549 | |
| | 550 | var str = '<span class="tok-fn">'; |
| | 551 | if (wantLink && declPath != null) { |
| | 552 | str += '<a href="' + navLink(declPath.pkgNames, declPath.declNames) + '">'; |
| | 553 | str += escapeHtml(fnName); |
| | 554 | str += '</a>'; |
| | 555 | } else { |
| | 556 | str += escapeHtml(fnName); |
| | 557 | } |
| | 558 | str += '</span>'; |
| | 559 | return str; |
| 544 | case typeKinds.Int: | 560 | case typeKinds.Int: |
| 545 | return token(value, tokenKinds.Number, wantHtml); | 561 | return token(value, tokenKinds.Number, wantHtml); |
| 546 | case typeKinds.Optional: | 562 | case typeKinds.Optional: |
| ... | @@ -727,24 +743,8 @@ | ... | @@ -727,24 +743,8 @@ |
| 727 | } | 743 | } |
| 728 | return payloadHtml; | 744 | return payloadHtml; |
| 729 | case typeKinds.Frame: | 745 | case typeKinds.Frame: |
| 730 | var name = '@Frame('; | | |
| 731 | var fnObj = zigAnalysis.fns[typeObj.fn]; | 746 | var fnObj = zigAnalysis.fns[typeObj.fn]; |
| 732 | var declPath = fnObj.decl && getCanonDeclPath(fnObj.decl); | 747 | return '@Frame(' + getValueText(fnObj.type, typeObj.fn, wantHtml, wantSubLink) + ')'; |
| 733 | var fnName = typeObj.fnName; | | |
| 734 | if (wantHtml) { | | |
| 735 | name += '<span class="tok-fn">'; | | |
| 736 | if (declPath) { | | |
| 737 | name += '<a href="' + navLink(declPath.pkgNames, declPath.declNames) + '">' | | |
| 738 | + escapeHtml(fnName) + '</a>'; | | |
| 739 | } else { | | |
| 740 | name += escapeHtml(fnName); | | |
| 741 | } | | |
| 742 | name += '</span>'; | | |
| 743 | } else { | | |
| 744 | name += fnName; | | |
| 745 | } | | |
| 746 | name += ')'; | | |
| 747 | return name; | | |
| 748 | case typeKinds.AnyFrame: | 748 | case typeKinds.AnyFrame: |
| 749 | var name = token('anyframe', tokenKinds.Keyword, wantHtml); | 749 | var name = token('anyframe', tokenKinds.Keyword, wantHtml); |
| 750 | if (typeObj.result) { | 750 | if (typeObj.result) { |