diff options
author | Denys Vlasenko | 2010-01-12 23:29:57 +0100 |
---|---|---|
committer | Denys Vlasenko | 2010-01-12 23:29:57 +0100 |
commit | 03dad22f8a1b8b1410fdcccf69af1bb5cce4de7c (patch) | |
tree | b134cbc7f0afbf76c54847624310e6a1d2774f83 /shell/math.h | |
parent | 045f4ad92c07434625e168bc8c37aa0e89f6e58e (diff) | |
download | busybox-03dad22f8a1b8b1410fdcccf69af1bb5cce4de7c.zip busybox-03dad22f8a1b8b1410fdcccf69af1bb5cce4de7c.tar.gz |
hush: use ash's read builtin
function old new delta
shell_builtin_read - 1000 +1000
set_local_var_from_halves - 24 +24
setvar2 - 7 +7
...
popstring 140 134 -6
ash_main 1375 1368 -7
setvar 184 174 -10
arith_set_local_var 36 - -36
builtin_read 1096 185 -911
------------------------------------------------------------------------------
(add/remove: 3/1 grow/shrink: 5/23 up/down: 1038/-1007) Total: 31 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/math.h')
-rw-r--r-- | shell/math.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/shell/math.h b/shell/math.h index 7b7898e..2b0b2b8 100644 --- a/shell/math.h +++ b/shell/math.h @@ -87,12 +87,13 @@ typedef long arith_t; #define strto_arith_t strtoul #endif -typedef const char *(*arith_var_lookup_t)(const char *name); -typedef void (*arith_var_set_t)(const char *name, const char *val, int flags); -typedef char *(*arith_var_endofname_t)(const char *name); +typedef const char* FAST_FUNC (*arith_var_lookup_t)(const char *name); +typedef void FAST_FUNC (*arith_var_set_t)(const char *name, const char *val); +typedef char* FAST_FUNC (*arith_var_endofname_t)(const char *name); + typedef struct arith_eval_hooks { - arith_var_lookup_t lookupvar; - arith_var_set_t setvar; + arith_var_lookup_t lookupvar; + arith_var_set_t setvar; arith_var_endofname_t endofname; } arith_eval_hooks_t; |