partial support for epsilon rules

This commit is contained in:
Krasimir Angelov
2022-10-04 11:44:22 +02:00
parent 693ca7ffa5
commit e2a7974853
4 changed files with 62 additions and 16 deletions

View File

@@ -211,11 +211,13 @@ struct PGF_INTERNAL_DECL PgfSymbolALLCAPIT {
struct PGF_INTERNAL_DECL PgfConcrLincat;
struct PGF_INTERNAL_DECL PgfLincatBackref;
struct PGF_INTERNAL_DECL PgfLincatEpsilon;
struct PGF_INTERNAL_DECL PgfLincatField {
ref<PgfConcrLincat> lincat;
ref<PgfText> name;
ref<Vector<PgfLincatBackref>> backrefs;
ref<Vector<PgfLincatEpsilon>> epsilons;
static void release(ref<PgfLincatField> field);
};
@@ -257,6 +259,11 @@ struct PGF_INTERNAL_DECL PgfLincatBackref {
size_t dot;
};
struct PGF_INTERNAL_DECL PgfLincatEpsilon {
ref<PgfConcrLin> lin;
size_t seq_index;
};
struct PGF_INTERNAL_DECL PgfConcrPrintname {
ref<PgfText> printname;
PgfText name;