Manually reverted parts of d61eb9c893.

This commit is contained in:
Erik Verbruggen
2010-01-22 12:53:44 +01:00
parent 9de8f384ab
commit 58d06f520d
2 changed files with 13 additions and 105 deletions

View File

@@ -32,88 +32,27 @@
using namespace CPlusPlus; using namespace CPlusPlus;
static inline int classify2(const char *s) { static inline int classify2(const char *s) {
if (s[0] == 'N') { if (s[0] == 'i') {
if (s[1] == 'O') { if (s[1] == 'n') {
return Token_NO; return Token_in;
}
} }
else if (s[0] == 'i') { }
if (s[1] == 'd') { return Token_identifier;
return Token_id;
}
else if (s[1] == 'n') {
return Token_in;
}
}
return Token_identifier;
} }
static inline int classify3(const char *s) { static inline int classify3(const char *s) {
if (s[0] == 'I') { if (s[0] == 'o') {
if (s[1] == 'M') { if (s[1] == 'u') {
if (s[2] == 'P') { if (s[2] == 't') {
return Token_IMP; return Token_out;
} }
}
} }
else if (s[0] == 'N') { }
if (s[1] == 'i') { return Token_identifier;
if (s[2] == 'l') {
return Token_Nil;
}
}
}
else if (s[0] == 'S') {
if (s[1] == 'E') {
if (s[2] == 'L') {
return Token_SEL;
}
}
}
else if (s[0] == 'Y') {
if (s[1] == 'E') {
if (s[2] == 'S') {
return Token_YES;
}
}
}
else if (s[0] == 'n') {
if (s[1] == 'i') {
if (s[2] == 'l') {
return Token_nil;
}
}
}
else if (s[0] == 'o') {
if (s[1] == 'u') {
if (s[2] == 't') {
return Token_out;
}
}
}
return Token_identifier;
} }
static inline int classify4(const char *s) { static inline int classify4(const char *s) {
if (s[0] == '_') { if (s[0] == 'c') {
if (s[1] == 'c') {
if (s[2] == 'm') {
if (s[3] == 'd') {
return Token__cmd;
}
}
}
}
else if (s[0] == 'B') {
if (s[1] == 'O') {
if (s[2] == 'O') {
if (s[3] == 'L') {
return Token_BOOL;
}
}
}
}
else if (s[0] == 'c') {
if (s[1] == 'o') { if (s[1] == 'o') {
if (s[2] == 'p') { if (s[2] == 'p') {
if (s[3] == 'y') { if (s[3] == 'y') {
@@ -122,15 +61,6 @@ static inline int classify4(const char *s) {
} }
} }
} }
else if (s[0] == 's') {
if (s[1] == 'e') {
if (s[2] == 'l') {
if (s[3] == 'f') {
return Token_self;
}
}
}
}
return Token_identifier; return Token_identifier;
} }
@@ -157,17 +87,6 @@ static inline int classify5(const char *s) {
} }
} }
} }
else if (s[0] == 's') {
if (s[1] == 'u') {
if (s[2] == 'p') {
if (s[3] == 'e') {
if (s[4] == 'r') {
return Token_super;
}
}
}
}
}
return Token_identifier; return Token_identifier;
} }

View File

@@ -35,22 +35,11 @@
namespace CPlusPlus { namespace CPlusPlus {
enum { enum {
Token_NO,
Token_id,
Token_in, Token_in,
Token_YES,
Token_IMP,
Token_Nil,
Token_SEL,
Token_nil,
Token_out, Token_out,
Token__cmd,
Token_BOOL,
Token_copy, Token_copy,
Token_self,
Token_byref, Token_byref,
Token_inout, Token_inout,
Token_super,
Token_assign, Token_assign,
Token_bycopy, Token_bycopy,
Token_getter, Token_getter,