#include "HTMLEntity.h"
StringMapCI HTMLEntity::m_entities; //entity lookup ("e; etc.)
//entities
HTMLEntity HTMLEntity::entity_quot("quot", 34,"quotation mark = APL quote");
HTMLEntity HTMLEntity::entity_amp("amp", 38,"ampersand");
HTMLEntity HTMLEntity::entity_lt("lt", 60,"less-than sign");
HTMLEntity HTMLEntity::entity_gt("gt", 62,"greater-than sign");
HTMLEntity HTMLEntity::entity_OElig("OElig", 338,"Latin capital ligature OE");
HTMLEntity HTMLEntity::entity_oelig("oelig", 339,"Latin small ligature oe");
HTMLEntity HTMLEntity::entity_Scaron("Scaron", 352,"Latin capital letter S with caron");
HTMLEntity HTMLEntity::entity_scaron("scaron", 353,"Latin small letter s with caron");
HTMLEntity HTMLEntity::entity_Yuml("Yuml", 376,"Latin capital letter Y with diaeresis");
HTMLEntity HTMLEntity::entity_circ("circ", 710,"modifier letter circumflex accent");
HTMLEntity HTMLEntity::entity_tilde("tilde", 732,"small tilde");
HTMLEntity HTMLEntity::entity_ensp("ensp", 8194,"en space");
HTMLEntity HTMLEntity::entity_emsp("emsp", 8195,"em space");
HTMLEntity HTMLEntity::entity_thinsp("thinsp", 8201,"thin space");
HTMLEntity HTMLEntity::entity_zwnj("zwnj", 8204,"zero width non-joiner");
HTMLEntity HTMLEntity::entity_zwj("zwj", 8205,"zero width joiner");
HTMLEntity HTMLEntity::entity_lrm("lrm", 8206,"left-to-right mark");
HTMLEntity HTMLEntity::entity_rlm("rlm", 8207,"right-to-left mark");
HTMLEntity HTMLEntity::entity_ndash("ndash", 8211,"en dash");
HTMLEntity HTMLEntity::entity_mdash("mdash", 8212,"em dash");
HTMLEntity HTMLEntity::entity_lsquo("lsquo", 8216,"left single quotation mark");
HTMLEntity HTMLEntity::entity_rsquo("rsquo", 8217,"right single quotation mark");
HTMLEntity HTMLEntity::entity_sbquo("sbquo", 8218,"single low-9 quotation mark");
HTMLEntity HTMLEntity::entity_ldquo("ldquo", 8220,"left double quotation mark");
HTMLEntity HTMLEntity::entity_rdquo("rdquo", 8221,"right double quotation mark");
HTMLEntity HTMLEntity::entity_bdquo("bdquo", 8222,"double low-9 quotation mark");
HTMLEntity HTMLEntity::entity_dagger("dagger", 8224,"dagger");
HTMLEntity HTMLEntity::entity_Dagger("Dagger", 8225,"double dagger");
HTMLEntity HTMLEntity::entity_permil("permil", 8240,"per mille sign");
HTMLEntity HTMLEntity::entity_lsaquo("lsaquo", 8249,"single left-pointing angle quotation mark");
HTMLEntity HTMLEntity::entity_rsaquo("rsaquo", 8250,"single right-pointing angle quotation mark");
HTMLEntity HTMLEntity::entity_euro("euro", 8364,"euro sign");
HTMLEntity HTMLEntity::entity_nbsp("nbsp", 160,"no-break space = non-breaking space");
HTMLEntity HTMLEntity::entity_iexcl("iexcl", 161,"inverted exclamation mark");
HTMLEntity HTMLEntity::entity_cent("cent", 162,"cent sign");
HTMLEntity HTMLEntity::entity_pound("pound", 163,"pound sign");
HTMLEntity HTMLEntity::entity_curren("curren", 164,"currency sign");
HTMLEntity HTMLEntity::entity_yen("yen", 165,"yen sign = yuan sign");
HTMLEntity HTMLEntity::entity_brvbar("brvbar", 166,"broken bar = broken vertical bar");
HTMLEntity HTMLEntity::entity_sect("sect", 167,"section sign");
HTMLEntity HTMLEntity::entity_uml("uml", 168,"diaeresis = spacing diaeresis");
HTMLEntity HTMLEntity::entity_copy("copy", 169,"copyright sign");
HTMLEntity HTMLEntity::entity_ordf("ordf", 170,"feminine ordinal indicator");
HTMLEntity HTMLEntity::entity_laquo("laquo", 171,"left-pointing double angle quotation mark = left pointing guillemet");
HTMLEntity HTMLEntity::entity_not("not", 172,"not sign");
HTMLEntity HTMLEntity::entity_shy("shy", 173,"soft hyphen = discretionary hyphen");
HTMLEntity HTMLEntity::entity_reg("reg", 174,"registered sign = registered trade mark sign");
HTMLEntity HTMLEntity::entity_macr("macr", 175,"macron = spacing macron = overline = APL overbar");
HTMLEntity HTMLEntity::entity_deg("deg", 176,"degree sign");
HTMLEntity HTMLEntity::entity_plusmn("plusmn", 177,"plus-minus sign = plus-or-minus sign");
HTMLEntity HTMLEntity::entity_sup2("sup2", 178,"superscript two = superscript digit two = squared");
HTMLEntity HTMLEntity::entity_sup3("sup3", 179,"superscript three = superscript digit three = cubed");
HTMLEntity HTMLEntity::entity_acute("acute", 180,"acute accent = spacing acute");
HTMLEntity HTMLEntity::entity_micro("micro", 181,"micro sign");
HTMLEntity HTMLEntity::entity_para("para", 182,"pilcrow sign = paragraph sign");
HTMLEntity HTMLEntity::entity_middot("middot", 183,"middle dot = Georgian comma = Greek middle dot");
HTMLEntity HTMLEntity::entity_cedil("cedil", 184,"cedilla = spacing cedilla");
HTMLEntity HTMLEntity::entity_sup1("sup1", 185,"superscript one = superscript digit one");
HTMLEntity HTMLEntity::entity_ordm("ordm", 186,"masculine ordinal indicator");
HTMLEntity HTMLEntity::entity_raquo("raquo", 187,"right-pointing double angle quotation mark = right pointing guillemet");
HTMLEntity HTMLEntity::entity_frac14("frac14", 188,"vulgar fraction one quarter = fraction one quarter");
HTMLEntity HTMLEntity::entity_frac12("frac12", 189,"vulgar fraction one half = fraction one half");
HTMLEntity HTMLEntity::entity_frac34("frac34", 190,"vulgar fraction three quarters = fraction three quarters");
HTMLEntity HTMLEntity::entity_iquest("iquest", 191,"inverted question mark = turned question mark");
HTMLEntity HTMLEntity::entity_Agrave("Agrave", 192,"Latin capital letter A with grave = Latin capital letter A grave");
HTMLEntity HTMLEntity::entity_Aacute("Aacute", 193,"Latin capital letter A with acute");
HTMLEntity HTMLEntity::entity_Acirc("Acirc", 194,"Latin capital letter A with circumflex");
HTMLEntity HTMLEntity::entity_Atilde("Atilde", 195,"Latin capital letter A with tilde");
HTMLEntity HTMLEntity::entity_Auml("Auml", 196,"Latin capital letter A with diaeresis");
HTMLEntity HTMLEntity::entity_Aring("Aring", 197,"Latin capital letter A with ring above = Latin capital letter A ring");
HTMLEntity HTMLEntity::entity_AElig("AElig", 198,"Latin capital letter AE = Latin capital ligature AE");
HTMLEntity HTMLEntity::entity_Ccedil("Ccedil", 199,"Latin capital letter C with cedilla");
HTMLEntity HTMLEntity::entity_Egrave("Egrave", 200,"Latin capital letter E with grave");
HTMLEntity HTMLEntity::entity_Eacute("Eacute", 201,"Latin capital letter E with acute");
HTMLEntity HTMLEntity::entity_Ecirc("Ecirc", 202,"Latin capital letter E with circumflex");
HTMLEntity HTMLEntity::entity_Euml("Euml", 203,"Latin capital letter E with diaeresis");
HTMLEntity HTMLEntity::entity_Igrave("Igrave", 204,"Latin capital letter I with grave");
HTMLEntity HTMLEntity::entity_Iacute("Iacute", 205,"Latin capital letter I with acute");
HTMLEntity HTMLEntity::entity_Icirc("Icirc", 206,"Latin capital letter I with circumflex");
HTMLEntity HTMLEntity::entity_Iuml("Iuml", 207,"Latin capital letter I with diaeresis");
HTMLEntity HTMLEntity::entity_ETH("ETH", 208,"Latin capital letter ETH");
HTMLEntity HTMLEntity::entity_Ntilde("Ntilde", 209,"Latin capital letter N with tilde");
HTMLEntity HTMLEntity::entity_Ograve("Ograve", 210,"Latin capital letter O with grave");
HTMLEntity HTMLEntity::entity_Oacute("Oacute", 211,"Latin capital letter O with acute");
HTMLEntity HTMLEntity::entity_Ocirc("Ocirc", 212,"Latin capital letter O with circumflex");
HTMLEntity HTMLEntity::entity_Otilde("Otilde", 213,"Latin capital letter O with tilde");
HTMLEntity HTMLEntity::entity_Ouml("Ouml", 214,"Latin capital letter O with diaeresis");
HTMLEntity HTMLEntity::entity_times("times", 215,"multiplication sign");
HTMLEntity HTMLEntity::entity_Oslash("Oslash", 216,"Latin capital letter O with stroke = Latin capital letter O slash");
HTMLEntity HTMLEntity::entity_Ugrave("Ugrave", 217,"Latin capital letter U with grave");
HTMLEntity HTMLEntity::entity_Uacute("Uacute", 218,"Latin capital letter U with acute");
HTMLEntity HTMLEntity::entity_Ucirc("Ucirc", 219,"Latin capital letter U with circumflex");
HTMLEntity HTMLEntity::entity_Uuml("Uuml", 220,"Latin capital letter U with diaeresis");
HTMLEntity HTMLEntity::entity_Yacute("Yacute", 221,"Latin capital letter Y with acute");
HTMLEntity HTMLEntity::entity_THORN("THORN", 222,"Latin capital letter THORN");
HTMLEntity HTMLEntity::entity_szlig("szlig", 223,"Latin small letter sharp s = ess-zed");
HTMLEntity HTMLEntity::entity_agrave("agrave", 224,"Latin small letter a with grave = Latin small letter a grave");
HTMLEntity HTMLEntity::entity_aacute("aacute", 225,"Latin small letter a with acute");
HTMLEntity HTMLEntity::entity_acirc("acirc", 226,"Latin small letter a with circumflex");
HTMLEntity HTMLEntity::entity_atilde("atilde", 227,"Latin small letter a with tilde");
HTMLEntity HTMLEntity::entity_auml("auml", 228,"Latin small letter a with diaeresis");
HTMLEntity HTMLEntity::entity_aring("aring", 229,"Latin small letter a with ring above = Latin small letter a ring");
HTMLEntity HTMLEntity::entity_aelig("aelig", 230,"Latin small letter ae = Latin small ligature ae");
HTMLEntity HTMLEntity::entity_ccedil("ccedil", 231,"Latin small letter c with cedilla");
HTMLEntity HTMLEntity::entity_egrave("egrave", 232,"Latin small letter e with grave");
HTMLEntity HTMLEntity::entity_eacute("eacute", 233,"Latin small letter e with acute");
HTMLEntity HTMLEntity::entity_ecirc("ecirc", 234,"Latin small letter e with circumflex");
HTMLEntity HTMLEntity::entity_euml("euml", 235,"Latin small letter e with diaeresis");
HTMLEntity HTMLEntity::entity_igrave("igrave", 236,"Latin small letter i with grave");
HTMLEntity HTMLEntity::entity_iacute("iacute", 237,"Latin small letter i with acute");
HTMLEntity HTMLEntity::entity_icirc("icirc", 238,"Latin small letter i with circumflex");
HTMLEntity HTMLEntity::entity_iuml("iuml", 239,"Latin small letter i with diaeresis");
HTMLEntity HTMLEntity::entity_eth("eth", 240,"Latin small letter eth");
HTMLEntity HTMLEntity::entity_ntilde("ntilde", 241,"Latin small letter n with tilde");
HTMLEntity HTMLEntity::entity_ograve("ograve", 242,"Latin small letter o with grave");
HTMLEntity HTMLEntity::entity_oacute("oacute", 243,"Latin small letter o with acute");
HTMLEntity HTMLEntity::entity_ocirc("ocirc", 244,"Latin small letter o with circumflex");
HTMLEntity HTMLEntity::entity_otilde("otilde", 245,"Latin small letter o with tilde");
HTMLEntity HTMLEntity::entity_ouml("ouml", 246,"Latin small letter o with diaeresis");
HTMLEntity HTMLEntity::entity_divide("divide", 247,"division sign");
HTMLEntity HTMLEntity::entity_oslash("oslash", 248,"Latin small letter o with stroke = Latin small letter o slash");
HTMLEntity HTMLEntity::entity_ugrave("ugrave", 249,"Latin small letter u with grave");
HTMLEntity HTMLEntity::entity_uacute("uacute", 250,"Latin small letter u with acute");
HTMLEntity HTMLEntity::entity_ucirc("ucirc", 251,"Latin small letter u with circumflex");
HTMLEntity HTMLEntity::entity_uuml("uuml", 252,"Latin small letter u with diaeresis");
HTMLEntity HTMLEntity::entity_yacute("yacute", 253,"Latin small letter y with acute");
HTMLEntity HTMLEntity::entity_thorn("thorn", 254,"Latin small letter thorn");
HTMLEntity HTMLEntity::entity_yuml("yuml", 255,"Latin small letter y with diaeresis");
HTMLEntity HTMLEntity::entity_fnof("fnof", 402,"Latin small f with hook = function = florin");
HTMLEntity HTMLEntity::entity_Alpha("Alpha", 913,"Greek capital letter alpha");
HTMLEntity HTMLEntity::entity_Beta("Beta", 914,"Greek capital letter beta");
HTMLEntity HTMLEntity::entity_Gamma("Gamma", 915,"Greek capital letter gamma");
HTMLEntity HTMLEntity::entity_Delta("Delta", 916,"Greek capital letter delta");
HTMLEntity HTMLEntity::entity_Epsilon("Epsilon", 917,"Greek capital letter epsilon");
HTMLEntity HTMLEntity::entity_Zeta("Zeta", 918,"Greek capital letter zeta");
HTMLEntity HTMLEntity::entity_Eta("Eta", 919,"Greek capital letter eta");
HTMLEntity HTMLEntity::entity_Theta("Theta", 920,"Greek capital letter theta");
HTMLEntity HTMLEntity::entity_Iota("Iota", 921,"Greek capital letter iota");
HTMLEntity HTMLEntity::entity_Kappa("Kappa", 922,"Greek capital letter kappa");
HTMLEntity HTMLEntity::entity_Lambda("Lambda", 923,"Greek capital letter lambda");
HTMLEntity HTMLEntity::entity_Mu("Mu", 924,"Greek capital letter mu");
HTMLEntity HTMLEntity::entity_Nu("Nu", 925,"Greek capital letter nu");
HTMLEntity HTMLEntity::entity_Xi("Xi", 926,"Greek capital letter xi");
HTMLEntity HTMLEntity::entity_Omicron("Omicron", 927,"Greek capital letter omicron");
HTMLEntity HTMLEntity::entity_Pi("Pi", 928,"Greek capital letter pi");
HTMLEntity HTMLEntity::entity_Rho("Rho", 929,"Greek capital letter rho");
HTMLEntity HTMLEntity::entity_Sigma("Sigma", 931,"Greek capital letter sigma");
HTMLEntity HTMLEntity::entity_Tau("Tau", 932,"Greek capital letter tau");
HTMLEntity HTMLEntity::entity_Upsilon("Upsilon", 933,"Greek capital letter upsilon");
HTMLEntity HTMLEntity::entity_Phi("Phi", 934,"Greek capital letter phi");
HTMLEntity HTMLEntity::entity_Chi("Chi", 935,"Greek capital letter chi");
HTMLEntity HTMLEntity::entity_Psi("Psi", 936,"Greek capital letter psi");
HTMLEntity HTMLEntity::entity_Omega("Omega", 937,"Greek capital letter omega");
HTMLEntity HTMLEntity::entity_alpha("alpha", 945,"Greek small letter alpha");
HTMLEntity HTMLEntity::entity_beta("beta", 946,"Greek small letter beta");
HTMLEntity HTMLEntity::entity_gamma("gamma", 947,"Greek small letter gamma");
HTMLEntity HTMLEntity::entity_delta("delta", 948,"Greek small letter delta");
HTMLEntity HTMLEntity::entity_epsilon("epsilon", 949,"Greek small letter epsilon");
HTMLEntity HTMLEntity::entity_zeta("zeta", 950,"Greek small letter zeta");
HTMLEntity HTMLEntity::entity_eta("eta", 951,"Greek small letter eta");
HTMLEntity HTMLEntity::entity_theta("theta", 952,"Greek small letter theta");
HTMLEntity HTMLEntity::entity_iota("iota", 953,"Greek small letter iota");
HTMLEntity HTMLEntity::entity_kappa("kappa", 954,"Greek small letter kappa");
HTMLEntity HTMLEntity::entity_lambda("lambda", 955,"Greek small letter lambda");
HTMLEntity HTMLEntity::entity_mu("mu", 956,"Greek small letter mu");
HTMLEntity HTMLEntity::entity_nu("nu", 957,"Greek small letter nu");
HTMLEntity HTMLEntity::entity_xi("xi", 958,"Greek small letter xi");
HTMLEntity HTMLEntity::entity_omicron("omicron", 959,"Greek small letter omicron");
HTMLEntity HTMLEntity::entity_pi("pi", 960,"Greek small letter pi");
HTMLEntity HTMLEntity::entity_rho("rho", 961,"Greek small letter rho");
HTMLEntity HTMLEntity::entity_sigmaf("sigmaf", 962,"Greek small letter final sigma");
HTMLEntity HTMLEntity::entity_sigma("sigma", 963,"Greek small letter sigma");
HTMLEntity HTMLEntity::entity_tau("tau", 964,"Greek small letter tau");
HTMLEntity HTMLEntity::entity_upsilon("upsilon", 965,"Greek small letter upsilon");
HTMLEntity HTMLEntity::entity_phi("phi", 966,"Greek small letter phi");
HTMLEntity HTMLEntity::entity_chi("chi", 967,"Greek small letter chi");
HTMLEntity HTMLEntity::entity_psi("psi", 968,"Greek small letter psi");
HTMLEntity HTMLEntity::entity_omega("omega", 969,"Greek small letter omega");
HTMLEntity HTMLEntity::entity_thetasym("thetasym", 977,"Greek small letter theta symbol");
HTMLEntity HTMLEntity::entity_upsih("upsih", 978,"Greek upsilon with hook symbol");
HTMLEntity HTMLEntity::entity_piv("piv", 982,"Greek pi symbol");
HTMLEntity HTMLEntity::entity_bull("bull", 8226,"bullet = black small circle");
HTMLEntity HTMLEntity::entity_hellip("hellip", 8230,"horizontal ellipsis = three dot leader");
HTMLEntity HTMLEntity::entity_prime("prime", 8242,"prime = minutes = feet");
HTMLEntity HTMLEntity::entity_Prime("Prime", 8243,"double prime = seconds = inches");
HTMLEntity HTMLEntity::entity_oline("oline", 8254,"overline = spacing overscore");
HTMLEntity HTMLEntity::entity_frasl("frasl", 8260,"fraction slash");
HTMLEntity HTMLEntity::entity_weierp("weierp", 8472,"script capital P = power set = Weierstrass p");
HTMLEntity HTMLEntity::entity_image("image", 8465,"blackletter capital I = imaginary part");
HTMLEntity HTMLEntity::entity_real("real", 8476,"blackletter capital R = real part symbol");
HTMLEntity HTMLEntity::entity_trade("trade", 8482,"trade mark sign");
HTMLEntity HTMLEntity::entity_alefsym("alefsym", 8501,"alef symbol = first transfinite cardinal");
HTMLEntity HTMLEntity::entity_larr("larr", 8592,"leftwards arrow");
HTMLEntity HTMLEntity::entity_uarr("uarr", 8593,"upwards arrow");
HTMLEntity HTMLEntity::entity_rarr("rarr", 8594,"rightwards arrow");
HTMLEntity HTMLEntity::entity_darr("darr", 8595,"downwards arrow");
HTMLEntity HTMLEntity::entity_harr("harr", 8596,"left right arrow");
HTMLEntity HTMLEntity::entity_crarr("crarr", 8629,"downwards arrow with corner leftwards = carriage return");
HTMLEntity HTMLEntity::entity_lArr("lArr", 8656,"leftwards double arrow");
HTMLEntity HTMLEntity::entity_uArr("uArr", 8657,"upwards double arrow");
HTMLEntity HTMLEntity::entity_rArr("rArr", 8658,"rightwards double arrow");
HTMLEntity HTMLEntity::entity_dArr("dArr", 8659,"downwards double arrow");
HTMLEntity HTMLEntity::entity_hArr("hArr", 8660,"left right double arrow");
HTMLEntity HTMLEntity::entity_forall("forall", 8704,"for all");
HTMLEntity HTMLEntity::entity_part("part", 8706,"partial differential");
HTMLEntity HTMLEntity::entity_exist("exist", 8707,"there exists");
HTMLEntity HTMLEntity::entity_empty("empty", 8709,"empty set = null set = diameter");
HTMLEntity HTMLEntity::entity_nabla("nabla", 8711,"nabla = backward difference");
HTMLEntity HTMLEntity::entity_isin("isin", 8712,"element of");
HTMLEntity HTMLEntity::entity_notin("notin", 8713,"not an element of");
HTMLEntity HTMLEntity::entity_ni("ni", 8715,"contains as member");
HTMLEntity HTMLEntity::entity_prod("prod", 8719,"n-ary product = product sign");
HTMLEntity HTMLEntity::entity_sum("sum", 8721,"n-ary sumation");
HTMLEntity HTMLEntity::entity_minus("minus", 8722,"minus sign");
HTMLEntity HTMLEntity::entity_lowast("lowast", 8727,"asterisk operator");
HTMLEntity HTMLEntity::entity_radic("radic", 8730,"square root = radical sign");
HTMLEntity HTMLEntity::entity_prop("prop", 8733,"proportional to");
HTMLEntity HTMLEntity::entity_infin("infin", 8734,"infinity");
HTMLEntity HTMLEntity::entity_ang("ang", 8736,"angle");
HTMLEntity HTMLEntity::entity_and("and", 8743,"logical and = wedge");
HTMLEntity HTMLEntity::entity_or("or", 8744,"logical or = vee");
HTMLEntity HTMLEntity::entity_cap("cap", 8745,"intersection = cap");
HTMLEntity HTMLEntity::entity_cup("cup", 8746,"union = cup");
HTMLEntity HTMLEntity::entity_int("int", 8747,"integral");
HTMLEntity HTMLEntity::entity_there4("there4", 8756,"therefore");
HTMLEntity HTMLEntity::entity_sim("sim", 8764,"tilde operator = varies with = similar to");
HTMLEntity HTMLEntity::entity_cong("cong", 8773,"approximately equal to");
HTMLEntity HTMLEntity::entity_asymp("asymp", 8776,"almost equal to = asymptotic to");
HTMLEntity HTMLEntity::entity_ne("ne", 8800,"not equal to");
HTMLEntity HTMLEntity::entity_equiv("equiv", 8801,"identical to");
HTMLEntity HTMLEntity::entity_le("le", 8804,"less-than or equal to");
HTMLEntity HTMLEntity::entity_ge("ge", 8805,"greater-than or equal to");
HTMLEntity HTMLEntity::entity_sub("sub", 8834,"subset of");
HTMLEntity HTMLEntity::entity_sup("sup", 8835,"superset of");
HTMLEntity HTMLEntity::entity_nsub("nsub", 8836,"not a subset of");
HTMLEntity HTMLEntity::entity_sube("sube", 8838,"subset of or equal to");
HTMLEntity HTMLEntity::entity_supe("supe", 8839,"superset of or equal to");
HTMLEntity HTMLEntity::entity_oplus("oplus", 8853,"circled plus = direct sum");
HTMLEntity HTMLEntity::entity_otimes("otimes", 8855,"circled times = vector product");
HTMLEntity HTMLEntity::entity_perp("perp", 8869,"up tack = orthogonal to = perpendicular");
HTMLEntity HTMLEntity::entity_sdot("sdot", 8901,"dot operator");
HTMLEntity HTMLEntity::entity_lceil("lceil", 8968,"left ceiling = APL upstile");
HTMLEntity HTMLEntity::entity_rceil("rceil", 8969,"right ceiling");
HTMLEntity HTMLEntity::entity_lfloor("lfloor", 8970,"left floor = APL downstile");
HTMLEntity HTMLEntity::entity_rfloor("rfloor", 8971,"right floor");
HTMLEntity HTMLEntity::entity_lang("lang", 9001,"left-pointing angle bracket = bra");
HTMLEntity HTMLEntity::entity_rang("rang", 9002,"right-pointing angle bracket = ket");
HTMLEntity HTMLEntity::entity_loz("loz", 9674,"lozenge");
HTMLEntity HTMLEntity::entity_spades("spades", 9824,"black spade suit");
HTMLEntity HTMLEntity::entity_clubs("clubs", 9827,"black club suit = shamrock");
HTMLEntity HTMLEntity::entity_hearts("hearts", 9829,"black heart suit = valentine");
HTMLEntity HTMLEntity::entity_diams("diams", 9830,"black diamond suit");
HTMLEntity::HTMLEntity(const char *_text, unsigned int _codepoint, const char *_description):
m_text(_text), m_codepoint(_codepoint), m_description(_description)
{
m_entities.insert(make_pair(m_text, this));
}
HTMLEntity *HTMLEntity::getentity(const char *entityStart) {
const char *entityEnd;
char c;
HTMLEntity *thisEntity = 0;
while (*entityStart == '&' || *entityStart == '#') entityStart++; //after & or # or to EOF
entityEnd = entityStart;
while ((c = *entityEnd) && isAlphaNumeric(c)) entityEnd++; //nearest space or ; or EOF
if (c) thisEntity = entity(entityStart, entityEnd); //found!
return thisEntity;
}
HTMLEntity *HTMLEntity::entity(const char *text) {
StringMapCI::const_iterator i;
i = m_entities.find(text);
return (i == m_entities.end() ? 0 : i->second);
}
HTMLEntity *HTMLEntity::entity(const char *textstart, const char *textfinish) {
char *endc = (char*) textfinish;
char c = *endc; *endc = 0;
HTMLEntity *t = entity(textstart);
*endc = c;
return t;
}