Page Speed Optimization Libraries  1.13.35.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Types | Public Member Functions | Static Public Member Functions | Friends | List of all members
net_instaweb::HtmlName Class Reference

#include "html_name.h"

Classes

class  Iterator
 

Public Types

enum  Keyword {
  kXml, kA, kAbbr, kAction,
  kAddress, kAlt, kAmp, kArea,
  kArticle, kAs, kAside, kAsync,
  kAudio, kAutocomplete, kAutofocus, kAutoplay,
  kB, kBackground, kBase, kBdi,
  kBdo, kBlockquote, kBody, kBr,
  kButton, kCaption, kCharset, kChecked,
  kCite, kClass, kCode, kCol,
  kColgroup, kColspan, kCommand, kContent,
  kControls, kData, kDatalist, kDataActualHeight,
  kDataActualWidth, kDataMobileRole, kDataPagespeedFlushStyle, kDataPagespeedHighResSrc,
  kDataPagespeedHighResSrcset, kDataPagespeedHref, kDataPagespeedInlineSrc, kDataPagespeedLazySrc,
  kDataPagespeedLazySrcset, kDataPagespeedLowResSrc, kDataPagespeedLscExpiry, kDataPagespeedLscHash,
  kDataPagespeedLscUrl, kDataPagespeedNoDefer, kDataPagespeedNoTransform, kDataPagespeedOrigIndex,
  kDataPagespeedOrigSrc, kDataPagespeedOrigType, kDataPagespeedPrioritize, kDataPagespeedResponsiveTemp,
  kDataPagespeedSize, kDataPagespeedUrlHash, kDataSrc, kDd,
  kDeclare, kDefaultchecked, kDefaultselected, kDefer,
  kDel, kDetails, kDfn, kDir,
  kDisabled, kDisplay, kDiv, kDl,
  kDt, kEm, kEmbed, kEnctype,
  kEvent, kFieldset, kFont, kFooter,
  kFor, kForm, kFormaction, kFormnovalidate,
  kFrame, kFrameborder, kH1, kH2,
  kH3, kH4, kH5, kH6,
  kHead, kHeader, kHeight, kHgroup,
  kHr, kHref, kHtml, kHttpEquiv,
  kI, kIcon, kId, kIframe,
  kImg, kIndeterminate, kIns, kInput,
  kIsmap, kItemProp, kKbd, kKeygen,
  kKeytype, kLang, kLanguage, kLegend,
  kLi, kLink, kLongdesc, kLoop,
  kMain, kManifest, kMap, kMark,
  kMarquee, kMedia, kMenu, kMeta,
  kMethod, kMultiple, kMuted, kName,
  kNav, kNoembed, kNoframes, kNohref,
  kNoresize, kNoscript, kNovalidate, kObject,
  kOl, kOnclick, kOnerror, kOnload,
  kOpen, kOptgroup, kOption, kOther,
  kP, kPagespeedIframe, kPagespeedNoDefer, kPagespeedNoTransform,
  kParam, kPoster, kPre, kProfile,
  kQ, kReadonly, kRel, kRequired,
  kReversed, kRole, kRowspan, kRp,
  kRt, kRuby, kS, kSamp,
  kScoped, kScript, kScrolling, kSeamless,
  kSection, kSelect, kSelected, kShape,
  kSmall, kSource, kSpan, kSrc,
  kSrcset, kStrong, kStyle, kSub,
  kTable, kTag, kTbody, kTd,
  kTest, kTextarea, kTfoot, kTh,
  kThead, kTime, kTitle, kTr,
  kTrack, kType, kU, kUl,
  kValue, kValuetype, kVar, kVideo,
  kWbr, kWidth, kWrap, kXmp,
  kNotAKeyword
}
 

Public Member Functions

Keyword keyword () const
 HtmlName's should be normally constructed using HtmlParse::MakeName. More...
 
StringPiece value () const
 Return the atom string, which may not be case folded.
 

Static Public Member Functions

static int num_keywords ()
 
static Keyword Lookup (const StringPiece &name)
 

Friends

class HtmlNameTest
 
class HtmlParse
 

Detailed Description

HTML names are case insensitive. However, in the parser, we keep the original parsed case of the name, in addition to the html keyword enumeration, if any. Thus for both tags and attribute names, we have an enum representation which is used in filters for scanning, plus we have the original string representation.

Member Enumeration Documentation

We keep both attribute names and tag names in the same space for convenience. This list must be kept in alpha-order and in sync with the static array in html_name.cc.

Note that this list does not need to cover all HTML keywords – only the ones that we are interested in for rewriting.

Enumerator
kXml 

?Xml

Member Function Documentation

Keyword net_instaweb::HtmlName::keyword ( ) const
inline

HtmlName's should be normally constructed using HtmlParse::MakeName.

Returns the keyword enumeration for this HTML Name. Note that keyword lookup is case-insensitive.


The documentation for this class was generated from the following file: