diff options
Diffstat (limited to 'shell/math.h')
-rw-r--r-- | shell/math.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/shell/math.h b/shell/math.h index 2b0b2b89d..96088b4d2 100644 --- a/shell/math.h +++ b/shell/math.h | |||
@@ -87,14 +87,19 @@ typedef long arith_t; | |||
87 | #define strto_arith_t strtoul | 87 | #define strto_arith_t strtoul |
88 | #endif | 88 | #endif |
89 | 89 | ||
90 | /* ash's and hush's endofname is the same, so... */ | ||
91 | # define is_name(c) ((c) == '_' || isalpha((unsigned char)(c))) | ||
92 | # define is_in_name(c) ((c) == '_' || isalnum((unsigned char)(c))) | ||
93 | const char* FAST_FUNC endofname(const char *name); | ||
94 | |||
90 | typedef const char* FAST_FUNC (*arith_var_lookup_t)(const char *name); | 95 | typedef const char* FAST_FUNC (*arith_var_lookup_t)(const char *name); |
91 | typedef void FAST_FUNC (*arith_var_set_t)(const char *name, const char *val); | 96 | typedef void FAST_FUNC (*arith_var_set_t)(const char *name, const char *val); |
92 | typedef char* FAST_FUNC (*arith_var_endofname_t)(const char *name); | 97 | //typedef const char* FAST_FUNC (*arith_var_endofname_t)(const char *name); |
93 | 98 | ||
94 | typedef struct arith_eval_hooks { | 99 | typedef struct arith_eval_hooks { |
95 | arith_var_lookup_t lookupvar; | 100 | arith_var_lookup_t lookupvar; |
96 | arith_var_set_t setvar; | 101 | arith_var_set_t setvar; |
97 | arith_var_endofname_t endofname; | 102 | // arith_var_endofname_t endofname; |
98 | } arith_eval_hooks_t; | 103 | } arith_eval_hooks_t; |
99 | 104 | ||
100 | arith_t arith(const char *expr, int *perrcode, arith_eval_hooks_t*); | 105 | arith_t arith(const char *expr, int *perrcode, arith_eval_hooks_t*); |