MCPcopy Create free account
hub / github.com/AstroImageJ/astroimagej / addToken

Method addToken

ij/src/main/java/ij/macro/Tokenizer.java:156–190  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

154 }
155
156 final void addToken() {
157 int tok = token;
158 switch (token) {
159 case WORD:
160 Symbol symbol = pgm.lookupWord(tokenString);
161 if (symbol!=null) {
162 int type = symbol.getFunctionType();
163 if (type==0) {
164 tok = symbol.type;
165 switch (tok) {
166 case FUNCTION: pgm.hasFunctions=true; break;
167 case VAR: pgm.hasVars=true; break;
168 case MACRO: pgm.macroCount++; break;
169 }
170 } else
171 tok = type;
172 tok += pgm.symTabLoc<<TOK_SHIFT;
173 } else {
174 pgm.addSymbol(new Symbol(token, tokenString));
175 tok += pgm.stLoc<<TOK_SHIFT;
176 }
177 break;
178 case STRING_CONSTANT:
179 pgm.addSymbol(new Symbol(token, tokenString));
180 tok += pgm.stLoc<<TOK_SHIFT;
181 break;
182 case NUMBER:
183 pgm.addSymbol(new Symbol(tokenValue));
184 tok += pgm.stLoc<<TOK_SHIFT;
185 break;
186 default:
187 break;
188 }
189 pgm.addToken(tok, lineNumber);
190 }
191
192 double getHexConstant() {
193 try {

Callers 1

tokenizeMethod · 0.95

Calls 3

getFunctionTypeMethod · 0.95
lookupWordMethod · 0.80
addSymbolMethod · 0.80

Tested by

no test coverage detected