On Aug 22, 2012, at 15:56 , Dmitri Gribenko <[email protected]> wrote:

> +bool isHTMLTagName(StringRef Name) {
> +  return llvm::StringSwitch<bool>(Name)
> +      .Cases("em", "strong", true)
> +      .Cases("tt", "i", "b", "big", "small", true)
> +      .Cases("strike", "s", "u", "font", true)
> +      .Case("a", true)
> +      .Case("hr", true)
> +      .Cases("div", "span", true)
> +      .Cases("h1", "h2", "h3", true)
> +      .Cases("h4", "h5", "h6", true)
> +      .Case("code", true)
> +      .Case("blockquote", true)
> +      .Cases("sub", "sup", true)
> +      .Case("img", true)
> +      .Case("p", true)
> +      .Case("br", true)
> +      .Case("pre", true)
> +      .Cases("ins", "del", true)
> +      .Cases("ul", "ol", "li", true)
> +      .Cases("dl", "dt", "dd", true)
> +      .Cases("table", "caption", true)
> +      .Cases("thead", "tfoot", "tbody", true)
> +      .Cases("colgroup", "col", true)
> +      .Cases("tr", "th", "td", true)
> +      .Default(false);
> +}

This is going to be very slow (StringSwitch just chains the string 
comparisons). Maybe we should use a StringMap instead?
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to