MCPcopy Create free account
hub / github.com/AutoHotkey/AutoHotkey / TypeOfToken

Function TypeOfToken

source/script2.cpp:17183–17206  ·  view source on GitHub ↗

TypeOfToken: Similar result to TokenIsPureNumeric, but may return SYM_OBJECT.

Source from the content-addressed store, hash-verified

17181
17182// TypeOfToken: Similar result to TokenIsPureNumeric, but may return SYM_OBJECT.
17183SymbolType TypeOfToken(ExprTokenType &aToken)
17184{
17185 switch (aToken.symbol)
17186 {
17187 case SYM_VAR:
17188 switch (aToken.var->IsPureNumericOrObject())
17189 {
17190 case VAR_ATTRIB_IS_INT64: return SYM_INTEGER;
17191 case VAR_ATTRIB_IS_DOUBLE: return SYM_FLOAT;
17192 case VAR_ATTRIB_IS_OBJECT: return SYM_OBJECT;
17193 }
17194 return SYM_STRING;
17195 default: // Providing a default case produces smaller code on release builds as the compiler can omit the other symbol checks.
17196#ifdef _DEBUG
17197 MsgBox(_T("DEBUG: Unhandled symbol type."));
17198#endif
17199 case SYM_STRING:
17200 case SYM_INTEGER:
17201 case SYM_FLOAT:
17202 case SYM_OBJECT:
17203 case SYM_MISSING:
17204 return aToken.symbol;
17205 }
17206}
17207
17208
17209

Callers 4

ValueBaseMethod · 0.85
BIF_DECLFunction · 0.85
TokenTypeStringFunction · 0.85
TokenToVarTypeFunction · 0.85

Calls 4

MsgBoxFunction · 0.85
IsNumericFunction · 0.85
IsPureNumericOrObjectMethod · 0.80
IsNumericMethod · 0.80

Tested by

no test coverage detected