/* 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++)
               ;
}