diff options
author | Larry Wall <larry@netlabs.com> | 1993-11-10 00:00:00 +0000 |
---|---|---|
committer | Larry Wall <larry@netlabs.com> | 1993-11-10 00:00:00 +0000 |
commit | 463ee0b2acbd047c27e8b5393cdd8398881824c5 (patch) | |
tree | ae17d9179fc861ae5fc5a86da9139631530cb6fe /do/vop | |
parent | 93a17b20b6d176db3f04f51a63b0a781e5ffd11c (diff) | |
download | perl-463ee0b2acbd047c27e8b5393cdd8398881824c5.tar.gz |
perl 5.0 alpha 4
[editor's note: the sparc executables have not been included, and
emacs backup files have been removed. This was reconstructed from a
tarball found on the September 1994 InfoMagic CD; the date of this is
approximate]
Diffstat (limited to 'do/vop')
-rw-r--r-- | do/vop | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/do/vop b/do/vop deleted file mode 100644 index d91ef53ea6..0000000000 --- a/do/vop +++ /dev/null @@ -1,50 +0,0 @@ -void -do_vop(optype,TARG,left,right) -STR *TARG; -STR *left; -STR *right; -{ - register char *s; - register char *l = str_get(left); - register char *r = str_get(right); - register int len; - - len = left->str_cur; - if (len > right->str_cur) - len = right->str_cur; - if (TARG->str_cur > len) - TARG->str_cur = len; - else if (TARG->str_cur < len) { - STR_GROW(TARG,len); - (void)memzero(TARG->str_ptr + TARG->str_cur, len - TARG->str_cur); - TARG->str_cur = len; - } - TARG->str_pok = 1; - TARG->str_nok = 0; - s = TARG->str_ptr; - if (!s) { - str_nset(TARG,"",0); - s = TARG->str_ptr; - } - switch (optype) { - case O_BIT_AND: - while (len--) - *s++ = *l++ & *r++; - break; - case O_XOR: - while (len--) - *s++ = *l++ ^ *r++; - goto mop_up; - case O_BIT_OR: - while (len--) - *s++ = *l++ | *r++; - mop_up: - len = TARG->str_cur; - if (right->str_cur > len) - str_ncat(TARG,right->str_ptr+len,right->str_cur - len); - else if (left->str_cur > len) - str_ncat(TARG,left->str_ptr+len,left->str_cur - len); - break; - } -} - |