dftp

Crates.iodftp
lib.rsdftp
version0.1.0
sourcesrc
created_at2022-01-18 05:20:40.168958
updated_at2022-01-18 05:20:40.168958
descriptiondft instructions parser
homepagehttps://github.com/jaimecgomezz/dft.p
repositoryhttps://github.com/jaimecgomezz/dft.p
max_upload_size
id515977
size28,123
thbrd (jaimecgomezz)

documentation

README

dft.p

dft instructions file parser

description

this lib/bin project is the official tool to parse, lint and fix .dft files

why

while working in the dft project I realized 2 things:

  • the dft tool itself shouldn't be responsible of parsing the instructions file, but rather the execution itself

  • haven't made a parser yet, so... here's one

grammar (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

[] Improve combinators that return lists [] Improve error verbosity

Commit count: 28

cargo fmt