MCPcopy Create free account
hub / github.com/Singular/Singular / Tokenize

Function Tokenize

ppcc/src/pplex.cc:79–2170  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

77 goto pushtoken;
78
79bool Tokenize(SourceFile *source) {
80 Str *input = source->filedata;
81 const char *cursor = input->c_str();
82 const char *marker = NULL;
83 const char *ctxmarker = NULL;
84 bool done = false;
85 bool error = false;
86 TokenList *result = new TokenList();
87 Token token;
88 while (!done) {
89 const char *last = cursor;
90
91#line 92 "src/pplex.cc"
92{
93 unsigned char yych;
94 unsigned int yyaccept = 0;
95 yych = *cursor;
96 switch (yych) {
97 case 0x00: goto yy2;
98 case '\t':
99 case '\f':
100 case ' ': goto yy6;
101 case '\n': goto yy9;
102 case '\r': goto yy11;
103 case '!':
104 case '%':
105 case '^': goto yy12;
106 case '"': goto yy14;
107 case '#': goto yy15;
108 case '&': goto yy16;
109 case '\'': goto yy18;
110 case '(': goto yy19;
111 case ')': goto yy21;
112 case '*': goto yy23;
113 case '+': goto yy25;
114 case ',': goto yy26;
115 case '-': goto yy28;
116 case '.': goto yy29;
117 case '/': goto yy30;
118 case '0': goto yy31;
119 case '1':
120 case '2':
121 case '3':
122 case '4':
123 case '5':
124 case '6':
125 case '7':
126 case '8':
127 case '9': goto yy33;
128 case ':': goto yy35;
129 case ';': goto yy36;
130 case '<': goto yy38;
131 case '=': goto yy39;
132 case '>': goto yy41;
133 case '?':
134 case '~': goto yy42;
135 case 'A':
136 case 'B':

Callers 1

ReadSourceFunction · 0.85

Calls 4

InternFunction · 0.85
c_strMethod · 0.80
SFunction · 0.50
addMethod · 0.45

Tested by

no test coverage detected