diff options
Diffstat (limited to 'inc')
-rw-r--r-- | inc/term.h | 11 |
1 files changed, 7 insertions, 4 deletions
@@ -24,6 +24,7 @@ struct term { union { struct { struct term *term; + char bound; } abs; struct { struct term *lhs; @@ -39,11 +40,13 @@ struct term *term_new(term_type_t type, hash_t hash, size_t depth); void term_destroy_head(struct term *term, char including_parents); char term_is_beta_redex(struct term *term); void term_rehash_parents(struct term *term); -struct term *term_rehash(struct term *term); -struct term *term_rehash_abs(struct term *head, struct term *term); +struct term *term_rehash(struct term *term, int including_parents); +struct term *term_rehash_abs(struct term *head, struct term *term, + int including_parents); struct term *term_rehash_app(struct term *head, struct term *lhs, - struct term *rhs); -struct term *term_rehash_var(struct term *head, size_t index); + struct term *rhs, int including_parents); +struct term *term_rehash_var(struct term *head, size_t index, + int including_parents); void term_refer_head(struct term *term, size_t depth); void term_refer(struct term *term, size_t depth); char term_deref_head(struct term *term, char destroy_parents); |