summaryrefslogtreecommitdiff
path: root/src/runtime/c/pgf/linearizer.c
diff options
context:
space:
mode:
authorkrangelov <kr.angelov@gmail.com>2020-03-05 11:58:21 +0100
committerkrangelov <kr.angelov@gmail.com>2020-03-05 11:58:21 +0100
commitf22bd70585c3f1fc23cf205c8dc2280cd9975832 (patch)
tree9240054eed80c1cb72c62a145c80fd4cf2b44b0c /src/runtime/c/pgf/linearizer.c
parent31339001252a63c0f86ade423cb03095f21c5862 (diff)
The APIs for callbacks and the bracketed strings now use a string for the analysis intead of an integer. This is now consistent with lookupMorpho and friends
Diffstat (limited to 'src/runtime/c/pgf/linearizer.c')
-rw-r--r--src/runtime/c/pgf/linearizer.c38
1 files changed, 19 insertions, 19 deletions
diff --git a/src/runtime/c/pgf/linearizer.c b/src/runtime/c/pgf/linearizer.c
index 12b047b13..a7ca6e764 100644
--- a/src/runtime/c/pgf/linearizer.c
+++ b/src/runtime/c/pgf/linearizer.c
@@ -606,7 +606,7 @@ typedef struct {
PgfLzrCachedTag tag;
PgfCId cat;
int fid;
- int lin_idx;
+ GuString ann;
PgfCId fun;
} PgfLzrCached;
@@ -644,7 +644,7 @@ pgf_lzr_cache_flush(PgfLzrCache* cache, PgfSymbols* form)
cache->lzr->funcs,
event->cat,
event->fid,
- event->lin_idx,
+ event->ann,
event->fun);
}
break;
@@ -654,7 +654,7 @@ pgf_lzr_cache_flush(PgfLzrCache* cache, PgfSymbols* form)
cache->lzr->funcs,
event->cat,
event->fid,
- event->lin_idx,
+ event->ann,
event->fun);
}
break;
@@ -709,27 +709,27 @@ found:
}
static void
-pgf_lzr_cache_begin_phrase(PgfLinFuncs** funcs, PgfCId cat, int fid, size_t lin_idx, PgfCId fun)
+pgf_lzr_cache_begin_phrase(PgfLinFuncs** funcs, PgfCId cat, int fid, GuString ann, PgfCId fun)
{
PgfLzrCache* cache = gu_container(funcs, PgfLzrCache, funcs);
PgfLzrCached* event = gu_buf_extend(cache->events);
- event->tag = PGF_CACHED_BEGIN;
- event->cat = cat;
- event->fid = fid;
- event->lin_idx = lin_idx;
- event->fun = fun;
+ event->tag = PGF_CACHED_BEGIN;
+ event->cat = cat;
+ event->fid = fid;
+ event->ann = ann;
+ event->fun = fun;
}
static void
-pgf_lzr_cache_end_phrase(PgfLinFuncs** funcs, PgfCId cat, int fid, size_t lin_idx, PgfCId fun)
+pgf_lzr_cache_end_phrase(PgfLinFuncs** funcs, PgfCId cat, int fid, GuString ann, PgfCId fun)
{
PgfLzrCache* cache = gu_container(funcs, PgfLzrCache, funcs);
PgfLzrCached* event = gu_buf_extend(cache->events);
- event->tag = PGF_CACHED_END;
- event->cat = cat;
- event->fid = fid;
- event->lin_idx = lin_idx;
- event->fun = fun;
+ event->tag = PGF_CACHED_END;
+ event->cat = cat;
+ event->fid = fid;
+ event->ann = ann;
+ event->fun = fun;
}
static void
@@ -918,7 +918,7 @@ pgf_lzr_linearize_tree(PgfLzr* lzr, PgfCncTree ctree, size_t lin_idx)
if ((*lzr->funcs)->begin_phrase && fapp->ccat != NULL) {
(*lzr->funcs)->begin_phrase(lzr->funcs,
fapp->ccat->cnccat->abscat->name,
- fapp->fid, lin_idx,
+ fapp->fid, fapp->ccat->cnccat->labels[lin_idx],
fapp->abs_id);
}
@@ -928,7 +928,7 @@ pgf_lzr_linearize_tree(PgfLzr* lzr, PgfCncTree ctree, size_t lin_idx)
if ((*lzr->funcs)->end_phrase && fapp->ccat != NULL) {
(*lzr->funcs)->end_phrase(lzr->funcs,
fapp->ccat->cnccat->abscat->name,
- fapp->fid, lin_idx,
+ fapp->fid, fapp->ccat->cnccat->labels[lin_idx],
fapp->abs_id);
}
break;
@@ -957,7 +957,7 @@ pgf_lzr_linearize_tree(PgfLzr* lzr, PgfCncTree ctree, size_t lin_idx)
if ((*lzr->funcs)->begin_phrase && flit->fid >= 0) {
(*lzr->funcs)->begin_phrase(lzr->funcs,
- cat, flit->fid, 0,
+ cat, flit->fid, "s",
"");
}
@@ -989,7 +989,7 @@ pgf_lzr_linearize_tree(PgfLzr* lzr, PgfCncTree ctree, size_t lin_idx)
if ((*lzr->funcs)->end_phrase && flit->fid >= 0) {
(*lzr->funcs)->end_phrase(lzr->funcs,
- cat, flit->fid, 0,
+ cat, flit->fid, "s",
"");
}