static void parseInherit (tokenInfo *const token) { Assert (isKeyword (token, KEYWORD_inherit)); readToken (token); while (isType (token, TOKEN_IDENTIFIER)) { parseType (token); if (isType (token, TOKEN_KEYWORD)) { switch (token->keyword) /* check for feature adaptation */ { case KEYWORD_rename: parseRename (token); case KEYWORD_export: case KEYWORD_undefine: case KEYWORD_redefine: case KEYWORD_select: if (findKeyword (token, KEYWORD_end)) readToken (token); break; case KEYWORD_end: readToken (token); break; default: break; } } if (isType (token, TOKEN_SEMICOLON)) readToken (token); } }
static void parseInherit (tokenInfo *const token) { Assert (isKeyword (token, KEYWORD_inherit)); #ifdef TYPE_REFERENCE_TOOL readToken (token); while (isType (token, TOKEN_IDENTIFIER)) { parseType (token); if (isType (token, TOKEN_KEYWORD)) { switch (token->keyword) /* check for feature adaptation */ { case KEYWORD_rename: case KEYWORD_export: case KEYWORD_undefine: case KEYWORD_redefine: case KEYWORD_select: findKeyword (token, KEYWORD_end); readToken (token); default: break; } } } #else readToken (token); while (isType (token, TOKEN_IDENTIFIER)) { parseType (token); switch (token->keyword) /* check for feature adaptation */ { case KEYWORD_rename: parseRename (token); if (isKeyword (token, KEYWORD_end)) readToken (token); break; case KEYWORD_export: case KEYWORD_undefine: case KEYWORD_redefine: case KEYWORD_select: findKeyword (token, KEYWORD_end); readToken (token); break; case KEYWORD_end: readToken (token); break; default: break; } } #endif }