X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=src%2Ftypes%2Fnumber.h;h=a2dc79201af18d4d6d44ba3cc77dd531c35eddb6;hp=b691a7a331222cf36a939608d058d2fc34417137;hb=c9384515a81cb64d345b299908b2852f51bb8e6e;hpb=b029005e56a8913fbb3d17ab497b4a37a00a211c diff --git a/src/types/number.h b/src/types/number.h index b691a7a..a2dc792 100644 --- a/src/types/number.h +++ b/src/types/number.h @@ -36,6 +36,7 @@ struct psi_let_exp; struct psi_set_exp; struct psi_call_frame; struct psi_cpp_macro_call; +struct psi_validate_scope; enum psi_number_suffix { PSI_NUMBER_U = 0x0100, @@ -78,11 +79,13 @@ void psi_number_free(struct psi_number **exp_ptr); void psi_number_dump(int fd, struct psi_number *exp); bool psi_number_validate(struct psi_data *data, struct psi_number *exp, - struct psi_impl *impl, struct psi_decl *cb_decl, - struct psi_let_exp *current_let, struct psi_set_exp *current_set, - struct psi_decl_enum *current_enum); + struct psi_validate_scope *scope); token_t psi_number_eval(struct psi_number *exp, impl_val *res, - struct psi_call_frame *frame, HashTable *defs); + struct psi_call_frame *frame, HashTable *defs, + struct psi_num_exp *rec_guard); + +struct psi_plist *psi_number_tokens(struct psi_number *exp, + struct psi_plist *list); #endif