diff options
| author | rsc <devnull@localhost> | 2004-05-15 23:24:00 +0000 |
|---|---|---|
| committer | rsc <devnull@localhost> | 2004-05-15 23:24:00 +0000 |
| commit | 5cedca1b69d020c32466f70843a11767773d7e3b (patch) | |
| tree | a15a3d84e92aa262543b0010763a5e6920c9ba24 /src/cmd/tbl/ts.c | |
| parent | 76e6aca867e3e48ea04fbcf7284c45369a69829e (diff) | |
| download | plan9port-5cedca1b69d020c32466f70843a11767773d7e3b.tar.gz plan9port-5cedca1b69d020c32466f70843a11767773d7e3b.zip | |
Let's try this. It's BUGGERED.
Diffstat (limited to 'src/cmd/tbl/ts.c')
| -rw-r--r-- | src/cmd/tbl/ts.c | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/src/cmd/tbl/ts.c b/src/cmd/tbl/ts.c new file mode 100644 index 00000000..43cc84ec --- /dev/null +++ b/src/cmd/tbl/ts.c @@ -0,0 +1,71 @@ +/* ts.c: minor string processing subroutines */ +#include "t.h" + +int +match (char *s1, char *s2) +{ + while (*s1 == *s2) + if (*s1++ == '\0') + return(1); + else + s2++; + return(0); +} + + +int +prefix(char *small, char *big) +{ + int c; + + while ((c = *small++) == *big++) + if (c == 0) + return(1); + return(c == 0); +} + + +int +letter (int ch) +{ + if (ch >= 'a' && ch <= 'z') + return(1); + if (ch >= 'A' && ch <= 'Z') + return(1); + return(0); +} + + +int +numb(char *str) +{ + /* convert to integer */ + int k; + for (k = 0; *str >= '0' && *str <= '9'; str++) + k = k * 10 + *str - '0'; + return(k); +} + + +int +digit(int x) +{ + return(x >= '0' && x <= '9'); +} + + +int +max(int a, int b) +{ + return( a > b ? a : b); +} + + +void +tcopy (char *s, char *t) +{ + while (*s++ = *t++) + ; +} + + |
