no_comment

Скачать

Решил сделать отдельную тему, а не скитаться по чужим... В общем построчное чтение файла, посимвольный анализатор строки. Если символ комментария точка с запятой не является частью строки в кавычках (в том числе с тильдой), в апострофах, в ASM строках, то она является началом комментария и удаляется всё после неё. Если комментарий с начала строки, то удаляется вместе с переносом, точнее игнорируется запись строки, и это позволяет не оставлять пустые пространства при многострочных комментариях. Также после удаления комментария проверяется, что нет пробелов в конце строки.

Сподвигло создание темы очередное обновление, насколько критичное пока не понятно, но ранее не было учтено !ASM и ';' то есть могли быть поломаны строки с ASM и код после апострофа с символом комментария, так как он не учитывался. Конечно же в связи с этим были обновлены ещё 2 кода менее критичных IncludeHelper и alignment_of_comments, но в отличии от них no_comment именно удаляет, что могло бы привести к последствиям. Конечно, сейчас могу предположить что поломка ';' выявилась бы сразу, так как отладчик сразу бы начал ругаться на незавершённую строку с апострофом, а вот с ASM как не знаток не могу предположить что может быть, но например в библиотеке bigint.pbi нет ни одного символа комментария внутри кода !ххх, но используется как комментарий в конце строки, то есть для ASM тоже ";" является как символ комментария, а не как часть кода. А отсутствие в ASM строк вообще упрощает поиск комментария. Но пока сделал игнор и комментарии ASM не удаляются.

Отредактировано AZJIO (15.03.2024 14:44:25)