aboutsummaryrefslogtreecommitdiff
path: root/definitions.c
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2021-08-01 15:36:53 -0700
committerBruce Hill <bruce@bruce-hill.com>2021-08-01 15:36:53 -0700
commit0b2de4721f3dcf95d6d0af54c78e197df10f6666 (patch)
tree7b64cefb5c2897510fffdb6c1aa36c792a4c61c4 /definitions.c
parent8268e67875abeaae99d0793e424514662a84628d (diff)
Moved caching code onto the file, which fixed an issue with file slicing
having stale cache values.
Diffstat (limited to 'definitions.c')
-rw-r--r--definitions.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/definitions.c b/definitions.c
index 43bfe3c..717e1a5 100644
--- a/definitions.c
+++ b/definitions.c
@@ -37,11 +37,8 @@ def_t *load_grammar(def_t *defs, file_t *f)
pat_t *pat = bp_pattern(f, str);
if (!pat) file_err(f, str, f->end, "Could not parse this file");
if (pat->end < f->end) file_err(f, pat->end, f->end, "Could not parse this part of the file");
- for (pat_t *p = pat; p && p->type == BP_DEFINITION; p = p->args.def.pat) {
- // printf("Def '%.*s': %.*s\n", (int)p->args.def.namelen, p->args.def.name,
- // (int)(p->args.def.def->end - p->args.def.def->start), p->args.def.def->start);
+ for (pat_t *p = pat; p && p->type == BP_DEFINITION; p = p->args.def.pat)
defs = with_def(defs, p->args.def.namelen, p->args.def.name, p->args.def.def);
- }
return defs;
}