===========================================================================
| 802 | |
| 803 | //=========================================================================== |
| 804 | const char * ParserFindToken( const char *pSrc, const TokenTable_t *aTokens, const int nTokens, ArgToken_e * pToken_ ) |
| 805 | { |
| 806 | if (! pSrc) |
| 807 | return NULL; |
| 808 | |
| 809 | const char *pName = NULL; |
| 810 | int iToken; |
| 811 | |
| 812 | // Look ahead for: //, <=, >=, != |
| 813 | for (iToken = _TOKEN_FLAG_MULTI; iToken < NUM_TOKENS; iToken++ ) |
| 814 | { |
| 815 | pName = & (g_aTokens[ iToken ].sToken[0]); |
| 816 | if ((pSrc[0] == pName[ 0 ]) && |
| 817 | (pSrc[1] == pName[ 1 ])) |
| 818 | { |
| 819 | *pToken_ = g_aTokens[ iToken ].eToken; |
| 820 | return pSrc + 2; |
| 821 | } |
| 822 | } |
| 823 | |
| 824 | const TokenTable_t *pToken = aTokens; |
| 825 | |
| 826 | for (iToken = 0; iToken < _TOKEN_FLAG_MULTI; iToken++ ) |
| 827 | { |
| 828 | pName = & (pToken->sToken[0]); |
| 829 | if (*pSrc == *pName) |
| 830 | { |
| 831 | if ( pToken_ ) |
| 832 | { |
| 833 | *pToken_ = (ArgToken_e) iToken; |
| 834 | } |
| 835 | return pSrc + 1; |
| 836 | } |
| 837 | pToken++; |
| 838 | } |
| 839 | return NULL; |
| 840 | } |
| 841 | |
| 842 | |
| 843 | //=========================================================================== |
no outgoing calls
no test coverage detected