Subversion Repositories WoWGM

Rev

Rev 13 | Rev 18 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3 tristanc 1
#include "../H/STPL.h"
2
 
9 tristanc 3
 
3 tristanc 4
/****************************************************************************
5
*
6
*	Private functions
7
*
8
***/
9 tristanc 9
 
3 tristanc 10
//===========================================================================
11
int ToLower(int ch)
12
{
9 tristanc 13
	if (ch > 64 && ch < 91)
14
		ch+=32;
3 tristanc 15
	return ch;
16
}
17
 
18
//===========================================================================
19
int ToUpper(int ch)
20
{
9 tristanc 21
	if (ch > 96 && ch < 123)
22
		ch-=32;
3 tristanc 23
	return ch;
24
}
25
 
26
 
27
/****************************************************************************
28
*
29
*	External functions
30
*
31
***/
9 tristanc 32
 
3 tristanc 33
//===========================================================================
9 tristanc 34
char const* SStrChr(char const* string, char ch)
3 tristanc 35
{
9 tristanc 36
	// TODO: ASSERT(string);
37
	if (*string == 0)
38
		return 0;
39
	char const* copy = string;
40
	char currChar = *string;
41
	while (currChar != ch) {
42
		currChar = *++copy;
43
		if (currChar == 0)
44
			return 0;
45
	}
46
	return copy;
47
}
48
 
49
//===========================================================================
50
char* SStrChr(char* string, char ch)
51
{
52
	// TODO: ASSERT(string);
53
	if (*string == 0)
54
		return 0;
55
	char* copy = string;
56
	char currChar = *string;
57
	while (currChar != ch) {
58
		currChar = *++copy;
59
		if (currChar == 0)
60
			return 0;
61
	}
62
	return copy;
63
}
64
 
65
//===========================================================================
66
extern char const* SStrChrR(char const* string, char ch)
67
{
68
	return 0;
69
}
70
 
71
//===========================================================================
72
extern char* SStrChrR(char* string, char ch)
73
{
74
	return 0;
75
}
76
 
77
//===========================================================================
78
extern DWORD SStrCopy(char* dest, char const* source, DWORD destsize)
79
{
3 tristanc 80
	// TODO: ASSERT(dest);
81
	// TODO: ASSERT(source);
13 tristanc 82
	for (DWORD length = 0; length < destsize; length++)
3 tristanc 83
	{
13 tristanc 84
		dest[length] = source[length];
14 tristanc 85
		if (source[length] == '\0')
13 tristanc 86
			return length;
3 tristanc 87
	}
13 tristanc 88
	return 0;
3 tristanc 89
}
90
 
91
//===========================================================================
9 tristanc 92
extern int SStrCmp(char const* string1, char const* string2, DWORD maxchars)
3 tristanc 93
{
94
	// TODO: ASSERT(string1);
95
	// TODO: ASSERT(string2);
96
	return 0;
97
}
98
 
99
//===========================================================================
9 tristanc 100
extern int SStrCmpI(char const* string1, char const* string2, DWORD maxchars)
3 tristanc 101
{
102
	// TODO: ASSERT(string1);
103
	// TODO: ASSERT(string2);
104
	return 0;
105
}
106
 
107
//===========================================================================
9 tristanc 108
inline DWORD SStrLen(char const* string)
3 tristanc 109
{
110
	// TODO: ASSERT(string);
111
 
112
	char const* i;
113
	for (i = string; *i; ++i);
9 tristanc 114
	return static_cast<DWORD>(i - string);
3 tristanc 115
}
116
 
117
//===========================================================================
9 tristanc 118
inline DWORD SStrLen(unsigned short const* string)
3 tristanc 119
{
120
	// TODO: ASSERT(string);
121
 
122
	unsigned short const* i;
123
	for (i = string; *i; ++i);
9 tristanc 124
	return static_cast<DWORD>(i - string);
3 tristanc 125
}
126
 
127
//===========================================================================
128
void SStrLower(char* string)
129
{
130
	// TODO: ASSERT(string);
131
	while(*string)
132
	{
133
		*string = ToLower(*string);
134
		++string;
135
	}
136
}
137
 
138
//===========================================================================
139
void SStrUpper(char* string)
140
{
141
	// TODO: ASSERT(string);
142
	while(*string)
143
	{
144
		*string = ToUpper(*string);
145
		++string;
146
	}
147
}