@@ -781,106 +781,119 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: anytype, source_token:
781
781
next_tok_is_fn = false ;
782
782
783
783
const token = tokenizer .next ();
784
+ if (mem .indexOf (u8 , src [index .. token .loc .start ], "//" )) | comment_start_off | {
785
+ // render one comment
786
+ const comment_start = index + comment_start_off ;
787
+ const comment_end_off = mem .indexOf (u8 , src [comment_start .. token .loc .start ], "\n " );
788
+ const comment_end = if (comment_end_off ) | o | comment_start + o else token .loc .start ;
789
+
790
+ try writeEscaped (out , src [index .. comment_start ]);
791
+ try out .writeAll ("<span class=\" tok-comment\" >" );
792
+ try writeEscaped (out , src [comment_start .. comment_end ]);
793
+ try out .writeAll ("</span>" );
794
+ index = comment_end ;
795
+ tokenizer .index = index ;
796
+ continue ;
797
+ }
798
+
784
799
try writeEscaped (out , src [index .. token .loc .start ]);
785
- switch (token .id ) {
786
- .Eof = > break ,
787
-
788
- .Keyword_align ,
789
- .Keyword_and ,
790
- .Keyword_asm ,
791
- .Keyword_async ,
792
- .Keyword_await ,
793
- .Keyword_break ,
794
- .Keyword_catch ,
795
- .Keyword_comptime ,
796
- .Keyword_const ,
797
- .Keyword_continue ,
798
- .Keyword_defer ,
799
- .Keyword_else ,
800
- .Keyword_enum ,
801
- .Keyword_errdefer ,
802
- .Keyword_error ,
803
- .Keyword_export ,
804
- .Keyword_extern ,
805
- .Keyword_for ,
806
- .Keyword_if ,
807
- .Keyword_inline ,
808
- .Keyword_noalias ,
809
- .Keyword_noinline ,
810
- .Keyword_nosuspend ,
811
- .Keyword_opaque ,
812
- .Keyword_or ,
813
- .Keyword_orelse ,
814
- .Keyword_packed ,
815
- .Keyword_anyframe ,
816
- .Keyword_pub ,
817
- .Keyword_resume ,
818
- .Keyword_return ,
819
- .Keyword_linksection ,
820
- .Keyword_callconv ,
821
- .Keyword_struct ,
822
- .Keyword_suspend ,
823
- .Keyword_switch ,
824
- .Keyword_test ,
825
- .Keyword_threadlocal ,
826
- .Keyword_try ,
827
- .Keyword_union ,
828
- .Keyword_unreachable ,
829
- .Keyword_usingnamespace ,
830
- .Keyword_var ,
831
- .Keyword_volatile ,
832
- .Keyword_allowzero ,
833
- .Keyword_while ,
834
- .Keyword_anytype ,
800
+ switch (token .tag ) {
801
+ .eof = > break ,
802
+
803
+ .keyword_align ,
804
+ .keyword_and ,
805
+ .keyword_asm ,
806
+ .keyword_async ,
807
+ .keyword_await ,
808
+ .keyword_break ,
809
+ .keyword_catch ,
810
+ .keyword_comptime ,
811
+ .keyword_const ,
812
+ .keyword_continue ,
813
+ .keyword_defer ,
814
+ .keyword_else ,
815
+ .keyword_enum ,
816
+ .keyword_errdefer ,
817
+ .keyword_error ,
818
+ .keyword_export ,
819
+ .keyword_extern ,
820
+ .keyword_for ,
821
+ .keyword_if ,
822
+ .keyword_inline ,
823
+ .keyword_noalias ,
824
+ .keyword_noinline ,
825
+ .keyword_nosuspend ,
826
+ .keyword_opaque ,
827
+ .keyword_or ,
828
+ .keyword_orelse ,
829
+ .keyword_packed ,
830
+ .keyword_anyframe ,
831
+ .keyword_pub ,
832
+ .keyword_resume ,
833
+ .keyword_return ,
834
+ .keyword_linksection ,
835
+ .keyword_callconv ,
836
+ .keyword_struct ,
837
+ .keyword_suspend ,
838
+ .keyword_switch ,
839
+ .keyword_test ,
840
+ .keyword_threadlocal ,
841
+ .keyword_try ,
842
+ .keyword_union ,
843
+ .keyword_unreachable ,
844
+ .keyword_usingnamespace ,
845
+ .keyword_var ,
846
+ .keyword_volatile ,
847
+ .keyword_allowzero ,
848
+ .keyword_while ,
849
+ .keyword_anytype ,
835
850
= > {
836
851
try out .writeAll ("<span class=\" tok-kw\" >" );
837
852
try writeEscaped (out , src [token .loc .start .. token .loc .end ]);
838
853
try out .writeAll ("</span>" );
839
854
},
840
855
841
- .Keyword_fn = > {
856
+ .keyword_fn = > {
842
857
try out .writeAll ("<span class=\" tok-kw\" >" );
843
858
try writeEscaped (out , src [token .loc .start .. token .loc .end ]);
844
859
try out .writeAll ("</span>" );
845
860
next_tok_is_fn = true ;
846
861
},
847
862
848
- .Keyword_undefined ,
849
- .Keyword_null ,
850
- .Keyword_true ,
851
- .Keyword_false ,
863
+ .keyword_undefined ,
864
+ .keyword_null ,
865
+ .keyword_true ,
866
+ .keyword_false ,
852
867
= > {
853
868
try out .writeAll ("<span class=\" tok-null\" >" );
854
869
try writeEscaped (out , src [token .loc .start .. token .loc .end ]);
855
870
try out .writeAll ("</span>" );
856
871
},
857
872
858
- .StringLiteral ,
859
- .MultilineStringLiteralLine ,
860
- .CharLiteral ,
873
+ .string_literal ,
874
+ .multiline_string_literal_line ,
875
+ .char_literal ,
861
876
= > {
862
877
try out .writeAll ("<span class=\" tok-str\" >" );
863
878
try writeEscaped (out , src [token .loc .start .. token .loc .end ]);
864
879
try out .writeAll ("</span>" );
865
880
},
866
881
867
- .Builtin = > {
882
+ .builtin = > {
868
883
try out .writeAll ("<span class=\" tok-builtin\" >" );
869
884
try writeEscaped (out , src [token .loc .start .. token .loc .end ]);
870
885
try out .writeAll ("</span>" );
871
886
},
872
887
873
- .LineComment ,
874
- .DocComment ,
875
- .ContainerDocComment ,
876
- .ShebangLine ,
888
+ .doc_comment ,
889
+ .container_doc_comment ,
877
890
= > {
878
891
try out .writeAll ("<span class=\" tok-comment\" >" );
879
892
try writeEscaped (out , src [token .loc .start .. token .loc .end ]);
880
893
try out .writeAll ("</span>" );
881
894
},
882
895
883
- .Identifier = > {
896
+ .identifier = > {
884
897
if (prev_tok_was_fn ) {
885
898
try out .writeAll ("<span class=\" tok-fn\" >" );
886
899
try writeEscaped (out , src [token .loc .start .. token .loc .end ]);
@@ -908,71 +921,71 @@ fn tokenizeAndPrintRaw(docgen_tokenizer: *Tokenizer, out: anytype, source_token:
908
921
}
909
922
},
910
923
911
- .IntegerLiteral ,
912
- .FloatLiteral ,
924
+ .integer_literal ,
925
+ .float_literal ,
913
926
= > {
914
927
try out .writeAll ("<span class=\" tok-number\" >" );
915
928
try writeEscaped (out , src [token .loc .start .. token .loc .end ]);
916
929
try out .writeAll ("</span>" );
917
930
},
918
931
919
- .Bang ,
920
- .Pipe ,
921
- .PipePipe ,
922
- .PipeEqual ,
923
- .Equal ,
924
- .EqualEqual ,
925
- .EqualAngleBracketRight ,
926
- .BangEqual ,
927
- .LParen ,
928
- .RParen ,
929
- .Semicolon ,
930
- .Percent ,
931
- .PercentEqual ,
932
- .LBrace ,
933
- .RBrace ,
934
- .LBracket ,
935
- .RBracket ,
936
- .Period ,
937
- .PeriodAsterisk ,
938
- .Ellipsis2 ,
939
- .Ellipsis3 ,
940
- .Caret ,
941
- .CaretEqual ,
942
- .Plus ,
943
- .PlusPlus ,
944
- .PlusEqual ,
945
- .PlusPercent ,
946
- .PlusPercentEqual ,
947
- .Minus ,
948
- .MinusEqual ,
949
- .MinusPercent ,
950
- .MinusPercentEqual ,
951
- .Asterisk ,
952
- .AsteriskEqual ,
953
- .AsteriskAsterisk ,
954
- .AsteriskPercent ,
955
- .AsteriskPercentEqual ,
956
- .Arrow ,
957
- .Colon ,
958
- .Slash ,
959
- .SlashEqual ,
960
- .Comma ,
961
- .Ampersand ,
962
- .AmpersandEqual ,
963
- .QuestionMark ,
964
- .AngleBracketLeft ,
965
- .AngleBracketLeftEqual ,
966
- .AngleBracketAngleBracketLeft ,
967
- .AngleBracketAngleBracketLeftEqual ,
968
- .AngleBracketRight ,
969
- .AngleBracketRightEqual ,
970
- .AngleBracketAngleBracketRight ,
971
- .AngleBracketAngleBracketRightEqual ,
972
- .Tilde ,
932
+ .bang ,
933
+ .pipe ,
934
+ .pipe_pipe ,
935
+ .pipe_equal ,
936
+ .equal ,
937
+ .equal_equal ,
938
+ .equal_angle_bracket_right ,
939
+ .bang_equal ,
940
+ .l_paren ,
941
+ .r_paren ,
942
+ .semicolon ,
943
+ .percent ,
944
+ .percent_equal ,
945
+ .l_brace ,
946
+ .r_brace ,
947
+ .l_bracket ,
948
+ .r_bracket ,
949
+ .period ,
950
+ .period_asterisk ,
951
+ .ellipsis2 ,
952
+ .ellipsis3 ,
953
+ .caret ,
954
+ .caret_equal ,
955
+ .plus ,
956
+ .plus_plus ,
957
+ .plus_equal ,
958
+ .plus_percent ,
959
+ .plus_percent_equal ,
960
+ .minus ,
961
+ .minus_equal ,
962
+ .minus_percent ,
963
+ .minus_percent_equal ,
964
+ .asterisk ,
965
+ .asterisk_equal ,
966
+ .asterisk_asterisk ,
967
+ .asterisk_percent ,
968
+ .asterisk_percent_equal ,
969
+ .arrow ,
970
+ .colon ,
971
+ .slash ,
972
+ .slash_equal ,
973
+ .comma ,
974
+ .ampersand ,
975
+ .ampersand_equal ,
976
+ .question_mark ,
977
+ .angle_bracket_left ,
978
+ .angle_bracket_left_equal ,
979
+ .angle_bracket_angle_bracket_left ,
980
+ .angle_bracket_angle_bracket_left_equal ,
981
+ .angle_bracket_right ,
982
+ .angle_bracket_right_equal ,
983
+ .angle_bracket_angle_bracket_right ,
984
+ .angle_bracket_angle_bracket_right_equal ,
985
+ .tilde ,
973
986
= > try writeEscaped (out , src [token .loc .start .. token .loc .end ]),
974
987
975
- .Invalid , .Invalid_ampersands , .Invalid_periodasterisks = > return parseError (
988
+ .invalid , .invalid_ampersands , .invalid_periodasterisks = > return parseError (
976
989
docgen_tokenizer ,
977
990
source_token ,
978
991
"syntax error" ,
0 commit comments