paige 0.1.1

A simple HTML templating API, written in Rust.
Documentation
/// HTML attributes
#[derive(Clone)]
pub enum Attr {
   Accept,
   AcceptCharset,
   AccessKey,
   Action,
   Align,
   Alt,
   Async,
   AutoComplete,
   AutoFocus,
   AutoPlay,
   BackgroundColor,
   Border,
   Charset,
   Checked,
   Cite,
   Class,
   Color,
   Columns,
   ColumnSpan,
   Content,
   ContentEditable,
   Controls,
   Coords,
   Data,
   DateTime,
   Default_,
   Defer,
   Dir,
   DirName,
   Disabled,
   Download,
   Draggable,
   DropZone,
   EncodingType,
   For,
   Form,
   FormAction,
   Headers,
   Height,
   Hidden,
   High,
   Href,
   Hreflang,
   HttpEquivalent,
   Id,
   Identifier,
   IsMap,
   Kind,
   Label,
   Language,
   List,
   Loop,
   Low,
   Max,
   MaxLength,
   Media,
   Method,
   Min,
   Multiple,
   Muted,
   Name,
   NoValidate,
   OnAbort,
   OnAfterPrint,
   OnBeforePrint,
   OnBeforeUnload,
   OnBlur,
   OnCanPlay,
   OnCanPlayThrough,
   OnChange,
   OnClick,
   OnContextMenu,
   OnCopy,
   OnCueChange,
   OnCut,
   OnDoubleClick,
   OnDrag,
   OnDragEnd,
   OnDragEnter,
   OnDragLeave,
   OnDragOver,
   OnDragStart,
   OnDrop,
   OnDurationChange,
   OnEmptied,
   OnEnded,
   OnError,
   OnFocus,
   OnHashChange,
   OnInput,
   OnInvalid,
   OnKeyDown,
   OnKeyPress,
   OnKeyUp,
   OnLoad,
   OnLoadedData,
   OnLoadedMetadata,
   OnLoadStart,
   OnMouseDown,
   OnMouseMove,
   OnMouseOut,
   OnMouseOver,
   OnMouseUp,
   OnMouseWheel,
   OnOffline,
   OnOnline,
   OnPageHide,
   OnPageShow,
   OnPaste,
   OnPause,
   OnPlay,
   OnPlaying,
   OnPopState,
   OnProgress,
   OnRateChange,
   OnReset,
   OnResize,
   OnScroll,
   OnSearch,
   OnSeeked,
   OnSeeking,
   OnSelect,
   OnStalled,
   OnStorage,
   OnSubmit,
   OnSuspend,
   OnTimeUpdate,
   OnToggle,
   OnUnload,
   OnVolumeChange,
   OnWaiting,
   OnWheel,
   Open,
   Optimum,
   Pattern,
   Placeholder,
   Poster,
   Preload,
   ReadOnly,
   Relative,
   Required,
   Reversed,
   Rows,
   RowSpan,
   Sandbox,
   Scope,
   Selected,
   Shape,
   Size,
   Sizes,
   Span,
   Spellcheck,
   Source,
   SourceDoc,
   SourceLanguage,
   SourceSet,
   Start,
   Step,
   // Style,
   TabIndex,
   Target,
   Title,
   Translate,
   Type,
   UseMap,
   Value,
   Width,
   Wrap,
}

