shithub: riscv

ref: 2aec1f8a09ae0bc9fb269d84ef53defebc47eede
dir: /sys/src/cmd/tbl/ts.c/

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