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