impl std::convert::From<Attr> for String {
   fn from(attr: Attr) -> Self {
      match attr {
         Attr::Accept => "accept",
         Attr::AcceptCharset => "accept-charset",
         Attr::AccessKey => "accesskey",
         Attr::Action => "action",
         Attr::Align => "align",
         Attr::Alt => "alt",
         Attr::Async => "async",
         Attr::AutoComplete => "autocomplete",
         Attr::AutoFocus => "autofocus",
         Attr::AutoPlay => "autoplay",
         Attr::BackgroundColor => "bgcolor",
         Attr::Border => "border",
         Attr::Charset => "charset",
         Attr::Checked => "checked",
         Attr::Cite => "cite",
         Attr::Class => "class",
         Attr::Color => "color",
         Attr::Columns => "cols",
         Attr::ColumnSpan => "colspan",
         Attr::Content => "content",
         Attr::ContentEditable => "contenteditable",
         Attr::Controls => "controls",
         Attr::Coords => "coords",
         Attr::Data => "data",
         Attr::DateTime => "datetime",
         Attr::Default_ => "default",
         Attr::Defer => "defer",
         Attr::Dir => "dir",
         Attr::DirName => "dirname",
         Attr::Disabled => "disabled",
         Attr::Download => "download",
         Attr::Draggable => "draggable",
         Attr::DropZone => "dropzone",
         Attr::EncodingType => "enctype",
         Attr::For => "for",
         Attr::Form => "form",
         Attr::FormAction => "formaction",
         Attr::Headers => "headers",
         Attr::Height => "height",
         Attr::Hidden => "hidden",
         Attr::High => "high",
         Attr::Href => "href",
         Attr::Hreflang => "hreflang",
         Attr::HttpEquivalent => "http-equiv",
         Attr::Id => "id",
         Attr::Identifier => "id",
         Attr::IsMap => "ismap",
         Attr::Kind => "kind",
         Attr::Label => "label",
         Attr::Language => "lang",
         Attr::List => "list",
         Attr::Loop => "loop",
         Attr::Low => "low",
         Attr::Max => "max",
         Attr::MaxLength => "maxlength",
         Attr::Media => "media",
         Attr::Method => "method",
         Attr::Min => "min",
         Attr::Multiple => "multiple",
         Attr::Muted => "muted",
         Attr::Name => "name",
         Attr::NoValidate => "novalidate",
         Attr::OnAbort => "onabort",
         Attr::OnAfterPrint => "onafterprint",
         Attr::OnBeforePrint => "onbeforeprint",
         Attr::OnBeforeUnload => "onbeforeunload",
         Attr::OnBlur => "onblur",
         Attr::OnCanPlay => "oncanplay",
         Attr::OnCanPlayThrough => "oncanplaythrough",
         Attr::OnChange => "onchange",
         Attr::OnClick => "onclick",
         Attr::OnContextMenu => "oncontextmenu",
         Attr::OnCopy => "oncopy",
         Attr::OnCueChange => "oncuechange",
         Attr::OnCut => "oncut",
         Attr::OnDoubleClick => "ondblclick",
         Attr::OnDrag => "ondrag",
         Attr::OnDragEnd => "ondragend",
         Attr::OnDragEnter => "ondragenter",
         Attr::OnDragLeave => "ondragleave",
         Attr::OnDragOver => "ondragover",
         Attr::OnDragStart => "ondragstart",
         Attr::OnDrop => "ondrop",
         Attr::OnDurationChange => "ondurationchange",
         Attr::OnEmptied => "onemptied",
         Attr::OnEnded => "onended",
         Attr::OnError => "onerror",
         Attr::OnFocus => "onfocus",
         Attr::OnHashChange => "onhashchange",
         Attr::OnInput => "oninput",
         Attr::OnInvalid => "oninvalid",
         Attr::OnKeyDown => "onkeydown",
         Attr::OnKeyPress => "onkeypress",
         Attr::OnKeyUp => "onkeyup",
         Attr::OnLoad => "onload",
         Attr::OnLoadedData => "onloadeddata",
         Attr::OnLoadedMetadata => "onloadedmetadata",
         Attr::OnLoadStart => "onloadstart",
         Attr::OnMouseDown => "onmousedown",
         Attr::OnMouseMove => "onmousemove",
         Attr::OnMouseOut => "onmouseout",
         Attr::OnMouseOver => "onmouseover",
         Attr::OnMouseUp => "onmouseup",
         Attr::OnMouseWheel => "onmousewheel",
         Attr::OnOffline => "onoffline",
         Attr::OnOnline => "ononline",
         Attr::OnPageHide => "onpagehide",
         Attr::OnPageShow => "onpageshow",
         Attr::OnPaste => "onpaste",
         Attr::OnPause => "onpause",
         Attr::OnPlay => "onplay",
         Attr::OnPlaying => "onplaying",
         Attr::OnPopState => "onpopstate",
         Attr::OnProgress => "onprogress",
         Attr::OnRateChange => "onratechange",
         Attr::OnReset => "onreset",
         Attr::OnResize => "onresize",
         Attr::OnScroll => "onscroll",
         Attr::OnSearch => "onsearch",
         Attr::OnSeeked => "onseeked",
         Attr::OnSeeking => "onseeking",
         Attr::OnSelect => "onselect",
         Attr::OnStalled => "onstalled",
         Attr::OnStorage => "onstorage",
         Attr::OnSubmit => "onsubmit",
         Attr::OnSuspend => "onsuspend",
         Attr::OnTimeUpdate => "ontimeupdate",
         Attr::OnToggle => "ontoggle",
         Attr::OnUnload => "onunload",
         Attr::OnVolumeChange => "onvolumechange",
         Attr::OnWaiting => "onwaiting",
         Attr::OnWheel => "onwheel",
         Attr::Open => "open",
         Attr::Optimum => "optimum",
         Attr::Pattern => "pattern",
         Attr::Placeholder => "placeholder",
         Attr::Poster => "poster",
         Attr::Preload => "preload",
         Attr::ReadOnly => "readonly",
         Attr::Relative => "rel",
         Attr::Required => "required",
         Attr::Reversed => "reversed",
         Attr::Rows => "rows",
         Attr::RowSpan => "rowspan",
         Attr::Sandbox => "sandbox",
         Attr::Scope => "scope",
         Attr::Selected => "selected",
         Attr::Shape => "shape",
         Attr::Size => "size",
         Attr::Sizes => "sizes",
         Attr::Span => "span",
         Attr::Spellcheck => "spellcheck",
         Attr::Source => "src",
         Attr::SourceDoc => "srcdoc",
         Attr::SourceLanguage => "srclang",
         Attr::SourceSet => "srcset",
         Attr::Start => "start",
         Attr::Step => "step",
         // Attr::Style => "style",
         Attr::TabIndex => "tabindex",
         Attr::Target => "target",
         Attr::Title => "title",
         Attr::Translate => "translate",
         Attr::Type => "type",
         Attr::UseMap => "usemap",
         Attr::Value => "value",
         Attr::Width => "width",
         Attr::Wrap => "wrap",
      }.into()
   }
}