|
522 | 522 | function getCallHtml(fnDecl, callIndex) {
|
523 | 523 | var callObj = zigAnalysis.calls[callIndex];
|
524 | 524 |
|
525 |
| - // TODO make these links work |
526 |
| - //var html = '<a href="' + navLinkCall(callObj) + '">' + escapeHtml(fnDecl.name) + '</a>('; |
527 |
| - var html = escapeHtml(fnDecl.name) + '('; |
| 525 | + var html = '<a href="' + navLinkDecl(fnDecl) + '">' + escapeHtml(fnDecl.name) + '</a>('; |
528 | 526 | for (var arg_i = 0; arg_i < callObj.args.length; arg_i += 1) {
|
529 | 527 | if (arg_i !== 0) html += ', ';
|
530 | 528 | var argObj = callObj.args[arg_i];
|
|
541 | 539 | return typeIndexName(value, wantHtml, wantLink);
|
542 | 540 | case typeKinds.Fn:
|
543 | 541 | var fnObj = zigAnalysis.fns[value];
|
544 |
| - return typeIndexName(fnObj.type, wantHtml, wantLink); |
| 542 | + var declPath = fnObj.decl && getCanonDeclPath(fnObj.decl); |
| 543 | + var fnName = declPath ? declPath.declNames.join('.') : '(unknown)'; |
| 544 | + |
| 545 | + if (!wantHtml) { |
| 546 | + return fnName; |
| 547 | + } |
| 548 | + |
| 549 | + var str = '<span class="tok-fn">'; |
| 550 | + if (wantLink && declPath != null) { |
| 551 | + str += '<a href="' + navLink(declPath.pkgNames, declPath.declNames) + '">'; |
| 552 | + str += escapeHtml(fnName); |
| 553 | + str += '</a>'; |
| 554 | + } else { |
| 555 | + str += escapeHtml(fnName); |
| 556 | + } |
| 557 | + str += '</span>'; |
| 558 | + return str; |
545 | 559 | case typeKinds.Int:
|
546 | 560 | return token(value, tokenKinds.Number, wantHtml);
|
547 | 561 | case typeKinds.Bool:
|
|
730 | 744 | }
|
731 | 745 | return payloadHtml;
|
732 | 746 | case typeKinds.Frame:
|
733 |
| - var name = '@Frame('; |
734 | 747 | var fnObj = zigAnalysis.fns[typeObj.fn];
|
735 |
| - var declPath = fnObj.decl && getCanonDeclPath(fnObj.decl); |
736 |
| - var fnName = typeObj.fnName; |
737 |
| - if (wantHtml) { |
738 |
| - name += '<span class="tok-fn">'; |
739 |
| - if (declPath) { |
740 |
| - name += '<a href="' + navLink(declPath.pkgNames, declPath.declNames) + '">' |
741 |
| - + escapeHtml(fnName) + '</a>'; |
742 |
| - } else { |
743 |
| - name += escapeHtml(fnName); |
744 |
| - } |
745 |
| - name += '</span>'; |
746 |
| - } else { |
747 |
| - name += fnName; |
748 |
| - } |
749 |
| - name += ')'; |
750 |
| - return name; |
| 748 | + return '@Frame(' + getValueText(fnObj.type, typeObj.fn, wantHtml, wantSubLink) + ')'; |
751 | 749 | case typeKinds.AnyFrame:
|
752 | 750 | var name = token('anyframe', tokenKinds.Keyword, wantHtml);
|
753 | 751 | if (typeObj.result) {
|
|
0 commit comments