Improve validation of jbuild atoms
Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
This commit is contained in:
parent
ad3a95655d
commit
46eba2ef98
|
@ -12,8 +12,12 @@ let (is_valid_jbuild, is_valid_dune) =
|
||||||
let rec jbuild s i len =
|
let rec jbuild s i len =
|
||||||
i = len ||
|
i = len ||
|
||||||
match String.unsafe_get s i with
|
match String.unsafe_get s i with
|
||||||
|
| '#' -> disallow_next '|' s (i + 1) len
|
||||||
|
| '|' -> disallow_next '#' s (i + 1) len
|
||||||
| '"' | '(' | ')' | ';' | '\000'..'\032' | '\127'..'\255' -> false
|
| '"' | '(' | ')' | ';' | '\000'..'\032' | '\127'..'\255' -> false
|
||||||
| _ -> jbuild s (i + 1) len
|
| _ -> jbuild s (i + 1) len
|
||||||
|
and disallow_next c s i len =
|
||||||
|
i = len || String.unsafe_get s i <> c && jbuild s i len
|
||||||
in
|
in
|
||||||
let rec dune s i len =
|
let rec dune s i len =
|
||||||
i = len ||
|
i = len ||
|
||||||
|
|
Loading…
Reference in New Issue