stropmodule.c: use C isspace(c) to test for whitespace; add
whitespace variable to module dict.
This commit is contained in:
parent
df5638662d
commit
d05eb8b0fc
|
@ -27,6 +27,8 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||||
#include "allobjects.h"
|
#include "allobjects.h"
|
||||||
#include "modsupport.h"
|
#include "modsupport.h"
|
||||||
|
|
||||||
|
#include <ctype.h>
|
||||||
|
|
||||||
|
|
||||||
static object *
|
static object *
|
||||||
strop_split(self, args)
|
strop_split(self, args)
|
||||||
|
@ -47,12 +49,12 @@ strop_split(self, args)
|
||||||
i = 0;
|
i = 0;
|
||||||
while (i < len) {
|
while (i < len) {
|
||||||
while (i < len &&
|
while (i < len &&
|
||||||
((c = s[i]) == ' ' || c == '\t' || c == '\n')) {
|
((c = s[i]), isspace(c))) {
|
||||||
i = i+1;
|
i = i+1;
|
||||||
}
|
}
|
||||||
j = i;
|
j = i;
|
||||||
while (i < len &&
|
while (i < len &&
|
||||||
!((c = s[i]) == ' ' || c == '\t' || c == '\n')) {
|
!((c = s[i]), isspace(c))) {
|
||||||
i = i+1;
|
i = i+1;
|
||||||
}
|
}
|
||||||
if (j < i) {
|
if (j < i) {
|
||||||
|
@ -226,14 +228,14 @@ strop_strip(self, args)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
i = 0;
|
i = 0;
|
||||||
while (i < len && ((c = s[i]) == ' ' || c == '\t' || c == '\n')) {
|
while (i < len && ((c = s[i]), isspace(c))) {
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
|
||||||
j = len;
|
j = len;
|
||||||
do {
|
do {
|
||||||
j--;
|
j--;
|
||||||
} while (j >= i && ((c = s[j]) == ' ' || c == '\t' || c == '\n'));
|
} while (j >= i && ((c = s[j]), isspace(c)));
|
||||||
j++;
|
j++;
|
||||||
|
|
||||||
if (i == 0 && j == len) {
|
if (i == 0 && j == len) {
|
||||||
|
@ -245,8 +247,6 @@ strop_strip(self, args)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#include <ctype.h>
|
|
||||||
|
|
||||||
static object *
|
static object *
|
||||||
strop_lower(self, args)
|
strop_lower(self, args)
|
||||||
object *self; /* Not used */
|
object *self; /* Not used */
|
||||||
|
@ -370,5 +370,17 @@ static struct methodlist strop_methods[] = {
|
||||||
void
|
void
|
||||||
initstrop()
|
initstrop()
|
||||||
{
|
{
|
||||||
initmodule("strop", strop_methods);
|
object *m, *d, *s;
|
||||||
|
char buf[256];
|
||||||
|
int c, n;
|
||||||
|
m = initmodule("strop", strop_methods);
|
||||||
|
d = getmoduledict(m);
|
||||||
|
n = 0;
|
||||||
|
for (c = 1; c < 256; c++) {
|
||||||
|
if (isspace(c))
|
||||||
|
buf[n++] = c;
|
||||||
|
}
|
||||||
|
s = newsizedstringobject(buf, n);
|
||||||
|
dictinsert(d, "whitespace", s);
|
||||||
|
DECREF(s);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue