diff options
author | Oliver Kiddle <opk@users.sourceforge.net> | 2001-12-17 17:17:38 +0000 |
---|---|---|
committer | Oliver Kiddle <opk@users.sourceforge.net> | 2001-12-17 17:17:38 +0000 |
commit | 52b8303537015f603f35351abe2a01d8779868fe (patch) | |
tree | d5a16605b10781a3924555f089390f4c7bd27ddc /Src/zsh.h | |
parent | 8659013fb8c76fdaac1baa43b09393ec10948a93 (diff) | |
download | zsh-52b8303537015f603f35351abe2a01d8779868fe.tar.gz zsh-52b8303537015f603f35351abe2a01d8779868fe.tar.xz zsh-52b8303537015f603f35351abe2a01d8779868fe.zip |
16353: add += parameter assignments
Diffstat (limited to 'Src/zsh.h')
-rw-r--r-- | Src/zsh.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/Src/zsh.h b/Src/zsh.h index cd6caf3b3..28a3c20e9 100644 --- a/Src/zsh.h +++ b/Src/zsh.h @@ -591,10 +591,13 @@ struct eccstr { #define WCB_REDIR(T) wc_bld(WC_REDIR, (T)) #define WC_ASSIGN_TYPE(C) (wc_data(C) & ((wordcode) 1)) +#define WC_ASSIGN_TYPE2(C) ((wc_data(C) & ((wordcode) 2)) >> 1) #define WC_ASSIGN_SCALAR 0 #define WC_ASSIGN_ARRAY 1 -#define WC_ASSIGN_NUM(C) (wc_data(C) >> 1) -#define WCB_ASSIGN(T,N) wc_bld(WC_ASSIGN, ((T) | ((N) << 1))) +#define WC_ASSIGN_NEW 0 +#define WC_ASSIGN_INC 1 +#define WC_ASSIGN_NUM(C) (wc_data(C) >> 2) +#define WCB_ASSIGN(T,A,N) wc_bld(WC_ASSIGN, ((T) | ((A) << 1) | ((N) << 2))) #define WC_SIMPLE_ARGC(C) wc_data(C) #define WCB_SIMPLE(N) wc_bld(WC_SIMPLE, (N)) @@ -1198,6 +1201,9 @@ struct paramdef { { name, PM_ARRAY, (void *) var, (void *) arrvarsetfn, \ (void *) arrvargetfn, (void *) stdunsetfn } +#define setsparam(S,V) assignsparam(S,V,0) +#define setaparam(S,V) assignaparam(S,V,0) + /* node for named directory hash table (nameddirtab) */ struct nameddir { |