#include "html_token.hpp"
#include
const char* TOKEN_TO_NAME_MAP[HtmlTokenType_Length] = {
"Text",
"Start Tag",
"End Tag",
"Attribute",
"EOF",
"Character"
};
void HtmlToken::print() {
const char* name = TOKEN_TO_NAME_MAP[type];
switch (type) {
case HtmlTokenType_Character:
logger_info("%s, %c", name, character_token);
break;
case HtmlTokenType_StartTag:
case HtmlTokenType_EndTag:
logger_info("%s, %s", name, tag_name.c_str());
break;
default:
logger_info("%s", name);
}
}
void HtmlToken::reset() {
type = HtmlTokenType_None;
tag_name.clear();
}