find bug and comment on it. We currently assume the first character in an NFA string is a CHAR_LITERAL, but it can be anything else, including a WILDCARD operator; we have to check what the chr is and decide. We probably want to take care of this later, so added a todo-note.

This commit is contained in:
2025-09-30 14:25:45 +01:00
parent 934fa729a9
commit 774dba5c19

View File

@@ -230,6 +230,9 @@ struct
struct
(* parsing through precedence climbing algorithm. *)
datatype action =
TRY_NEXT_NODE_WITHOUT_CONSUMING_CHR
val groupLevel = 1
val postfixLevel = 2
val concatLevel = 3
@@ -353,6 +356,9 @@ struct
and parse str =
if String.size str > 0 then
(* todo: we currently assume that the first char is always a CHAR_LITERAL
* but we should actually check what character the chr is
* before deciding it represents one variant or another *)
let
val chr = String.sub (str, 0)
val chr = CHAR_LITERAL (chr, UNTESTED)