1 нестабильный релиз
0.1.0 | 18 янв. 2022 |
---|
#9 в #dft
16KB
328 строк кода, без комментариев
dft.p
парсер файлов инструкций dft
описание
этот проект lib/bin — официальное средство для парсинга, lint и исправления файлов .dft
почему
во время работы над проектом dft я понял 2 вещи
-
инструмент dft сам не должен отвечать за парсинг файла инструкций, но скорее за его выполнение
-
я еще не сделал парсер, так что... вот один
грамматика (BNF)
:= | ;
:= ; ;
:= ;
:= SET | ADD | ALIAS | MERGE | IGNORE | RENAME | FILTER | COERCE | DISTINCT | VALIDATE ;
:= | , ;
:= String ;
:= | ;
:= ;
:= OR | TO | TYPED | RESCUE | DEFAULT | MATCHING ;
:= | | | | ;
:= f64 | String | bool | isize ;
:= FLOAT | STRING | INTEGER | BOOLEAN ;
:= URI | UUID | DATE | TIME | EMAIL | DATETIME ;
:= HALT | NOTIFY | DISCARD ;
:= EQUALS | LESSER | DIFFERS | GREATER | EQLESSER | EQGREATER ;
TODO
[] Улучшить комбинаторы, возвращающие списки [] Улучшить verbosity ошибок
Зависимости
~1MB
~19K SLoC