| ... | @@ -776,7 +776,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok | ... | @@ -776,7 +776,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok |
| 776 | next_tok_is_fn = false; | 776 | next_tok_is_fn = false; |
| 777 | | 777 | |
| 778 | const token = tokenizer.next(); | 778 | const token = tokenizer.next(); |
| 779 | try writeEscaped(out, src[index..token.start]); | 779 | try writeEscaped(out, src[index..token.loc.start]); |
| 780 | switch (token.id) { | 780 | switch (token.id) { |
| 781 | .Eof => break, | 781 | .Eof => break, |
| 782 | | 782 | |
| ... | @@ -827,13 +827,13 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok | ... | @@ -827,13 +827,13 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok |
| 827 | .Keyword_while, | 827 | .Keyword_while, |
| 828 | => { | 828 | => { |
| 829 | try out.writeAll("<span class=\"tok-kw\">"); | 829 | try out.writeAll("<span class=\"tok-kw\">"); |
| 830 | try writeEscaped(out, src[token.start..token.end]); | 830 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 831 | try out.writeAll("</span>"); | 831 | try out.writeAll("</span>"); |
| 832 | }, | 832 | }, |
| 833 | | 833 | |
| 834 | .Keyword_fn => { | 834 | .Keyword_fn => { |
| 835 | try out.writeAll("<span class=\"tok-kw\">"); | 835 | try out.writeAll("<span class=\"tok-kw\">"); |
| 836 | try writeEscaped(out, src[token.start..token.end]); | 836 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 837 | try out.writeAll("</span>"); | 837 | try out.writeAll("</span>"); |
| 838 | next_tok_is_fn = true; | 838 | next_tok_is_fn = true; |
| 839 | }, | 839 | }, |
| ... | @@ -844,7 +844,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok | ... | @@ -844,7 +844,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok |
| 844 | .Keyword_false, | 844 | .Keyword_false, |
| 845 | => { | 845 | => { |
| 846 | try out.writeAll("<span class=\"tok-null\">"); | 846 | try out.writeAll("<span class=\"tok-null\">"); |
| 847 | try writeEscaped(out, src[token.start..token.end]); | 847 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 848 | try out.writeAll("</span>"); | 848 | try out.writeAll("</span>"); |
| 849 | }, | 849 | }, |
| 850 | | 850 | |
| ... | @@ -853,13 +853,13 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok | ... | @@ -853,13 +853,13 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok |
| 853 | .CharLiteral, | 853 | .CharLiteral, |
| 854 | => { | 854 | => { |
| 855 | try out.writeAll("<span class=\"tok-str\">"); | 855 | try out.writeAll("<span class=\"tok-str\">"); |
| 856 | try writeEscaped(out, src[token.start..token.end]); | 856 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 857 | try out.writeAll("</span>"); | 857 | try out.writeAll("</span>"); |
| 858 | }, | 858 | }, |
| 859 | | 859 | |
| 860 | .Builtin => { | 860 | .Builtin => { |
| 861 | try out.writeAll("<span class=\"tok-builtin\">"); | 861 | try out.writeAll("<span class=\"tok-builtin\">"); |
| 862 | try writeEscaped(out, src[token.start..token.end]); | 862 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 863 | try out.writeAll("</span>"); | 863 | try out.writeAll("</span>"); |
| 864 | }, | 864 | }, |
| 865 | | 865 | |
| ... | @@ -869,34 +869,34 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok | ... | @@ -869,34 +869,34 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok |
| 869 | .ShebangLine, | 869 | .ShebangLine, |
| 870 | => { | 870 | => { |
| 871 | try out.writeAll("<span class=\"tok-comment\">"); | 871 | try out.writeAll("<span class=\"tok-comment\">"); |
| 872 | try writeEscaped(out, src[token.start..token.end]); | 872 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 873 | try out.writeAll("</span>"); | 873 | try out.writeAll("</span>"); |
| 874 | }, | 874 | }, |
| 875 | | 875 | |
| 876 | .Identifier => { | 876 | .Identifier => { |
| 877 | if (prev_tok_was_fn) { | 877 | if (prev_tok_was_fn) { |
| 878 | try out.writeAll("<span class=\"tok-fn\">"); | 878 | try out.writeAll("<span class=\"tok-fn\">"); |
| 879 | try writeEscaped(out, src[token.start..token.end]); | 879 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 880 | try out.writeAll("</span>"); | 880 | try out.writeAll("</span>"); |
| 881 | } else { | 881 | } else { |
| 882 | const is_int = blk: { | 882 | const is_int = blk: { |
| 883 | if (src[token.start] != 'i' and src[token.start] != 'u') | 883 | if (src[token.loc.start] != 'i' and src[token.loc.start] != 'u') |
| 884 | break :blk false; | 884 | break :blk false; |
| 885 | var i = token.start + 1; | 885 | var i = token.loc.start + 1; |
| 886 | if (i == token.end) | 886 | if (i == token.loc.end) |
| 887 | break :blk false; | 887 | break :blk false; |
| 888 | while (i != token.end) : (i += 1) { | 888 | while (i != token.loc.end) : (i += 1) { |
| 889 | if (src[i] < '0' or src[i] > '9') | 889 | if (src[i] < '0' or src[i] > '9') |
| 890 | break :blk false; | 890 | break :blk false; |
| 891 | } | 891 | } |
| 892 | break :blk true; | 892 | break :blk true; |
| 893 | }; | 893 | }; |
| 894 | if (is_int or isType(src[token.start..token.end])) { | 894 | if (is_int or isType(src[token.loc.start..token.loc.end])) { |
| 895 | try out.writeAll("<span class=\"tok-type\">"); | 895 | try out.writeAll("<span class=\"tok-type\">"); |
| 896 | try writeEscaped(out, src[token.start..token.end]); | 896 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 897 | try out.writeAll("</span>"); | 897 | try out.writeAll("</span>"); |
| 898 | } else { | 898 | } else { |
| 899 | try writeEscaped(out, src[token.start..token.end]); | 899 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 900 | } | 900 | } |
| 901 | } | 901 | } |
| 902 | }, | 902 | }, |
| ... | @@ -905,7 +905,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok | ... | @@ -905,7 +905,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok |
| 905 | .FloatLiteral, | 905 | .FloatLiteral, |
| 906 | => { | 906 | => { |
| 907 | try out.writeAll("<span class=\"tok-number\">"); | 907 | try out.writeAll("<span class=\"tok-number\">"); |
| 908 | try writeEscaped(out, src[token.start..token.end]); | 908 | try writeEscaped(out, src[token.loc.start..token.loc.end]); |
| 909 | try out.writeAll("</span>"); | 909 | try out.writeAll("</span>"); |
| 910 | }, | 910 | }, |
| 911 | | 911 | |
| ... | @@ -963,7 +963,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok | ... | @@ -963,7 +963,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok |
| 963 | .AngleBracketAngleBracketRight, | 963 | .AngleBracketAngleBracketRight, |
| 964 | .AngleBracketAngleBracketRightEqual, | 964 | .AngleBracketAngleBracketRightEqual, |
| 965 | .Tilde, | 965 | .Tilde, |
| 966 | => try writeEscaped(out, src[token.start..token.end]), | 966 | => try writeEscaped(out, src[token.loc.start..token.loc.end]), |
| 967 | | 967 | |
| 968 | .Invalid, .Invalid_ampersands => return parseError( | 968 | .Invalid, .Invalid_ampersands => return parseError( |
| 969 | docgen_tokenizer, | 969 | docgen_tokenizer, |
| ... | @@ -972,7 +972,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok | ... | @@ -972,7 +972,7 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: var, source_token: Tok |
| 972 | .{}, | 972 | .{}, |
| 973 | ), | 973 | ), |
| 974 | } | 974 | } |
| 975 | index = token.end; | 975 | index = token.loc.end; |
| 976 | } | 976 | } |
| 977 | try out.writeAll("</code>"); | 977 | try out.writeAll("</code>"); |
| 978 | } | 978 | } |