packages feed

type-of-html 1.3.0.1 → 1.3.1.0

raw patch · 9 files changed

+450/−938 lines, 9 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

+ Html: instance Html.Document (a Html.Type.Internal.:= b) => GHC.Show.Show (a Html.Type.Internal.:= b)
+ Html.Type: [fromRaw] :: Raw a -> a
+ Html.Type: type a ??> b = Check Attribute a b
- Html.Attribute: acceptCharset_ :: a -> AcceptCharsetA := a
+ Html.Attribute: acceptCharset_ :: a -> 'AcceptCharsetA := a
- Html.Attribute: accept_ :: a -> AcceptA := a
+ Html.Attribute: accept_ :: a -> 'AcceptA := a
- Html.Attribute: accesskey_ :: a -> AccesskeyA := a
+ Html.Attribute: accesskey_ :: a -> 'AccesskeyA := a
- Html.Attribute: action_ :: a -> ActionA := a
+ Html.Attribute: action_ :: a -> 'ActionA := a
- Html.Attribute: addAttributes :: (a ??> (b # b'), a ?> c) => b' -> (a :@: b) c -> (a :@: (b # b')) c
+ Html.Attribute: addAttributes :: (a <?> (b # b')) c => b' -> (a :@: b) c -> (a :@: (b # b')) c
- Html.Attribute: align_ :: a -> AlignA := a
+ Html.Attribute: align_ :: a -> 'AlignA := a
- Html.Attribute: allowfullscreen_ :: AllowfullscreenA := ()
+ Html.Attribute: allowfullscreen_ :: 'AllowfullscreenA := ()
- Html.Attribute: allowpaymentrequest_ :: AllowpaymentrequestA := ()
+ Html.Attribute: allowpaymentrequest_ :: 'AllowpaymentrequestA := ()
- Html.Attribute: alt_ :: a -> AltA := a
+ Html.Attribute: alt_ :: a -> 'AltA := a
- Html.Attribute: async_ :: AsyncA := ()
+ Html.Attribute: async_ :: 'AsyncA := ()
- Html.Attribute: autocomplete_ :: a -> AutocompleteA := a
+ Html.Attribute: autocomplete_ :: a -> 'AutocompleteA := a
- Html.Attribute: autofocus_ :: AutofocusA := ()
+ Html.Attribute: autofocus_ :: 'AutofocusA := ()
- Html.Attribute: autoplay_ :: AutoplayA := ()
+ Html.Attribute: autoplay_ :: 'AutoplayA := ()
- Html.Attribute: autosave_ :: a -> AutosaveA := a
+ Html.Attribute: autosave_ :: a -> 'AutosaveA := a
- Html.Attribute: bgcolor_ :: a -> BgcolorA := a
+ Html.Attribute: bgcolor_ :: a -> 'BgcolorA := a
- Html.Attribute: border_ :: a -> BorderA := a
+ Html.Attribute: border_ :: a -> 'BorderA := a
- Html.Attribute: buffered_ :: a -> BufferedA := a
+ Html.Attribute: buffered_ :: a -> 'BufferedA := a
- Html.Attribute: challenge_ :: a -> ChallengeA := a
+ Html.Attribute: challenge_ :: a -> 'ChallengeA := a
- Html.Attribute: charset_ :: a -> CharsetA := a
+ Html.Attribute: charset_ :: a -> 'CharsetA := a
- Html.Attribute: checked_ :: CheckedA := ()
+ Html.Attribute: checked_ :: 'CheckedA := ()
- Html.Attribute: cite_ :: a -> CiteA := a
+ Html.Attribute: cite_ :: a -> 'CiteA := a
- Html.Attribute: class_ :: a -> ClassA := a
+ Html.Attribute: class_ :: a -> 'ClassA := a
- Html.Attribute: code_ :: a -> CodeA := a
+ Html.Attribute: code_ :: a -> 'CodeA := a
- Html.Attribute: codebase_ :: a -> CodebaseA := a
+ Html.Attribute: codebase_ :: a -> 'CodebaseA := a
- Html.Attribute: color_ :: a -> ColorA := a
+ Html.Attribute: color_ :: a -> 'ColorA := a
- Html.Attribute: cols_ :: Integral a => a -> ColsA := a
+ Html.Attribute: cols_ :: Integral a => a -> 'ColsA := a
- Html.Attribute: colspan_ :: Integral a => a -> ColspanA := a
+ Html.Attribute: colspan_ :: Integral a => a -> 'ColspanA := a
- Html.Attribute: content_ :: a -> ContentA := a
+ Html.Attribute: content_ :: a -> 'ContentA := a
- Html.Attribute: contenteditable_ :: a -> ContenteditableA := a
+ Html.Attribute: contenteditable_ :: a -> 'ContenteditableA := a
- Html.Attribute: contextmenu_ :: a -> ContextmenuA := a
+ Html.Attribute: contextmenu_ :: a -> 'ContextmenuA := a
- Html.Attribute: controls_ :: ControlsA := ()
+ Html.Attribute: controls_ :: 'ControlsA := ()
- Html.Attribute: coords_ :: a -> CoordsA := a
+ Html.Attribute: coords_ :: a -> 'CoordsA := a
- Html.Attribute: crossorigin_ :: a -> CrossoriginA := a
+ Html.Attribute: crossorigin_ :: a -> 'CrossoriginA := a
- Html.Attribute: data_ :: a -> DataA := a
+ Html.Attribute: data_ :: a -> 'DataA := a
- Html.Attribute: datetime_ :: a -> DatetimeA := a
+ Html.Attribute: datetime_ :: a -> 'DatetimeA := a
- Html.Attribute: default_ :: DefaultA := ()
+ Html.Attribute: default_ :: 'DefaultA := ()
- Html.Attribute: defer_ :: DeferA := ()
+ Html.Attribute: defer_ :: 'DeferA := ()
- Html.Attribute: dir_ :: a -> DirA := a
+ Html.Attribute: dir_ :: a -> 'DirA := a
- Html.Attribute: dirname_ :: a -> DirnameA := a
+ Html.Attribute: dirname_ :: a -> 'DirnameA := a
- Html.Attribute: disabled_ :: DisabledA := ()
+ Html.Attribute: disabled_ :: 'DisabledA := ()
- Html.Attribute: download_ :: a -> DownloadA := a
+ Html.Attribute: download_ :: a -> 'DownloadA := a
- Html.Attribute: draggable_ :: a -> DraggableA := a
+ Html.Attribute: draggable_ :: a -> 'DraggableA := a
- Html.Attribute: dropzone_ :: a -> DropzoneA := a
+ Html.Attribute: dropzone_ :: a -> 'DropzoneA := a
- Html.Attribute: enctype_ :: a -> EnctypeA := a
+ Html.Attribute: enctype_ :: a -> 'EnctypeA := a
- Html.Attribute: for_ :: a -> ForA := a
+ Html.Attribute: for_ :: a -> 'ForA := a
- Html.Attribute: form_ :: a -> FormA := a
+ Html.Attribute: form_ :: a -> 'FormA := a
- Html.Attribute: formaction_ :: a -> FormactionA := a
+ Html.Attribute: formaction_ :: a -> 'FormactionA := a
- Html.Attribute: formenctype_ :: a -> FormenctypeA := a
+ Html.Attribute: formenctype_ :: a -> 'FormenctypeA := a
- Html.Attribute: formmethod_ :: a -> FormmethodA := a
+ Html.Attribute: formmethod_ :: a -> 'FormmethodA := a
- Html.Attribute: formnovalidate_ :: FormnovalidateA := ()
+ Html.Attribute: formnovalidate_ :: 'FormnovalidateA := ()
- Html.Attribute: formtarget_ :: a -> FormtargetA := a
+ Html.Attribute: formtarget_ :: a -> 'FormtargetA := a
- Html.Attribute: headers_ :: a -> HeadersA := a
+ Html.Attribute: headers_ :: a -> 'HeadersA := a
- Html.Attribute: height_ :: Integral a => a -> HeightA := a
+ Html.Attribute: height_ :: Integral a => a -> 'HeightA := a
- Html.Attribute: hidden_ :: HiddenA := ()
+ Html.Attribute: hidden_ :: 'HiddenA := ()
- Html.Attribute: high_ :: Num a => a -> HighA := a
+ Html.Attribute: high_ :: Num a => a -> 'HighA := a
- Html.Attribute: href_ :: a -> HrefA := a
+ Html.Attribute: href_ :: a -> 'HrefA := a
- Html.Attribute: hreflang_ :: a -> HreflangA := a
+ Html.Attribute: hreflang_ :: a -> 'HreflangA := a
- Html.Attribute: httpEquiv_ :: a -> HttpEquivA := a
+ Html.Attribute: httpEquiv_ :: a -> 'HttpEquivA := a
- Html.Attribute: icon_ :: a -> IconA := a
+ Html.Attribute: icon_ :: a -> 'IconA := a
- Html.Attribute: id_ :: a -> IdA := a
+ Html.Attribute: id_ :: a -> 'IdA := a
- Html.Attribute: integrity_ :: a -> IntegrityA := a
+ Html.Attribute: integrity_ :: a -> 'IntegrityA := a
- Html.Attribute: ismap_ :: IsmapA := ()
+ Html.Attribute: ismap_ :: 'IsmapA := ()
- Html.Attribute: itemprop_ :: a -> ItempropA := a
+ Html.Attribute: itemprop_ :: a -> 'ItempropA := a
- Html.Attribute: keytype_ :: a -> KeytypeA := a
+ Html.Attribute: keytype_ :: a -> 'KeytypeA := a
- Html.Attribute: kind_ :: a -> KindA := a
+ Html.Attribute: kind_ :: a -> 'KindA := a
- Html.Attribute: label_ :: a -> LabelA := a
+ Html.Attribute: label_ :: a -> 'LabelA := a
- Html.Attribute: lang_ :: a -> LangA := a
+ Html.Attribute: lang_ :: a -> 'LangA := a
- Html.Attribute: language_ :: a -> LanguageA := a
+ Html.Attribute: language_ :: a -> 'LanguageA := a
- Html.Attribute: list_ :: a -> ListA := a
+ Html.Attribute: list_ :: a -> 'ListA := a
- Html.Attribute: longdesc_ :: a -> LongdescA := a
+ Html.Attribute: longdesc_ :: a -> 'LongdescA := a
- Html.Attribute: loop_ :: LoopA := ()
+ Html.Attribute: loop_ :: 'LoopA := ()
- Html.Attribute: low_ :: Num a => a -> LowA := a
+ Html.Attribute: low_ :: Num a => a -> 'LowA := a
- Html.Attribute: manifest_ :: a -> ManifestA := a
+ Html.Attribute: manifest_ :: a -> 'ManifestA := a
- Html.Attribute: max_ :: Num a => a -> MaxA := a
+ Html.Attribute: max_ :: Num a => a -> 'MaxA := a
- Html.Attribute: maxlength_ :: Integral a => a -> MaxlengthA := a
+ Html.Attribute: maxlength_ :: Integral a => a -> 'MaxlengthA := a
- Html.Attribute: media_ :: Integral a => a -> MediaA := a
+ Html.Attribute: media_ :: Integral a => a -> 'MediaA := a
- Html.Attribute: method_ :: a -> MethodA := a
+ Html.Attribute: method_ :: a -> 'MethodA := a
- Html.Attribute: min_ :: Num a => a -> MinA := a
+ Html.Attribute: min_ :: Num a => a -> 'MinA := a
- Html.Attribute: minlength_ :: a -> MinlengthA := a
+ Html.Attribute: minlength_ :: a -> 'MinlengthA := a
- Html.Attribute: multiple_ :: MultipleA := ()
+ Html.Attribute: multiple_ :: 'MultipleA := ()
- Html.Attribute: muted_ :: MutedA := ()
+ Html.Attribute: muted_ :: 'MutedA := ()
- Html.Attribute: name_ :: a -> NameA := a
+ Html.Attribute: name_ :: a -> 'NameA := a
- Html.Attribute: nonce_ :: a -> NonceA := a
+ Html.Attribute: nonce_ :: a -> 'NonceA := a
- Html.Attribute: novalidate_ :: NovalidateA := ()
+ Html.Attribute: novalidate_ :: 'NovalidateA := ()
- Html.Attribute: open_ :: OpenA := ()
+ Html.Attribute: open_ :: 'OpenA := ()
- Html.Attribute: optimum_ :: Num a => a -> OptimumA := a
+ Html.Attribute: optimum_ :: Num a => a -> 'OptimumA := a
- Html.Attribute: pattern_ :: a -> PatternA := a
+ Html.Attribute: pattern_ :: a -> 'PatternA := a
- Html.Attribute: ping_ :: a -> PingA := a
+ Html.Attribute: ping_ :: a -> 'PingA := a
- Html.Attribute: placeholder_ :: a -> PlaceholderA := a
+ Html.Attribute: placeholder_ :: a -> 'PlaceholderA := a
- Html.Attribute: poster_ :: a -> PosterA := a
+ Html.Attribute: poster_ :: a -> 'PosterA := a
- Html.Attribute: preload_ :: a -> PreloadA := a
+ Html.Attribute: preload_ :: a -> 'PreloadA := a
- Html.Attribute: radiogroup_ :: a -> RadiogroupA := a
+ Html.Attribute: radiogroup_ :: a -> 'RadiogroupA := a
- Html.Attribute: readonly_ :: ReadonlyA := ()
+ Html.Attribute: readonly_ :: 'ReadonlyA := ()
- Html.Attribute: referrerpolicy_ :: a -> ReferrerpolicyA := a
+ Html.Attribute: referrerpolicy_ :: a -> 'ReferrerpolicyA := a
- Html.Attribute: rel_ :: a -> RelA := a
+ Html.Attribute: rel_ :: a -> 'RelA := a
- Html.Attribute: required_ :: RequiredA := ()
+ Html.Attribute: required_ :: 'RequiredA := ()
- Html.Attribute: rev_ :: a -> RevA := a
+ Html.Attribute: rev_ :: a -> 'RevA := a
- Html.Attribute: reversed_ :: ReversedA := ()
+ Html.Attribute: reversed_ :: 'ReversedA := ()
- Html.Attribute: rows_ :: Integral a => a -> RowsA := a
+ Html.Attribute: rows_ :: Integral a => a -> 'RowsA := a
- Html.Attribute: rowspan_ :: Integral a => a -> RowspanA := a
+ Html.Attribute: rowspan_ :: Integral a => a -> 'RowspanA := a
- Html.Attribute: sandbox_ :: a -> SandboxA := a
+ Html.Attribute: sandbox_ :: a -> 'SandboxA := a
- Html.Attribute: scope_ :: a -> ScopeA := a
+ Html.Attribute: scope_ :: a -> 'ScopeA := a
- Html.Attribute: scoped_ :: a -> ScopedA := a
+ Html.Attribute: scoped_ :: a -> 'ScopedA := a
- Html.Attribute: seamless_ :: a -> SeamlessA := a
+ Html.Attribute: seamless_ :: a -> 'SeamlessA := a
- Html.Attribute: selected_ :: SelectedA := ()
+ Html.Attribute: selected_ :: 'SelectedA := ()
- Html.Attribute: shape_ :: a -> ShapeA := a
+ Html.Attribute: shape_ :: a -> 'ShapeA := a
- Html.Attribute: size_ :: Integral a => a -> SizeA := a
+ Html.Attribute: size_ :: Integral a => a -> 'SizeA := a
- Html.Attribute: sizes_ :: a -> SizesA := a
+ Html.Attribute: sizes_ :: a -> 'SizesA := a
- Html.Attribute: slot_ :: a -> SlotA := a
+ Html.Attribute: slot_ :: a -> 'SlotA := a
- Html.Attribute: span_ :: Integral a => a -> SpanA := a
+ Html.Attribute: span_ :: Integral a => a -> 'SpanA := a
- Html.Attribute: spellcheck_ :: a -> SpellcheckA := a
+ Html.Attribute: spellcheck_ :: a -> 'SpellcheckA := a
- Html.Attribute: src_ :: a -> SrcA := a
+ Html.Attribute: src_ :: a -> 'SrcA := a
- Html.Attribute: srcdoc_ :: a -> SrcdocA := a
+ Html.Attribute: srcdoc_ :: a -> 'SrcdocA := a
- Html.Attribute: srclang_ :: a -> SrclangA := a
+ Html.Attribute: srclang_ :: a -> 'SrclangA := a
- Html.Attribute: srcset_ :: a -> SrcsetA := a
+ Html.Attribute: srcset_ :: a -> 'SrcsetA := a
- Html.Attribute: start_ :: Integral a => a -> StartA := a
+ Html.Attribute: start_ :: Integral a => a -> 'StartA := a
- Html.Attribute: step_ :: Num a => a -> StepA := a
+ Html.Attribute: step_ :: Num a => a -> 'StepA := a
- Html.Attribute: style_ :: a -> StyleA := a
+ Html.Attribute: style_ :: a -> 'StyleA := a
- Html.Attribute: summary_ :: a -> SummaryA := a
+ Html.Attribute: summary_ :: a -> 'SummaryA := a
- Html.Attribute: tabindex_ :: Integral a => a -> TabindexA := a
+ Html.Attribute: tabindex_ :: Integral a => a -> 'TabindexA := a
- Html.Attribute: target_ :: a -> TargetA := a
+ Html.Attribute: target_ :: a -> 'TargetA := a
- Html.Attribute: title_ :: a -> TitleA := a
+ Html.Attribute: title_ :: a -> 'TitleA := a
- Html.Attribute: translate_ :: a -> TranslateA := a
+ Html.Attribute: translate_ :: a -> 'TranslateA := a
- Html.Attribute: type_ :: a -> TypeA := a
+ Html.Attribute: type_ :: a -> 'TypeA := a
- Html.Attribute: typemustmatch_ :: TypemustmatchA := ()
+ Html.Attribute: typemustmatch_ :: 'TypemustmatchA := ()
- Html.Attribute: usemap_ :: a -> UsemapA := a
+ Html.Attribute: usemap_ :: a -> 'UsemapA := a
- Html.Attribute: value_ :: a -> ValueA := a
+ Html.Attribute: value_ :: a -> 'ValueA := a
- Html.Attribute: width_ :: Integral a => a -> WidthA := a
+ Html.Attribute: width_ :: Integral a => a -> 'WidthA := a
- Html.Attribute: wrap_ :: a -> WrapA := a
+ Html.Attribute: wrap_ :: a -> 'WrapA := a
- Html.Element: a_ :: (A ?> a) => a -> A > a
+ Html.Element: a_ :: ( 'A ?> a) => a -> 'A > a
- Html.Element: a_A :: (A ??> a, A ?> b) => a -> b -> (A :@: a) b
+ Html.Element: a_A :: ( 'A <?> a) b => a -> b -> ( 'A :@: a) b
- Html.Element: abbr_ :: (Abbr ?> a) => a -> Abbr > a
+ Html.Element: abbr_ :: ( 'Abbr ?> a) => a -> 'Abbr > a
- Html.Element: abbr_A :: (Abbr ??> a, Abbr ?> b) => a -> b -> (Abbr :@: a) b
+ Html.Element: abbr_A :: ( 'Abbr <?> a) b => a -> b -> ( 'Abbr :@: a) b
- Html.Element: acronym_ :: (Acronym ?> a) => a -> Acronym > a
+ Html.Element: acronym_ :: ( 'Acronym ?> a) => a -> 'Acronym > a
- Html.Element: acronym_A :: (Acronym ??> a, Acronym ?> b) => a -> b -> (Acronym :@: a) b
+ Html.Element: acronym_A :: ( 'Acronym <?> a) b => a -> b -> ( 'Acronym :@: a) b
- Html.Element: address_ :: (Address ?> a) => a -> Address > a
+ Html.Element: address_ :: ( 'Address ?> a) => a -> 'Address > a
- Html.Element: address_A :: (Address ??> a, Address ?> b) => a -> b -> (Address :@: a) b
+ Html.Element: address_A :: ( 'Address <?> a) b => a -> b -> ( 'Address :@: a) b
- Html.Element: applet_ :: (Applet ?> a) => a -> Applet > a
+ Html.Element: applet_ :: ( 'Applet ?> a) => a -> 'Applet > a
- Html.Element: applet_A :: (Applet ??> a, Applet ?> b) => a -> b -> (Applet :@: a) b
+ Html.Element: applet_A :: ( 'Applet <?> a) b => a -> b -> ( 'Applet :@: a) b
- Html.Element: area_ :: Area > ()
+ Html.Element: area_ :: 'Area > ()
- Html.Element: area_A :: Area ??> a => a -> (Area :@: a) ()
+ Html.Element: area_A :: ( 'Area <?> a) () => a -> ( 'Area :@: a) ()
- Html.Element: article_ :: (Article ?> a) => a -> Article > a
+ Html.Element: article_ :: ( 'Article ?> a) => a -> 'Article > a
- Html.Element: article_A :: (Article ??> a, Article ?> b) => a -> b -> (Article :@: a) b
+ Html.Element: article_A :: ( 'Article <?> a) b => a -> b -> ( 'Article :@: a) b
- Html.Element: aside_ :: (Aside ?> a) => a -> Aside > a
+ Html.Element: aside_ :: ( 'Aside ?> a) => a -> 'Aside > a
- Html.Element: aside_A :: (Aside ??> a, Aside ?> b) => a -> b -> (Aside :@: a) b
+ Html.Element: aside_A :: ( 'Aside <?> a) b => a -> b -> ( 'Aside :@: a) b
- Html.Element: audio_ :: (Audio ?> a) => a -> Audio > a
+ Html.Element: audio_ :: ( 'Audio ?> a) => a -> 'Audio > a
- Html.Element: audio_A :: (Audio ??> a, Audio ?> b) => a -> b -> (Audio :@: a) b
+ Html.Element: audio_A :: ( 'Audio <?> a) b => a -> b -> ( 'Audio :@: a) b
- Html.Element: b_ :: (B ?> a) => a -> B > a
+ Html.Element: b_ :: ( 'B ?> a) => a -> 'B > a
- Html.Element: b_A :: (B ??> a, B ?> b) => a -> b -> (B :@: a) b
+ Html.Element: b_A :: ( 'B <?> a) b => a -> b -> ( 'B :@: a) b
- Html.Element: base_ :: Base > ()
+ Html.Element: base_ :: 'Base > ()
- Html.Element: base_A :: Base ??> a => a -> (Base :@: a) ()
+ Html.Element: base_A :: ( 'Base <?> a) () => a -> ( 'Base :@: a) ()
- Html.Element: basefont_ :: (Basefont ?> a) => a -> Basefont > a
+ Html.Element: basefont_ :: ( 'Basefont ?> a) => a -> 'Basefont > a
- Html.Element: basefont_A :: (Basefont ??> a, Basefont ?> b) => a -> b -> (Basefont :@: a) b
+ Html.Element: basefont_A :: ( 'Basefont <?> a) b => a -> b -> ( 'Basefont :@: a) b
- Html.Element: bdi_ :: (Bdi ?> a) => a -> Bdi > a
+ Html.Element: bdi_ :: ( 'Bdi ?> a) => a -> 'Bdi > a
- Html.Element: bdi_A :: (Bdi ??> a, Bdi ?> b) => a -> b -> (Bdi :@: a) b
+ Html.Element: bdi_A :: ( 'Bdi <?> a) b => a -> b -> ( 'Bdi :@: a) b
- Html.Element: bdo_ :: (Bdo ?> a) => a -> Bdo > a
+ Html.Element: bdo_ :: ( 'Bdo ?> a) => a -> 'Bdo > a
- Html.Element: bdo_A :: (Bdo ??> a, Bdo ?> b) => a -> b -> (Bdo :@: a) b
+ Html.Element: bdo_A :: ( 'Bdo <?> a) b => a -> b -> ( 'Bdo :@: a) b
- Html.Element: bgsound_ :: (Bgsound ?> a) => a -> Bgsound > a
+ Html.Element: bgsound_ :: ( 'Bgsound ?> a) => a -> 'Bgsound > a
- Html.Element: bgsound_A :: (Bgsound ??> a, Bgsound ?> b) => a -> b -> (Bgsound :@: a) b
+ Html.Element: bgsound_A :: ( 'Bgsound <?> a) b => a -> b -> ( 'Bgsound :@: a) b
- Html.Element: big_ :: (Big ?> a) => a -> Big > a
+ Html.Element: big_ :: ( 'Big ?> a) => a -> 'Big > a
- Html.Element: big_A :: (Big ??> a, Big ?> b) => a -> b -> (Big :@: a) b
+ Html.Element: big_A :: ( 'Big <?> a) b => a -> b -> ( 'Big :@: a) b
- Html.Element: blink_ :: (Blink ?> a) => a -> Blink > a
+ Html.Element: blink_ :: ( 'Blink ?> a) => a -> 'Blink > a
- Html.Element: blink_A :: (Blink ??> a, Blink ?> b) => a -> b -> (Blink :@: a) b
+ Html.Element: blink_A :: ( 'Blink <?> a) b => a -> b -> ( 'Blink :@: a) b
- Html.Element: blockquote_ :: (Blockquote ?> a) => a -> Blockquote > a
+ Html.Element: blockquote_ :: ( 'Blockquote ?> a) => a -> 'Blockquote > a
- Html.Element: blockquote_A :: (Blockquote ??> a, Blockquote ?> b) => a -> b -> (Blockquote :@: a) b
+ Html.Element: blockquote_A :: ( 'Blockquote <?> a) b => a -> b -> ( 'Blockquote :@: a) b
- Html.Element: body_ :: (Body ?> a) => a -> Body > a
+ Html.Element: body_ :: ( 'Body ?> a) => a -> 'Body > a
- Html.Element: body_A :: (Body ??> a, Body ?> b) => a -> b -> (Body :@: a) b
+ Html.Element: body_A :: ( 'Body <?> a) b => a -> b -> ( 'Body :@: a) b
- Html.Element: br_ :: Br > ()
+ Html.Element: br_ :: 'Br > ()
- Html.Element: br_A :: Br ??> a => a -> (Br :@: a) ()
+ Html.Element: br_A :: ( 'Br <?> a) () => a -> ( 'Br :@: a) ()
- Html.Element: button_ :: (Button ?> a) => a -> Button > a
+ Html.Element: button_ :: ( 'Button ?> a) => a -> 'Button > a
- Html.Element: button_A :: (Button ??> a, Button ?> b) => a -> b -> (Button :@: a) b
+ Html.Element: button_A :: ( 'Button <?> a) b => a -> b -> ( 'Button :@: a) b
- Html.Element: canvas_ :: (Canvas ?> a) => a -> Canvas > a
+ Html.Element: canvas_ :: ( 'Canvas ?> a) => a -> 'Canvas > a
- Html.Element: canvas_A :: (Canvas ??> a, Canvas ?> b) => a -> b -> (Canvas :@: a) b
+ Html.Element: canvas_A :: ( 'Canvas <?> a) b => a -> b -> ( 'Canvas :@: a) b
- Html.Element: caption_ :: (Caption ?> a) => a -> Caption > a
+ Html.Element: caption_ :: ( 'Caption ?> a) => a -> 'Caption > a
- Html.Element: caption_A :: (Caption ??> a, Caption ?> b) => a -> b -> (Caption :@: a) b
+ Html.Element: caption_A :: ( 'Caption <?> a) b => a -> b -> ( 'Caption :@: a) b
- Html.Element: center_ :: (Center ?> a) => a -> Center > a
+ Html.Element: center_ :: ( 'Center ?> a) => a -> 'Center > a
- Html.Element: center_A :: (Center ??> a, Center ?> b) => a -> b -> (Center :@: a) b
+ Html.Element: center_A :: ( 'Center <?> a) b => a -> b -> ( 'Center :@: a) b
- Html.Element: cite_ :: (Cite ?> a) => a -> Cite > a
+ Html.Element: cite_ :: ( 'Cite ?> a) => a -> 'Cite > a
- Html.Element: cite_A :: (Cite ??> a, Cite ?> b) => a -> b -> (Cite :@: a) b
+ Html.Element: cite_A :: ( 'Cite <?> a) b => a -> b -> ( 'Cite :@: a) b
- Html.Element: code_ :: (Code ?> a) => a -> Code > a
+ Html.Element: code_ :: ( 'Code ?> a) => a -> 'Code > a
- Html.Element: code_A :: (Code ??> a, Code ?> b) => a -> b -> (Code :@: a) b
+ Html.Element: code_A :: ( 'Code <?> a) b => a -> b -> ( 'Code :@: a) b
- Html.Element: col_ :: Col > ()
+ Html.Element: col_ :: 'Col > ()
- Html.Element: col_A :: Col ??> a => a -> (Col :@: a) ()
+ Html.Element: col_A :: ( 'Col <?> a) () => a -> ( 'Col :@: a) ()
- Html.Element: colgroup_ :: (Colgroup ?> a) => a -> Colgroup > a
+ Html.Element: colgroup_ :: ( 'Colgroup ?> a) => a -> 'Colgroup > a
- Html.Element: colgroup_A :: (Colgroup ??> a, Colgroup ?> b) => a -> b -> (Colgroup :@: a) b
+ Html.Element: colgroup_A :: ( 'Colgroup <?> a) b => a -> b -> ( 'Colgroup :@: a) b
- Html.Element: command_ :: (Command ?> a) => a -> Command > a
+ Html.Element: command_ :: ( 'Command ?> a) => a -> 'Command > a
- Html.Element: command_A :: (Command ??> a, Command ?> b) => a -> b -> (Command :@: a) b
+ Html.Element: command_A :: ( 'Command <?> a) b => a -> b -> ( 'Command :@: a) b
- Html.Element: content_ :: (Content ?> a) => a -> Content > a
+ Html.Element: content_ :: ( 'Content ?> a) => a -> 'Content > a
- Html.Element: content_A :: (Content ??> a, Content ?> b) => a -> b -> (Content :@: a) b
+ Html.Element: content_A :: ( 'Content <?> a) b => a -> b -> ( 'Content :@: a) b
- Html.Element: data_ :: (Data ?> a) => a -> Data > a
+ Html.Element: data_ :: ( 'Data ?> a) => a -> 'Data > a
- Html.Element: data_A :: (Data ??> a, Data ?> b) => a -> b -> (Data :@: a) b
+ Html.Element: data_A :: ( 'Data <?> a) b => a -> b -> ( 'Data :@: a) b
- Html.Element: datalist_ :: (Datalist ?> a) => a -> Datalist > a
+ Html.Element: datalist_ :: ( 'Datalist ?> a) => a -> 'Datalist > a
- Html.Element: datalist_A :: (Datalist ??> a, Datalist ?> b) => a -> b -> (Datalist :@: a) b
+ Html.Element: datalist_A :: ( 'Datalist <?> a) b => a -> b -> ( 'Datalist :@: a) b
- Html.Element: dd_ :: (Dd ?> a) => a -> Dd > a
+ Html.Element: dd_ :: ( 'Dd ?> a) => a -> 'Dd > a
- Html.Element: dd_A :: (Dd ??> a, Dd ?> b) => a -> b -> (Dd :@: a) b
+ Html.Element: dd_A :: ( 'Dd <?> a) b => a -> b -> ( 'Dd :@: a) b
- Html.Element: del_ :: (Del ?> a) => a -> Del > a
+ Html.Element: del_ :: ( 'Del ?> a) => a -> 'Del > a
- Html.Element: del_A :: (Del ??> a, Del ?> b) => a -> b -> (Del :@: a) b
+ Html.Element: del_A :: ( 'Del <?> a) b => a -> b -> ( 'Del :@: a) b
- Html.Element: details_ :: (Details ?> a) => a -> Details > a
+ Html.Element: details_ :: ( 'Details ?> a) => a -> 'Details > a
- Html.Element: details_A :: (Details ??> a, Details ?> b) => a -> b -> (Details :@: a) b
+ Html.Element: details_A :: ( 'Details <?> a) b => a -> b -> ( 'Details :@: a) b
- Html.Element: dfn_ :: (Dfn ?> a) => a -> Dfn > a
+ Html.Element: dfn_ :: ( 'Dfn ?> a) => a -> 'Dfn > a
- Html.Element: dfn_A :: (Dfn ??> a, Dfn ?> b) => a -> b -> (Dfn :@: a) b
+ Html.Element: dfn_A :: ( 'Dfn <?> a) b => a -> b -> ( 'Dfn :@: a) b
- Html.Element: dialog_ :: (Dialog ?> a) => a -> Dialog > a
+ Html.Element: dialog_ :: ( 'Dialog ?> a) => a -> 'Dialog > a
- Html.Element: dialog_A :: (Dialog ??> a, Dialog ?> b) => a -> b -> (Dialog :@: a) b
+ Html.Element: dialog_A :: ( 'Dialog <?> a) b => a -> b -> ( 'Dialog :@: a) b
- Html.Element: dir_ :: (Dir ?> a) => a -> Dir > a
+ Html.Element: dir_ :: ( 'Dir ?> a) => a -> 'Dir > a
- Html.Element: dir_A :: (Dir ??> a, Dir ?> b) => a -> b -> (Dir :@: a) b
+ Html.Element: dir_A :: ( 'Dir <?> a) b => a -> b -> ( 'Dir :@: a) b
- Html.Element: div_ :: (Div ?> a) => a -> Div > a
+ Html.Element: div_ :: ( 'Div ?> a) => a -> 'Div > a
- Html.Element: div_A :: (Div ??> a, Div ?> b) => a -> b -> (Div :@: a) b
+ Html.Element: div_A :: ( 'Div <?> a) b => a -> b -> ( 'Div :@: a) b
- Html.Element: dl_ :: (Dl ?> a) => a -> Dl > a
+ Html.Element: dl_ :: ( 'Dl ?> a) => a -> 'Dl > a
- Html.Element: dl_A :: (Dl ??> a, Dl ?> b) => a -> b -> (Dl :@: a) b
+ Html.Element: dl_A :: ( 'Dl <?> a) b => a -> b -> ( 'Dl :@: a) b
- Html.Element: doctype_ :: DOCTYPE > ()
+ Html.Element: doctype_ :: 'DOCTYPE > ()
- Html.Element: dt_ :: (Dt ?> a) => a -> Dt > a
+ Html.Element: dt_ :: ( 'Dt ?> a) => a -> 'Dt > a
- Html.Element: dt_A :: (Dt ??> a, Dt ?> b) => a -> b -> (Dt :@: a) b
+ Html.Element: dt_A :: ( 'Dt <?> a) b => a -> b -> ( 'Dt :@: a) b
- Html.Element: element_ :: (Element ?> a) => a -> Element > a
+ Html.Element: element_ :: ( 'Element ?> a) => a -> 'Element > a
- Html.Element: element_A :: (Element ??> a, Element ?> b) => a -> b -> (Element :@: a) b
+ Html.Element: element_A :: ( 'Element <?> a) b => a -> b -> ( 'Element :@: a) b
- Html.Element: em_ :: (Em ?> a) => a -> Em > a
+ Html.Element: em_ :: ( 'Em ?> a) => a -> 'Em > a
- Html.Element: em_A :: (Em ??> a, Em ?> b) => a -> b -> (Em :@: a) b
+ Html.Element: em_A :: ( 'Em <?> a) b => a -> b -> ( 'Em :@: a) b
- Html.Element: embed_ :: Embed > ()
+ Html.Element: embed_ :: 'Embed > ()
- Html.Element: embed_A :: Embed ??> a => a -> (Embed :@: a) ()
+ Html.Element: embed_A :: ( 'Embed <?> a) () => a -> ( 'Embed :@: a) ()
- Html.Element: fieldset_ :: (Fieldset ?> a) => a -> Fieldset > a
+ Html.Element: fieldset_ :: ( 'Fieldset ?> a) => a -> 'Fieldset > a
- Html.Element: fieldset_A :: (Fieldset ??> a, Fieldset ?> b) => a -> b -> (Fieldset :@: a) b
+ Html.Element: fieldset_A :: ( 'Fieldset <?> a) b => a -> b -> ( 'Fieldset :@: a) b
- Html.Element: figcaption_ :: (Figcaption ?> a) => a -> Figcaption > a
+ Html.Element: figcaption_ :: ( 'Figcaption ?> a) => a -> 'Figcaption > a
- Html.Element: figcaption_A :: (Figcaption ??> a, Figcaption ?> b) => a -> b -> (Figcaption :@: a) b
+ Html.Element: figcaption_A :: ( 'Figcaption <?> a) b => a -> b -> ( 'Figcaption :@: a) b
- Html.Element: figure_ :: (Figure ?> a) => a -> Figure > a
+ Html.Element: figure_ :: ( 'Figure ?> a) => a -> 'Figure > a
- Html.Element: figure_A :: (Figure ??> a, Figure ?> b) => a -> b -> (Figure :@: a) b
+ Html.Element: figure_A :: ( 'Figure <?> a) b => a -> b -> ( 'Figure :@: a) b
- Html.Element: font_ :: (Font ?> a) => a -> Font > a
+ Html.Element: font_ :: ( 'Font ?> a) => a -> 'Font > a
- Html.Element: font_A :: (Font ??> a, Font ?> b) => a -> b -> (Font :@: a) b
+ Html.Element: font_A :: ( 'Font <?> a) b => a -> b -> ( 'Font :@: a) b
- Html.Element: footer_ :: (Footer ?> a) => a -> Footer > a
+ Html.Element: footer_ :: ( 'Footer ?> a) => a -> 'Footer > a
- Html.Element: footer_A :: (Footer ??> a, Footer ?> b) => a -> b -> (Footer :@: a) b
+ Html.Element: footer_A :: ( 'Footer <?> a) b => a -> b -> ( 'Footer :@: a) b
- Html.Element: form_ :: (Form ?> a) => a -> Form > a
+ Html.Element: form_ :: ( 'Form ?> a) => a -> 'Form > a
- Html.Element: form_A :: (Form ??> a, Form ?> b) => a -> b -> (Form :@: a) b
+ Html.Element: form_A :: ( 'Form <?> a) b => a -> b -> ( 'Form :@: a) b
- Html.Element: frame_ :: (Frame ?> a) => a -> Frame > a
+ Html.Element: frame_ :: ( 'Frame ?> a) => a -> 'Frame > a
- Html.Element: frame_A :: (Frame ??> a, Frame ?> b) => a -> b -> (Frame :@: a) b
+ Html.Element: frame_A :: ( 'Frame <?> a) b => a -> b -> ( 'Frame :@: a) b
- Html.Element: frameset_ :: (Frameset ?> a) => a -> Frameset > a
+ Html.Element: frameset_ :: ( 'Frameset ?> a) => a -> 'Frameset > a
- Html.Element: frameset_A :: (Frameset ??> a, Frameset ?> b) => a -> b -> (Frameset :@: a) b
+ Html.Element: frameset_A :: ( 'Frameset <?> a) b => a -> b -> ( 'Frameset :@: a) b
- Html.Element: h1_ :: (H1 ?> a) => a -> H1 > a
+ Html.Element: h1_ :: ( 'H1 ?> a) => a -> 'H1 > a
- Html.Element: h1_A :: (H1 ??> a, H1 ?> b) => a -> b -> (H1 :@: a) b
+ Html.Element: h1_A :: ( 'H1 <?> a) b => a -> b -> ( 'H1 :@: a) b
- Html.Element: h2_ :: (H2 ?> a) => a -> H2 > a
+ Html.Element: h2_ :: ( 'H2 ?> a) => a -> 'H2 > a
- Html.Element: h2_A :: (H2 ??> a, H2 ?> b) => a -> b -> (H2 :@: a) b
+ Html.Element: h2_A :: ( 'H2 <?> a) b => a -> b -> ( 'H2 :@: a) b
- Html.Element: h3_ :: (H3 ?> a) => a -> H3 > a
+ Html.Element: h3_ :: ( 'H3 ?> a) => a -> 'H3 > a
- Html.Element: h3_A :: (H3 ??> a, H3 ?> b) => a -> b -> (H3 :@: a) b
+ Html.Element: h3_A :: ( 'H3 <?> a) b => a -> b -> ( 'H3 :@: a) b
- Html.Element: h4_ :: (H4 ?> a) => a -> H4 > a
+ Html.Element: h4_ :: ( 'H4 ?> a) => a -> 'H4 > a
- Html.Element: h4_A :: (H4 ??> a, H4 ?> b) => a -> b -> (H4 :@: a) b
+ Html.Element: h4_A :: ( 'H4 <?> a) b => a -> b -> ( 'H4 :@: a) b
- Html.Element: h5_ :: (H5 ?> a) => a -> H5 > a
+ Html.Element: h5_ :: ( 'H5 ?> a) => a -> 'H5 > a
- Html.Element: h5_A :: (H5 ??> a, H5 ?> b) => a -> b -> (H5 :@: a) b
+ Html.Element: h5_A :: ( 'H5 <?> a) b => a -> b -> ( 'H5 :@: a) b
- Html.Element: h6_ :: (H6 ?> a) => a -> H6 > a
+ Html.Element: h6_ :: ( 'H6 ?> a) => a -> 'H6 > a
- Html.Element: h6_A :: (H6 ??> a, H6 ?> b) => a -> b -> (H6 :@: a) b
+ Html.Element: h6_A :: ( 'H6 <?> a) b => a -> b -> ( 'H6 :@: a) b
- Html.Element: head_ :: (Head ?> a) => a -> Head > a
+ Html.Element: head_ :: ( 'Head ?> a) => a -> 'Head > a
- Html.Element: head_A :: (Head ??> a, Head ?> b) => a -> b -> (Head :@: a) b
+ Html.Element: head_A :: ( 'Head <?> a) b => a -> b -> ( 'Head :@: a) b
- Html.Element: header_ :: (Header ?> a) => a -> Header > a
+ Html.Element: header_ :: ( 'Header ?> a) => a -> 'Header > a
- Html.Element: header_A :: (Header ??> a, Header ?> b) => a -> b -> (Header :@: a) b
+ Html.Element: header_A :: ( 'Header <?> a) b => a -> b -> ( 'Header :@: a) b
- Html.Element: hgroup_ :: (Hgroup ?> a) => a -> Hgroup > a
+ Html.Element: hgroup_ :: ( 'Hgroup ?> a) => a -> 'Hgroup > a
- Html.Element: hgroup_A :: (Hgroup ??> a, Hgroup ?> b) => a -> b -> (Hgroup :@: a) b
+ Html.Element: hgroup_A :: ( 'Hgroup <?> a) b => a -> b -> ( 'Hgroup :@: a) b
- Html.Element: hr_ :: Hr > ()
+ Html.Element: hr_ :: 'Hr > ()
- Html.Element: hr_A :: Hr ??> a => a -> (Hr :@: a) ()
+ Html.Element: hr_A :: ( 'Hr <?> a) () => a -> ( 'Hr :@: a) ()
- Html.Element: html_ :: (Html ?> a) => a -> Html > a
+ Html.Element: html_ :: ( 'Html ?> a) => a -> 'Html > a
- Html.Element: html_A :: (Html ??> a, Html ?> b) => a -> b -> (Html :@: a) b
+ Html.Element: html_A :: ( 'Html <?> a) b => a -> b -> ( 'Html :@: a) b
- Html.Element: i_ :: (I ?> a) => a -> I > a
+ Html.Element: i_ :: ( 'I ?> a) => a -> 'I > a
- Html.Element: i_A :: (I ??> a, I ?> b) => a -> b -> (I :@: a) b
+ Html.Element: i_A :: ( 'I <?> a) b => a -> b -> ( 'I :@: a) b
- Html.Element: iframe_ :: Iframe > ()
+ Html.Element: iframe_ :: 'Iframe > ()
- Html.Element: iframe_A :: Iframe ??> a => a -> (Iframe :@: a) ()
+ Html.Element: iframe_A :: ( 'Iframe <?> a) () => a -> ( 'Iframe :@: a) ()
- Html.Element: image_ :: (Image ?> a) => a -> Image > a
+ Html.Element: image_ :: ( 'Image ?> a) => a -> 'Image > a
- Html.Element: image_A :: (Image ??> a, Image ?> b) => a -> b -> (Image :@: a) b
+ Html.Element: image_A :: ( 'Image <?> a) b => a -> b -> ( 'Image :@: a) b
- Html.Element: img_ :: Img > ()
+ Html.Element: img_ :: 'Img > ()
- Html.Element: img_A :: Img ??> a => a -> (Img :@: a) ()
+ Html.Element: img_A :: ( 'Img <?> a) () => a -> ( 'Img :@: a) ()
- Html.Element: input_ :: (Input ?> a) => a -> Input > a
+ Html.Element: input_ :: ( 'Input ?> a) => a -> 'Input > a
- Html.Element: input_A :: (Input ??> a, Input ?> b) => a -> b -> (Input :@: a) b
+ Html.Element: input_A :: ( 'Input <?> a) b => a -> b -> ( 'Input :@: a) b
- Html.Element: ins_ :: (Ins ?> a) => a -> Ins > a
+ Html.Element: ins_ :: ( 'Ins ?> a) => a -> 'Ins > a
- Html.Element: ins_A :: (Ins ??> a, Ins ?> b) => a -> b -> (Ins :@: a) b
+ Html.Element: ins_A :: ( 'Ins <?> a) b => a -> b -> ( 'Ins :@: a) b
- Html.Element: isindex_ :: (Isindex ?> a) => a -> Isindex > a
+ Html.Element: isindex_ :: ( 'Isindex ?> a) => a -> 'Isindex > a
- Html.Element: isindex_A :: (Isindex ??> a, Isindex ?> b) => a -> b -> (Isindex :@: a) b
+ Html.Element: isindex_A :: ( 'Isindex <?> a) b => a -> b -> ( 'Isindex :@: a) b
- Html.Element: kbd_ :: (Kbd ?> a) => a -> Kbd > a
+ Html.Element: kbd_ :: ( 'Kbd ?> a) => a -> 'Kbd > a
- Html.Element: kbd_A :: (Kbd ??> a, Kbd ?> b) => a -> b -> (Kbd :@: a) b
+ Html.Element: kbd_A :: ( 'Kbd <?> a) b => a -> b -> ( 'Kbd :@: a) b
- Html.Element: keygen_ :: (Keygen ?> a) => a -> Keygen > a
+ Html.Element: keygen_ :: ( 'Keygen ?> a) => a -> 'Keygen > a
- Html.Element: keygen_A :: (Keygen ??> a, Keygen ?> b) => a -> b -> (Keygen :@: a) b
+ Html.Element: keygen_A :: ( 'Keygen <?> a) b => a -> b -> ( 'Keygen :@: a) b
- Html.Element: label_ :: (Label ?> a) => a -> Label > a
+ Html.Element: label_ :: ( 'Label ?> a) => a -> 'Label > a
- Html.Element: label_A :: (Label ??> a, Label ?> b) => a -> b -> (Label :@: a) b
+ Html.Element: label_A :: ( 'Label <?> a) b => a -> b -> ( 'Label :@: a) b
- Html.Element: legend_ :: (Legend ?> a) => a -> Legend > a
+ Html.Element: legend_ :: ( 'Legend ?> a) => a -> 'Legend > a
- Html.Element: legend_A :: (Legend ??> a, Legend ?> b) => a -> b -> (Legend :@: a) b
+ Html.Element: legend_A :: ( 'Legend <?> a) b => a -> b -> ( 'Legend :@: a) b
- Html.Element: li_ :: (Li ?> a) => a -> Li > a
+ Html.Element: li_ :: ( 'Li ?> a) => a -> 'Li > a
- Html.Element: li_A :: (Li ??> a, Li ?> b) => a -> b -> (Li :@: a) b
+ Html.Element: li_A :: ( 'Li <?> a) b => a -> b -> ( 'Li :@: a) b
- Html.Element: link_ :: Link > ()
+ Html.Element: link_ :: 'Link > ()
- Html.Element: link_A :: Link ??> a => a -> (Link :@: a) ()
+ Html.Element: link_A :: ( 'Link <?> a) () => a -> ( 'Link :@: a) ()
- Html.Element: listing_ :: (Listing ?> a) => a -> Listing > a
+ Html.Element: listing_ :: ( 'Listing ?> a) => a -> 'Listing > a
- Html.Element: listing_A :: (Listing ??> a, Listing ?> b) => a -> b -> (Listing :@: a) b
+ Html.Element: listing_A :: ( 'Listing <?> a) b => a -> b -> ( 'Listing :@: a) b
- Html.Element: main_ :: (Main ?> a) => a -> Main > a
+ Html.Element: main_ :: ( 'Main ?> a) => a -> 'Main > a
- Html.Element: main_A :: (Main ??> a, Main ?> b) => a -> b -> (Main :@: a) b
+ Html.Element: main_A :: ( 'Main <?> a) b => a -> b -> ( 'Main :@: a) b
- Html.Element: map_ :: (Map ?> a) => a -> Map > a
+ Html.Element: map_ :: ( 'Map ?> a) => a -> 'Map > a
- Html.Element: map_A :: (Map ??> a, Map ?> b) => a -> b -> (Map :@: a) b
+ Html.Element: map_A :: ( 'Map <?> a) b => a -> b -> ( 'Map :@: a) b
- Html.Element: mark_ :: (Mark ?> a) => a -> Mark > a
+ Html.Element: mark_ :: ( 'Mark ?> a) => a -> 'Mark > a
- Html.Element: mark_A :: (Mark ??> a, Mark ?> b) => a -> b -> (Mark :@: a) b
+ Html.Element: mark_A :: ( 'Mark <?> a) b => a -> b -> ( 'Mark :@: a) b
- Html.Element: marquee_ :: (Marquee ?> a) => a -> Marquee > a
+ Html.Element: marquee_ :: ( 'Marquee ?> a) => a -> 'Marquee > a
- Html.Element: marquee_A :: (Marquee ??> a, Marquee ?> b) => a -> b -> (Marquee :@: a) b
+ Html.Element: marquee_A :: ( 'Marquee <?> a) b => a -> b -> ( 'Marquee :@: a) b
- Html.Element: math_ :: (Math ?> a) => a -> Math > a
+ Html.Element: math_ :: ( 'Math ?> a) => a -> 'Math > a
- Html.Element: math_A :: (Math ??> a, Math ?> b) => a -> b -> (Math :@: a) b
+ Html.Element: math_A :: ( 'Math <?> a) b => a -> b -> ( 'Math :@: a) b
- Html.Element: menu_ :: (Menu ?> a) => a -> Menu > a
+ Html.Element: menu_ :: ( 'Menu ?> a) => a -> 'Menu > a
- Html.Element: menu_A :: (Menu ??> a, Menu ?> b) => a -> b -> (Menu :@: a) b
+ Html.Element: menu_A :: ( 'Menu <?> a) b => a -> b -> ( 'Menu :@: a) b
- Html.Element: menuitem_ :: Menuitem > ()
+ Html.Element: menuitem_ :: 'Menuitem > ()
- Html.Element: menuitem_A :: Menuitem ??> a => a -> (Menuitem :@: a) ()
+ Html.Element: menuitem_A :: ( 'Menuitem <?> a) () => a -> ( 'Menuitem :@: a) ()
- Html.Element: meta_ :: Meta > ()
+ Html.Element: meta_ :: 'Meta > ()
- Html.Element: meta_A :: Meta ??> a => a -> (Meta :@: a) ()
+ Html.Element: meta_A :: ( 'Meta <?> a) () => a -> ( 'Meta :@: a) ()
- Html.Element: meter_ :: (Meter ?> a) => a -> Meter > a
+ Html.Element: meter_ :: ( 'Meter ?> a) => a -> 'Meter > a
- Html.Element: meter_A :: (Meter ??> a, Meter ?> b) => a -> b -> (Meter :@: a) b
+ Html.Element: meter_A :: ( 'Meter <?> a) b => a -> b -> ( 'Meter :@: a) b
- Html.Element: multicol_ :: (Multicol ?> a) => a -> Multicol > a
+ Html.Element: multicol_ :: ( 'Multicol ?> a) => a -> 'Multicol > a
- Html.Element: multicol_A :: (Multicol ??> a, Multicol ?> b) => a -> b -> (Multicol :@: a) b
+ Html.Element: multicol_A :: ( 'Multicol <?> a) b => a -> b -> ( 'Multicol :@: a) b
- Html.Element: nav_ :: (Nav ?> a) => a -> Nav > a
+ Html.Element: nav_ :: ( 'Nav ?> a) => a -> 'Nav > a
- Html.Element: nav_A :: (Nav ??> a, Nav ?> b) => a -> b -> (Nav :@: a) b
+ Html.Element: nav_A :: ( 'Nav <?> a) b => a -> b -> ( 'Nav :@: a) b
- Html.Element: nextid_ :: (Nextid ?> a) => a -> Nextid > a
+ Html.Element: nextid_ :: ( 'Nextid ?> a) => a -> 'Nextid > a
- Html.Element: nextid_A :: (Nextid ??> a, Nextid ?> b) => a -> b -> (Nextid :@: a) b
+ Html.Element: nextid_A :: ( 'Nextid <?> a) b => a -> b -> ( 'Nextid :@: a) b
- Html.Element: nobr_ :: (Nobr ?> a) => a -> Nobr > a
+ Html.Element: nobr_ :: ( 'Nobr ?> a) => a -> 'Nobr > a
- Html.Element: nobr_A :: (Nobr ??> a, Nobr ?> b) => a -> b -> (Nobr :@: a) b
+ Html.Element: nobr_A :: ( 'Nobr <?> a) b => a -> b -> ( 'Nobr :@: a) b
- Html.Element: noembed_ :: (Noembed ?> a) => a -> Noembed > a
+ Html.Element: noembed_ :: ( 'Noembed ?> a) => a -> 'Noembed > a
- Html.Element: noembed_A :: (Noembed ??> a, Noembed ?> b) => a -> b -> (Noembed :@: a) b
+ Html.Element: noembed_A :: ( 'Noembed <?> a) b => a -> b -> ( 'Noembed :@: a) b
- Html.Element: noframes_ :: (Noframes ?> a) => a -> Noframes > a
+ Html.Element: noframes_ :: ( 'Noframes ?> a) => a -> 'Noframes > a
- Html.Element: noframes_A :: (Noframes ??> a, Noframes ?> b) => a -> b -> (Noframes :@: a) b
+ Html.Element: noframes_A :: ( 'Noframes <?> a) b => a -> b -> ( 'Noframes :@: a) b
- Html.Element: noscript_ :: (Noscript ?> a) => a -> Noscript > a
+ Html.Element: noscript_ :: ( 'Noscript ?> a) => a -> 'Noscript > a
- Html.Element: noscript_A :: (Noscript ??> a, Noscript ?> b) => a -> b -> (Noscript :@: a) b
+ Html.Element: noscript_A :: ( 'Noscript <?> a) b => a -> b -> ( 'Noscript :@: a) b
- Html.Element: object_ :: (Object ?> a) => a -> Object > a
+ Html.Element: object_ :: ( 'Object ?> a) => a -> 'Object > a
- Html.Element: object_A :: (Object ??> a, Object ?> b) => a -> b -> (Object :@: a) b
+ Html.Element: object_A :: ( 'Object <?> a) b => a -> b -> ( 'Object :@: a) b
- Html.Element: ol_ :: (Ol ?> a) => a -> Ol > a
+ Html.Element: ol_ :: ( 'Ol ?> a) => a -> 'Ol > a
- Html.Element: ol_A :: (Ol ??> a, Ol ?> b) => a -> b -> (Ol :@: a) b
+ Html.Element: ol_A :: ( 'Ol <?> a) b => a -> b -> ( 'Ol :@: a) b
- Html.Element: optgroup_ :: (Optgroup ?> a) => a -> Optgroup > a
+ Html.Element: optgroup_ :: ( 'Optgroup ?> a) => a -> 'Optgroup > a
- Html.Element: optgroup_A :: (Optgroup ??> a, Optgroup ?> b) => a -> b -> (Optgroup :@: a) b
+ Html.Element: optgroup_A :: ( 'Optgroup <?> a) b => a -> b -> ( 'Optgroup :@: a) b
- Html.Element: option_ :: (Option ?> a) => a -> Option > a
+ Html.Element: option_ :: ( 'Option ?> a) => a -> 'Option > a
- Html.Element: option_A :: (Option ??> a, Option ?> b) => a -> b -> (Option :@: a) b
+ Html.Element: option_A :: ( 'Option <?> a) b => a -> b -> ( 'Option :@: a) b
- Html.Element: output_ :: (Output ?> a) => a -> Output > a
+ Html.Element: output_ :: ( 'Output ?> a) => a -> 'Output > a
- Html.Element: output_A :: (Output ??> a, Output ?> b) => a -> b -> (Output :@: a) b
+ Html.Element: output_A :: ( 'Output <?> a) b => a -> b -> ( 'Output :@: a) b
- Html.Element: p_ :: (P ?> a) => a -> P > a
+ Html.Element: p_ :: ( 'P ?> a) => a -> 'P > a
- Html.Element: p_A :: (P ??> a, P ?> b) => a -> b -> (P :@: a) b
+ Html.Element: p_A :: ( 'P <?> a) b => a -> b -> ( 'P :@: a) b
- Html.Element: param_ :: Param > ()
+ Html.Element: param_ :: 'Param > ()
- Html.Element: param_A :: Param ??> a => a -> (Param :@: a) ()
+ Html.Element: param_A :: ( 'Param <?> a) () => a -> ( 'Param :@: a) ()
- Html.Element: picture_ :: (Picture ?> a) => a -> Picture > a
+ Html.Element: picture_ :: ( 'Picture ?> a) => a -> 'Picture > a
- Html.Element: picture_A :: (Picture ??> a, Picture ?> b) => a -> b -> (Picture :@: a) b
+ Html.Element: picture_A :: ( 'Picture <?> a) b => a -> b -> ( 'Picture :@: a) b
- Html.Element: plaintext_ :: (Plaintext ?> a) => a -> Plaintext > a
+ Html.Element: plaintext_ :: ( 'Plaintext ?> a) => a -> 'Plaintext > a
- Html.Element: plaintext_A :: (Plaintext ??> a, Plaintext ?> b) => a -> b -> (Plaintext :@: a) b
+ Html.Element: plaintext_A :: ( 'Plaintext <?> a) b => a -> b -> ( 'Plaintext :@: a) b
- Html.Element: pre_ :: (Pre ?> a) => a -> Pre > a
+ Html.Element: pre_ :: ( 'Pre ?> a) => a -> 'Pre > a
- Html.Element: pre_A :: (Pre ??> a, Pre ?> b) => a -> b -> (Pre :@: a) b
+ Html.Element: pre_A :: ( 'Pre <?> a) b => a -> b -> ( 'Pre :@: a) b
- Html.Element: progress_ :: (Progress ?> a) => a -> Progress > a
+ Html.Element: progress_ :: ( 'Progress ?> a) => a -> 'Progress > a
- Html.Element: progress_A :: (Progress ??> a, Progress ?> b) => a -> b -> (Progress :@: a) b
+ Html.Element: progress_A :: ( 'Progress <?> a) b => a -> b -> ( 'Progress :@: a) b
- Html.Element: q_ :: (Q ?> a) => a -> Q > a
+ Html.Element: q_ :: ( 'Q ?> a) => a -> 'Q > a
- Html.Element: q_A :: (Q ??> a, Q ?> b) => a -> b -> (Q :@: a) b
+ Html.Element: q_A :: ( 'Q <?> a) b => a -> b -> ( 'Q :@: a) b
- Html.Element: rp_ :: (Rp ?> a) => a -> Rp > a
+ Html.Element: rp_ :: ( 'Rp ?> a) => a -> 'Rp > a
- Html.Element: rp_A :: (Rp ??> a, Rp ?> b) => a -> b -> (Rp :@: a) b
+ Html.Element: rp_A :: ( 'Rp <?> a) b => a -> b -> ( 'Rp :@: a) b
- Html.Element: rt_ :: (Rt ?> a) => a -> Rt > a
+ Html.Element: rt_ :: ( 'Rt ?> a) => a -> 'Rt > a
- Html.Element: rt_A :: (Rt ??> a, Rt ?> b) => a -> b -> (Rt :@: a) b
+ Html.Element: rt_A :: ( 'Rt <?> a) b => a -> b -> ( 'Rt :@: a) b
- Html.Element: rtc_ :: (Rtc ?> a) => a -> Rtc > a
+ Html.Element: rtc_ :: ( 'Rtc ?> a) => a -> 'Rtc > a
- Html.Element: rtc_A :: (Rtc ??> a, Rtc ?> b) => a -> b -> (Rtc :@: a) b
+ Html.Element: rtc_A :: ( 'Rtc <?> a) b => a -> b -> ( 'Rtc :@: a) b
- Html.Element: ruby_ :: (Ruby ?> a) => a -> Ruby > a
+ Html.Element: ruby_ :: ( 'Ruby ?> a) => a -> 'Ruby > a
- Html.Element: ruby_A :: (Ruby ??> a, Ruby ?> b) => a -> b -> (Ruby :@: a) b
+ Html.Element: ruby_A :: ( 'Ruby <?> a) b => a -> b -> ( 'Ruby :@: a) b
- Html.Element: s_ :: (S ?> a) => a -> S > a
+ Html.Element: s_ :: ( 'S ?> a) => a -> 'S > a
- Html.Element: s_A :: (S ??> a, S ?> b) => a -> b -> (S :@: a) b
+ Html.Element: s_A :: ( 'S <?> a) b => a -> b -> ( 'S :@: a) b
- Html.Element: samp_ :: (Samp ?> a) => a -> Samp > a
+ Html.Element: samp_ :: ( 'Samp ?> a) => a -> 'Samp > a
- Html.Element: samp_A :: (Samp ??> a, Samp ?> b) => a -> b -> (Samp :@: a) b
+ Html.Element: samp_A :: ( 'Samp <?> a) b => a -> b -> ( 'Samp :@: a) b
- Html.Element: script_ :: (Script ?> a) => a -> Script > a
+ Html.Element: script_ :: ( 'Script ?> a) => a -> 'Script > a
- Html.Element: script_A :: (Script ??> a, Script ?> b) => a -> b -> (Script :@: a) b
+ Html.Element: script_A :: ( 'Script <?> a) b => a -> b -> ( 'Script :@: a) b
- Html.Element: section_ :: (Section ?> a) => a -> Section > a
+ Html.Element: section_ :: ( 'Section ?> a) => a -> 'Section > a
- Html.Element: section_A :: (Section ??> a, Section ?> b) => a -> b -> (Section :@: a) b
+ Html.Element: section_A :: ( 'Section <?> a) b => a -> b -> ( 'Section :@: a) b
- Html.Element: select_ :: (Select ?> a) => a -> Select > a
+ Html.Element: select_ :: ( 'Select ?> a) => a -> 'Select > a
- Html.Element: select_A :: (Select ??> a, Select ?> b) => a -> b -> (Select :@: a) b
+ Html.Element: select_A :: ( 'Select <?> a) b => a -> b -> ( 'Select :@: a) b
- Html.Element: shadow_ :: (Shadow ?> a) => a -> Shadow > a
+ Html.Element: shadow_ :: ( 'Shadow ?> a) => a -> 'Shadow > a
- Html.Element: shadow_A :: (Shadow ??> a, Shadow ?> b) => a -> b -> (Shadow :@: a) b
+ Html.Element: shadow_A :: ( 'Shadow <?> a) b => a -> b -> ( 'Shadow :@: a) b
- Html.Element: slot_ :: (Slot ?> a) => a -> Slot > a
+ Html.Element: slot_ :: ( 'Slot ?> a) => a -> 'Slot > a
- Html.Element: slot_A :: (Slot ??> a, Slot ?> b) => a -> b -> (Slot :@: a) b
+ Html.Element: slot_A :: ( 'Slot <?> a) b => a -> b -> ( 'Slot :@: a) b
- Html.Element: small_ :: (Small ?> a) => a -> Small > a
+ Html.Element: small_ :: ( 'Small ?> a) => a -> 'Small > a
- Html.Element: small_A :: (Small ??> a, Small ?> b) => a -> b -> (Small :@: a) b
+ Html.Element: small_A :: ( 'Small <?> a) b => a -> b -> ( 'Small :@: a) b
- Html.Element: source_ :: Source > ()
+ Html.Element: source_ :: 'Source > ()
- Html.Element: source_A :: Source ??> a => a -> (Source :@: a) ()
+ Html.Element: source_A :: ( 'Source <?> a) () => a -> ( 'Source :@: a) ()
- Html.Element: spacer_ :: (Spacer ?> a) => a -> Spacer > a
+ Html.Element: spacer_ :: ( 'Spacer ?> a) => a -> 'Spacer > a
- Html.Element: spacer_A :: (Spacer ??> a, Spacer ?> b) => a -> b -> (Spacer :@: a) b
+ Html.Element: spacer_A :: ( 'Spacer <?> a) b => a -> b -> ( 'Spacer :@: a) b
- Html.Element: span_ :: (Span ?> a) => a -> Span > a
+ Html.Element: span_ :: ( 'Span ?> a) => a -> 'Span > a
- Html.Element: span_A :: (Span ??> a, Span ?> b) => a -> b -> (Span :@: a) b
+ Html.Element: span_A :: ( 'Span <?> a) b => a -> b -> ( 'Span :@: a) b
- Html.Element: strike_ :: (Strike ?> a) => a -> Strike > a
+ Html.Element: strike_ :: ( 'Strike ?> a) => a -> 'Strike > a
- Html.Element: strike_A :: (Strike ??> a, Strike ?> b) => a -> b -> (Strike :@: a) b
+ Html.Element: strike_A :: ( 'Strike <?> a) b => a -> b -> ( 'Strike :@: a) b
- Html.Element: strong_ :: (Strong ?> a) => a -> Strong > a
+ Html.Element: strong_ :: ( 'Strong ?> a) => a -> 'Strong > a
- Html.Element: strong_A :: (Strong ??> a, Strong ?> b) => a -> b -> (Strong :@: a) b
+ Html.Element: strong_A :: ( 'Strong <?> a) b => a -> b -> ( 'Strong :@: a) b
- Html.Element: style_ :: (Style ?> a) => a -> Style > a
+ Html.Element: style_ :: ( 'Style ?> a) => a -> 'Style > a
- Html.Element: style_A :: (Style ??> a, Style ?> b) => a -> b -> (Style :@: a) b
+ Html.Element: style_A :: ( 'Style <?> a) b => a -> b -> ( 'Style :@: a) b
- Html.Element: sub_ :: (Sub ?> a) => a -> Sub > a
+ Html.Element: sub_ :: ( 'Sub ?> a) => a -> 'Sub > a
- Html.Element: sub_A :: (Sub ??> a, Sub ?> b) => a -> b -> (Sub :@: a) b
+ Html.Element: sub_A :: ( 'Sub <?> a) b => a -> b -> ( 'Sub :@: a) b
- Html.Element: summary_ :: (Summary ?> a) => a -> Summary > a
+ Html.Element: summary_ :: ( 'Summary ?> a) => a -> 'Summary > a
- Html.Element: summary_A :: (Summary ??> a, Summary ?> b) => a -> b -> (Summary :@: a) b
+ Html.Element: summary_A :: ( 'Summary <?> a) b => a -> b -> ( 'Summary :@: a) b
- Html.Element: sup_ :: (Sup ?> a) => a -> Sup > a
+ Html.Element: sup_ :: ( 'Sup ?> a) => a -> 'Sup > a
- Html.Element: sup_A :: (Sup ??> a, Sup ?> b) => a -> b -> (Sup :@: a) b
+ Html.Element: sup_A :: ( 'Sup <?> a) b => a -> b -> ( 'Sup :@: a) b
- Html.Element: svg_ :: (Svg ?> a) => a -> Svg > a
+ Html.Element: svg_ :: ( 'Svg ?> a) => a -> 'Svg > a
- Html.Element: svg_A :: (Svg ??> a, Svg ?> b) => a -> b -> (Svg :@: a) b
+ Html.Element: svg_A :: ( 'Svg <?> a) b => a -> b -> ( 'Svg :@: a) b
- Html.Element: table_ :: (Table ?> a) => a -> Table > a
+ Html.Element: table_ :: ( 'Table ?> a) => a -> 'Table > a
- Html.Element: table_A :: (Table ??> a, Table ?> b) => a -> b -> (Table :@: a) b
+ Html.Element: table_A :: ( 'Table <?> a) b => a -> b -> ( 'Table :@: a) b
- Html.Element: tbody_ :: (Tbody ?> a) => a -> Tbody > a
+ Html.Element: tbody_ :: ( 'Tbody ?> a) => a -> 'Tbody > a
- Html.Element: tbody_A :: (Tbody ??> a, Tbody ?> b) => a -> b -> (Tbody :@: a) b
+ Html.Element: tbody_A :: ( 'Tbody <?> a) b => a -> b -> ( 'Tbody :@: a) b
- Html.Element: td_ :: (Td ?> a) => a -> Td > a
+ Html.Element: td_ :: ( 'Td ?> a) => a -> 'Td > a
- Html.Element: td_A :: (Td ??> a, Td ?> b) => a -> b -> (Td :@: a) b
+ Html.Element: td_A :: ( 'Td <?> a) b => a -> b -> ( 'Td :@: a) b
- Html.Element: template_ :: (Template ?> a) => a -> Template > a
+ Html.Element: template_ :: ( 'Template ?> a) => a -> 'Template > a
- Html.Element: template_A :: (Template ??> a, Template ?> b) => a -> b -> (Template :@: a) b
+ Html.Element: template_A :: ( 'Template <?> a) b => a -> b -> ( 'Template :@: a) b
- Html.Element: textarea_ :: (Textarea ?> a) => a -> Textarea > a
+ Html.Element: textarea_ :: ( 'Textarea ?> a) => a -> 'Textarea > a
- Html.Element: textarea_A :: (Textarea ??> a, Textarea ?> b) => a -> b -> (Textarea :@: a) b
+ Html.Element: textarea_A :: ( 'Textarea <?> a) b => a -> b -> ( 'Textarea :@: a) b
- Html.Element: tfoot_ :: (Tfoot ?> a) => a -> Tfoot > a
+ Html.Element: tfoot_ :: ( 'Tfoot ?> a) => a -> 'Tfoot > a
- Html.Element: tfoot_A :: (Tfoot ??> a, Tfoot ?> b) => a -> b -> (Tfoot :@: a) b
+ Html.Element: tfoot_A :: ( 'Tfoot <?> a) b => a -> b -> ( 'Tfoot :@: a) b
- Html.Element: th_ :: (Th ?> a) => a -> Th > a
+ Html.Element: th_ :: ( 'Th ?> a) => a -> 'Th > a
- Html.Element: th_A :: (Th ??> a, Th ?> b) => a -> b -> (Th :@: a) b
+ Html.Element: th_A :: ( 'Th <?> a) b => a -> b -> ( 'Th :@: a) b
- Html.Element: thead_ :: (Thead ?> a) => a -> Thead > a
+ Html.Element: thead_ :: ( 'Thead ?> a) => a -> 'Thead > a
- Html.Element: thead_A :: (Thead ??> a, Thead ?> b) => a -> b -> (Thead :@: a) b
+ Html.Element: thead_A :: ( 'Thead <?> a) b => a -> b -> ( 'Thead :@: a) b
- Html.Element: time_ :: (Time ?> a) => a -> Time > a
+ Html.Element: time_ :: ( 'Time ?> a) => a -> 'Time > a
- Html.Element: time_A :: (Time ??> a, Time ?> b) => a -> b -> (Time :@: a) b
+ Html.Element: time_A :: ( 'Time <?> a) b => a -> b -> ( 'Time :@: a) b
- Html.Element: title_ :: (Title ?> a) => a -> Title > a
+ Html.Element: title_ :: ( 'Title ?> a) => a -> 'Title > a
- Html.Element: title_A :: (Title ??> a, Title ?> b) => a -> b -> (Title :@: a) b
+ Html.Element: title_A :: ( 'Title <?> a) b => a -> b -> ( 'Title :@: a) b
- Html.Element: tr_ :: (Tr ?> a) => a -> Tr > a
+ Html.Element: tr_ :: ( 'Tr ?> a) => a -> 'Tr > a
- Html.Element: tr_A :: (Tr ??> a, Tr ?> b) => a -> b -> (Tr :@: a) b
+ Html.Element: tr_A :: ( 'Tr <?> a) b => a -> b -> ( 'Tr :@: a) b
- Html.Element: track_ :: Track > ()
+ Html.Element: track_ :: 'Track > ()
- Html.Element: track_A :: Track ??> a => a -> (Track :@: a) ()
+ Html.Element: track_A :: ( 'Track <?> a) () => a -> ( 'Track :@: a) ()
- Html.Element: tt_ :: (Tt ?> a) => a -> Tt > a
+ Html.Element: tt_ :: ( 'Tt ?> a) => a -> 'Tt > a
- Html.Element: tt_A :: (Tt ??> a, Tt ?> b) => a -> b -> (Tt :@: a) b
+ Html.Element: tt_A :: ( 'Tt <?> a) b => a -> b -> ( 'Tt :@: a) b
- Html.Element: u_ :: (U ?> a) => a -> U > a
+ Html.Element: u_ :: ( 'U ?> a) => a -> 'U > a
- Html.Element: u_A :: (U ??> a, U ?> b) => a -> b -> (U :@: a) b
+ Html.Element: u_A :: ( 'U <?> a) b => a -> b -> ( 'U :@: a) b
- Html.Element: ul_ :: (Ul ?> a) => a -> Ul > a
+ Html.Element: ul_ :: ( 'Ul ?> a) => a -> 'Ul > a
- Html.Element: ul_A :: (Ul ??> a, Ul ?> b) => a -> b -> (Ul :@: a) b
+ Html.Element: ul_A :: ( 'Ul <?> a) b => a -> b -> ( 'Ul :@: a) b
- Html.Element: var_ :: (Var ?> a) => a -> Var > a
+ Html.Element: var_ :: ( 'Var ?> a) => a -> 'Var > a
- Html.Element: var_A :: (Var ??> a, Var ?> b) => a -> b -> (Var :@: a) b
+ Html.Element: var_A :: ( 'Var <?> a) b => a -> b -> ( 'Var :@: a) b
- Html.Element: video_ :: (Video ?> a) => a -> Video > a
+ Html.Element: video_ :: ( 'Video ?> a) => a -> 'Video > a
- Html.Element: video_A :: (Video ??> a, Video ?> b) => a -> b -> (Video :@: a) b
+ Html.Element: video_A :: ( 'Video <?> a) b => a -> b -> ( 'Video :@: a) b
- Html.Element: wbr_ :: Wbr > ()
+ Html.Element: wbr_ :: 'Wbr > ()
- Html.Element: wbr_A :: Wbr ??> a => a -> (Wbr :@: a) ()
+ Html.Element: wbr_A :: ( 'Wbr <?> a) () => a -> ( 'Wbr :@: a) ()
- Html.Element: xmp_ :: (Xmp ?> a) => a -> Xmp > a
+ Html.Element: xmp_ :: ( 'Xmp ?> a) => a -> 'Xmp > a
- Html.Element: xmp_A :: (Xmp ??> a, Xmp ?> b) => a -> b -> (Xmp :@: a) b
+ Html.Element: xmp_A :: ( 'Xmp <?> a) b => a -> b -> ( 'Xmp :@: a) b
- Html.Type: [WithAttributes] :: (a ??> b, a ?> c) => b -> c -> (a :@: b) c
+ Html.Type: [WithAttributes] :: (a <?> b) c => b -> c -> (a :@: b) c
- Html.Type: type (>) a b = (:@:) a () b
+ Html.Type: type (<?>) p a b = (Check Attribute p a, Check Element p b)

Files

ChangeLog.md view
@@ -1,5 +1,10 @@ # Revision history for type-of-html +## 1.3.1.0  -- 2017-12-28++* internal cleanup+* make constraints more concise+ ## 1.3.0.0  -- 2017-12-12  * add Either
src/Html.hs view
@@ -55,5 +55,6 @@ -- | Orphan show instances to faciliate ghci development. instance                     Document ((a :@: b) c) => Show ((a :@: b) c) where show = renderString instance {-# OVERLAPPING #-} Document ((a :@: b) c) => Show [(a :@: b) c] where show = renderString+instance                     Document (a := b)      => Show (a := b)      where show = renderString instance                     Document (a # b)       => Show (a # b)       where show = renderString instance {-# OVERLAPPING #-} Document (a # b)       => Show [a # b]       where show = renderString
src/Html/Attribute.hs view
@@ -389,5 +389,5 @@ wrap_ :: a -> 'WrapA := a wrap_ = AT -addAttributes :: (a ??> (b # b'), a ?> c) => b' -> (a :@: b) c -> (a :@: (b # b')) c+addAttributes :: (a <?> (b # b')) c => b' -> (a :@: b) c -> (a :@: (b # b')) c addAttributes b' (WithAttributes b c) = WithAttributes (b # b') c
src/Html/Convert.hs view
@@ -34,7 +34,7 @@ newtype Converted = Converted {unConv :: B.Builder} deriving (M.Monoid,S.Semigroup) instance IsString Converted where fromString = convert -{-| Convert a type efficienctly to different string like types.  Add+{-| Convert a type efficienctly to a renderable representation.  Add   instances if you want use custom types in your document.  @@@ -75,58 +75,25 @@ class Convert a where   convert :: a -> Converted -instance Convert () where-  {-# INLINE convert #-}-  convert _ = mempty-instance Convert (Raw Char) where-  {-# INLINE convert #-}-  convert (Raw c) = Converted (B.charUtf8 c)-instance Convert (Raw String) where-  {-# INLINE convert #-}-  convert (Raw x) = stringConvRaw x-instance Convert (Raw T.Text) where-  {-# INLINE convert #-}-  convert (Raw x) = Converted (T.encodeUtf8Builder x)-instance Convert (Raw TL.Text) where-  {-# INLINE convert #-}-  convert (Raw x) = Converted (TL.encodeUtf8Builder x)-instance Convert (Raw B.Builder) where-  {-# INLINE convert #-}-  convert (Raw x) = Converted x-instance Convert Char where-  {-# INLINE convert #-}-  convert = Converted . BP.primBounded escapeUtf8-instance Convert String where-  {-# INLINE convert #-}-  convert = stringConv-instance Convert T.Text where-  {-# INLINE convert #-}-  convert = Converted . T.encodeUtf8BuilderEscaped escape-instance Convert TL.Text where-  {-# INLINE convert #-}-  convert = Converted . TL.encodeUtf8BuilderEscaped escape-instance Convert Int where-  {-# INLINE convert #-}-  convert = Converted . B.intDec-instance Convert Integer where-  {-# INLINE convert #-}-  convert = Converted . B.integerDec-instance Convert Natural where-  {-# INLINE convert #-}-  convert = Converted . B.integerDec . fromIntegral-instance Convert Float where-  {-# INLINE convert #-}-  convert = Converted . U.byteStringCopy . toShortest . realToFrac-instance Convert Double where-  {-# INLINE convert #-}-  convert = Converted . U.byteStringCopy . toShortest-instance Convert Word where-  {-# INLINE convert #-}-  convert = Converted . B.wordDec-instance KnownSymbol a => Convert (Proxy a) where-  {-# INLINE convert #-}-  convert = Converted . U.byteStringCopy . fromString . symbolVal+instance KnownSymbol a => Convert (Proxy a) where {-# INLINE convert #-}; convert = Converted . U.byteStringCopy . fromString . symbolVal +instance Convert ()              where {-# INLINE convert #-}; convert = const mempty+instance Convert (Raw Char)      where {-# INLINE convert #-}; convert = Converted . B.charUtf8 . fromRaw+instance Convert (Raw String)    where {-# INLINE convert #-}; convert = stringConvRaw . fromRaw+instance Convert (Raw T.Text)    where {-# INLINE convert #-}; convert = Converted . T.encodeUtf8Builder . fromRaw+instance Convert (Raw TL.Text)   where {-# INLINE convert #-}; convert = Converted . TL.encodeUtf8Builder . fromRaw+instance Convert (Raw B.Builder) where {-# INLINE convert #-}; convert = Converted . fromRaw+instance Convert Char            where {-# INLINE convert #-}; convert = Converted . BP.primBounded escapeUtf8+instance Convert String          where {-# INLINE convert #-}; convert = stringConv+instance Convert T.Text          where {-# INLINE convert #-}; convert = Converted . T.encodeUtf8BuilderEscaped escape+instance Convert TL.Text         where {-# INLINE convert #-}; convert = Converted . TL.encodeUtf8BuilderEscaped escape+instance Convert Int             where {-# INLINE convert #-}; convert = Converted . B.intDec+instance Convert Integer         where {-# INLINE convert #-}; convert = Converted . B.integerDec+instance Convert Natural         where {-# INLINE convert #-}; convert = Converted . B.integerDec . fromIntegral+instance Convert Float           where {-# INLINE convert #-}; convert = Converted . U.byteStringCopy . toShortest . realToFrac+instance Convert Double          where {-# INLINE convert #-}; convert = Converted . U.byteStringCopy . toShortest+instance Convert Word            where {-# INLINE convert #-}; convert = Converted . B.wordDec+ {-# INLINE builderCString# #-} builderCString# :: BP.BoundedPrim Word8 -> Addr# -> Converted builderCString# bp addr = Converted $ BP.primUnfoldrBounded bp go 0@@ -184,17 +151,13 @@       BP.word8 BP.>*< BP.word8 BP.>*< BP.word8 BP.>*< BP.word8 BP.>*< BP.word8  {-# RULES "CONVERTED literal" forall a.-    stringConv (unpackCString# a)-      = builderCString# escape a #-}+    stringConv (unpackCString# a) = builderCString# escape a #-}  {-# RULES "CONVERTED literal raw" forall a.-    stringConvRaw (unpackCString# a)-      = builderCString# (BP.liftFixedToBounded BP.word8) a #-}+    stringConvRaw (unpackCString# a) = builderCString# (BP.liftFixedToBounded BP.word8) a #-}  {-# RULES "CONVERTED literal utf8" forall a.-    stringConv (unpackCStringUtf8# a)-      = convert (T.pack (unpackCStringUtf8# a)) #-}+    stringConv (unpackCStringUtf8# a) = convert (T.pack (unpackCStringUtf8# a)) #-}  {-# RULES "CONVERTED literal utf8 raw" forall a.-    stringConvRaw (unpackCStringUtf8# a)-      = convert (Raw (T.pack (unpackCStringUtf8# a))) #-}+    stringConvRaw (unpackCStringUtf8# a) = convert (Raw (T.pack (unpackCStringUtf8# a))) #-}
src/Html/Element.hs view
@@ -13,875 +13,875 @@ a_ :: ('A ?> a) => a -> 'A > a a_ = WithAttributes () -a_A :: ('A ??> a, 'A ?> b) => a -> b -> ('A :@: a) b+a_A :: ('A <?> a) b => a -> b -> ('A :@: a) b a_A = WithAttributes  abbr_ :: ('Abbr ?> a) => a -> 'Abbr > a abbr_ = WithAttributes () -abbr_A :: ('Abbr ??> a, 'Abbr ?> b) => a -> b -> ('Abbr :@: a) b+abbr_A :: ('Abbr <?> a) b => a -> b -> ('Abbr :@: a) b abbr_A = WithAttributes  acronym_ :: ('Acronym ?> a) => a -> 'Acronym > a acronym_ = WithAttributes () -acronym_A :: ('Acronym ??> a, 'Acronym ?> b) => a -> b -> ('Acronym :@: a) b+acronym_A :: ('Acronym <?> a) b  => a -> b -> ('Acronym :@: a) b acronym_A = WithAttributes  address_ :: ('Address ?> a) => a -> 'Address > a address_ = WithAttributes () -address_A :: ('Address ??> a, 'Address ?> b) => a -> b -> ('Address :@: a) b+address_A :: ('Address <?> a) b  => a -> b -> ('Address :@: a) b address_A = WithAttributes  applet_ :: ('Applet ?> a) => a -> 'Applet > a applet_ = WithAttributes () -applet_A :: ('Applet ??> a, 'Applet ?> b) => a -> b -> ('Applet :@: a) b+applet_A :: ('Applet <?> a) b  => a -> b -> ('Applet :@: a) b applet_A = WithAttributes  area_ :: 'Area > () area_ = WithAttributes () () -area_A :: 'Area ??> a => a -> ('Area :@: a) ()+area_A :: ('Area <?> a) () => a -> ('Area :@: a) () area_A = flip WithAttributes ()  article_ :: ('Article ?> a) => a -> 'Article > a article_ = WithAttributes () -article_A :: ('Article ??> a, 'Article ?> b) => a -> b -> ('Article :@: a) b+article_A :: ('Article <?> a) b => a -> b -> ('Article :@: a) b article_A = WithAttributes  aside_ :: ('Aside ?> a) => a -> 'Aside > a aside_ = WithAttributes () -aside_A :: ('Aside ??> a, 'Aside ?> b) => a -> b -> ('Aside :@: a) b+aside_A :: ('Aside <?> a) b => a -> b -> ('Aside :@: a) b aside_A = WithAttributes  audio_ :: ('Audio ?> a) => a -> 'Audio > a audio_ = WithAttributes () -audio_A :: ('Audio ??> a, 'Audio ?> b) => a -> b -> ('Audio :@: a) b+audio_A :: ('Audio <?> a) b => a -> b -> ('Audio :@: a) b audio_A = WithAttributes  b_ :: ('B ?> a) => a -> 'B > a b_ = WithAttributes () -b_A :: ('B ??> a, 'B ?> b) => a -> b -> ('B :@: a) b+b_A :: ('B <?> a) b => a -> b -> ('B :@: a) b b_A = WithAttributes  base_ :: 'Base > () base_ = WithAttributes () () -base_A :: 'Base ??> a => a -> ('Base :@: a) ()+base_A :: ('Base <?> a) () => a -> ('Base :@: a) () base_A = flip WithAttributes ()  basefont_ :: ('Basefont ?> a) => a -> 'Basefont > a basefont_ = WithAttributes () -basefont_A :: ('Basefont ??> a, 'Basefont ?> b) => a -> b -> ('Basefont :@: a) b+basefont_A :: ('Basefont <?> a) b => a -> b -> ('Basefont :@: a) b basefont_A = WithAttributes  bdi_ :: ('Bdi ?> a) => a -> 'Bdi > a bdi_ = WithAttributes () -bdi_A :: ('Bdi ??> a, 'Bdi ?> b) => a -> b -> ('Bdi :@: a) b+bdi_A :: ('Bdi <?> a) b => a -> b -> ('Bdi :@: a) b bdi_A = WithAttributes  bdo_ :: ('Bdo ?> a) => a -> 'Bdo > a bdo_ = WithAttributes () -bdo_A :: ('Bdo ??> a, 'Bdo ?> b) => a -> b -> ('Bdo :@: a) b+bdo_A :: ('Bdo <?> a) b => a -> b -> ('Bdo :@: a) b bdo_A = WithAttributes  bgsound_ :: ('Bgsound ?> a) => a -> 'Bgsound > a bgsound_ = WithAttributes () -bgsound_A :: ('Bgsound ??> a, 'Bgsound ?> b) => a -> b -> ('Bgsound :@: a) b+bgsound_A :: ('Bgsound <?> a) b => a -> b -> ('Bgsound :@: a) b bgsound_A = WithAttributes  big_ :: ('Big ?> a) => a -> 'Big > a big_ = WithAttributes () -big_A :: ('Big ??> a, 'Big ?> b) => a -> b -> ('Big :@: a) b+big_A :: ('Big <?> a) b => a -> b -> ('Big :@: a) b big_A = WithAttributes  blink_ :: ('Blink ?> a) => a -> 'Blink > a blink_ = WithAttributes () -blink_A :: ('Blink ??> a, 'Blink ?> b) => a -> b -> ('Blink :@: a) b+blink_A :: ('Blink <?> a) b => a -> b -> ('Blink :@: a) b blink_A = WithAttributes  blockquote_ :: ('Blockquote ?> a) => a -> 'Blockquote > a blockquote_ = WithAttributes () -blockquote_A :: ('Blockquote ??> a, 'Blockquote ?> b) => a -> b -> ('Blockquote :@: a) b+blockquote_A :: ('Blockquote <?> a) b => a -> b -> ('Blockquote :@: a) b blockquote_A = WithAttributes  body_ :: ('Body ?> a) => a -> 'Body > a body_ = WithAttributes () -body_A :: ('Body ??> a, 'Body ?> b) => a -> b -> ('Body :@: a) b+body_A :: ('Body <?> a) b => a -> b -> ('Body :@: a) b body_A = WithAttributes  br_ :: 'Br > () br_ = WithAttributes () () -br_A :: 'Br ??> a => a -> ('Br :@: a) ()+br_A :: ('Br <?> a) () => a -> ('Br :@: a) () br_A = flip WithAttributes ()  button_ :: ('Button ?> a) => a -> 'Button > a button_ = WithAttributes () -button_A :: ('Button ??> a, 'Button ?> b) => a -> b -> ('Button :@: a) b+button_A :: ('Button <?> a) b => a -> b -> ('Button :@: a) b button_A = WithAttributes  canvas_ :: ('Canvas ?> a) => a -> 'Canvas > a canvas_ = WithAttributes () -canvas_A :: ('Canvas ??> a, 'Canvas ?> b) => a -> b -> ('Canvas :@: a) b+canvas_A :: ('Canvas <?> a) b => a -> b -> ('Canvas :@: a) b canvas_A = WithAttributes  caption_ :: ('Caption ?> a) => a -> 'Caption > a caption_ = WithAttributes () -caption_A :: ('Caption ??> a, 'Caption ?> b) => a -> b -> ('Caption :@: a) b+caption_A :: ('Caption <?> a) b => a -> b -> ('Caption :@: a) b caption_A = WithAttributes  center_ :: ('Center ?> a) => a -> 'Center > a center_ = WithAttributes () -center_A :: ('Center ??> a, 'Center ?> b) => a -> b -> ('Center :@: a) b+center_A :: ('Center <?> a) b => a -> b -> ('Center :@: a) b center_A = WithAttributes  cite_ :: ('Cite ?> a) => a -> 'Cite > a cite_ = WithAttributes () -cite_A :: ('Cite ??> a, 'Cite ?> b) => a -> b -> ('Cite :@: a) b+cite_A :: ('Cite <?> a) b => a -> b -> ('Cite :@: a) b cite_A = WithAttributes  code_ :: ('Code ?> a) => a -> 'Code > a code_ = WithAttributes () -code_A :: ('Code ??> a, 'Code ?> b) => a -> b -> ('Code :@: a) b+code_A :: ('Code <?> a) b => a -> b -> ('Code :@: a) b code_A = WithAttributes  col_ :: 'Col > () col_ = WithAttributes () () -col_A :: 'Col ??> a => a -> ('Col :@: a) ()+col_A :: ('Col <?> a) () => a -> ('Col :@: a) () col_A = flip WithAttributes ()  colgroup_ :: ('Colgroup ?> a) => a -> 'Colgroup > a colgroup_ = WithAttributes () -colgroup_A :: ('Colgroup ??> a, 'Colgroup ?> b) => a -> b -> ('Colgroup :@: a) b+colgroup_A :: ('Colgroup <?> a) b => a -> b -> ('Colgroup :@: a) b colgroup_A = WithAttributes  command_ :: ('Command ?> a) => a -> 'Command > a command_ = WithAttributes () -command_A :: ('Command ??> a, 'Command ?> b) => a -> b -> ('Command :@: a) b+command_A :: ('Command <?> a) b => a -> b -> ('Command :@: a) b command_A = WithAttributes  content_ :: ('Content ?> a) => a -> 'Content > a content_ = WithAttributes () -content_A :: ('Content ??> a, 'Content ?> b) => a -> b -> ('Content :@: a) b+content_A :: ('Content <?> a) b => a -> b -> ('Content :@: a) b content_A = WithAttributes  data_ :: ('Data ?> a) => a -> 'Data > a data_ = WithAttributes () -data_A :: ('Data ??> a, 'Data ?> b) => a -> b -> ('Data :@: a) b+data_A :: ('Data <?> a) b => a -> b -> ('Data :@: a) b data_A = WithAttributes  datalist_ :: ('Datalist ?> a) => a -> 'Datalist > a datalist_ = WithAttributes () -datalist_A :: ('Datalist ??> a, 'Datalist ?> b) => a -> b -> ('Datalist :@: a) b+datalist_A :: ('Datalist <?> a) b => a -> b -> ('Datalist :@: a) b datalist_A = WithAttributes  dd_ :: ('Dd ?> a) => a -> 'Dd > a dd_ = WithAttributes () -dd_A :: ('Dd ??> a, 'Dd ?> b) => a -> b -> ('Dd :@: a) b+dd_A :: ('Dd <?> a) b => a -> b -> ('Dd :@: a) b dd_A = WithAttributes  del_ :: ('Del ?> a) => a -> 'Del > a del_ = WithAttributes () -del_A :: ('Del ??> a, 'Del ?> b) => a -> b -> ('Del :@: a) b+del_A :: ('Del <?> a) b => a -> b -> ('Del :@: a) b del_A = WithAttributes  details_ :: ('Details ?> a) => a -> 'Details > a details_ = WithAttributes () -details_A :: ('Details ??> a, 'Details ?> b) => a -> b -> ('Details :@: a) b+details_A :: ('Details <?> a) b => a -> b -> ('Details :@: a) b details_A = WithAttributes  dfn_ :: ('Dfn ?> a) => a -> 'Dfn > a dfn_ = WithAttributes () -dfn_A :: ('Dfn ??> a, 'Dfn ?> b) => a -> b -> ('Dfn :@: a) b+dfn_A :: ('Dfn <?> a) b => a -> b -> ('Dfn :@: a) b dfn_A = WithAttributes  dialog_ :: ('Dialog ?> a) => a -> 'Dialog > a dialog_ = WithAttributes () -dialog_A :: ('Dialog ??> a, 'Dialog ?> b) => a -> b -> ('Dialog :@: a) b+dialog_A :: ('Dialog <?> a) b => a -> b -> ('Dialog :@: a) b dialog_A = WithAttributes  dir_ :: ('Dir ?> a) => a -> 'Dir > a dir_ = WithAttributes () -dir_A :: ('Dir ??> a, 'Dir ?> b) => a -> b -> ('Dir :@: a) b+dir_A :: ('Dir <?> a) b => a -> b -> ('Dir :@: a) b dir_A = WithAttributes  div_ :: ('Div ?> a) => a -> 'Div > a div_ = WithAttributes () -div_A :: ('Div ??> a, 'Div ?> b) => a -> b -> ('Div :@: a) b+div_A :: ('Div <?> a) b => a -> b -> ('Div :@: a) b div_A = WithAttributes  dl_ :: ('Dl ?> a) => a -> 'Dl > a dl_ = WithAttributes () -dl_A :: ('Dl ??> a, 'Dl ?> b) => a -> b -> ('Dl :@: a) b+dl_A :: ('Dl <?> a) b => a -> b -> ('Dl :@: a) b dl_A = WithAttributes  dt_ :: ('Dt ?> a) => a -> 'Dt > a dt_ = WithAttributes () -dt_A :: ('Dt ??> a, 'Dt ?> b) => a -> b -> ('Dt :@: a) b+dt_A :: ('Dt <?> a) b => a -> b -> ('Dt :@: a) b dt_A = WithAttributes  element_ :: ('Element ?> a) => a -> 'Element > a element_ = WithAttributes () -element_A :: ('Element ??> a, 'Element ?> b) => a -> b -> ('Element :@: a) b+element_A :: ('Element <?> a) b => a -> b -> ('Element :@: a) b element_A = WithAttributes  em_ :: ('Em ?> a) => a -> 'Em > a em_ = WithAttributes () -em_A :: ('Em ??> a, 'Em ?> b) => a -> b -> ('Em :@: a) b+em_A :: ('Em <?> a) b => a -> b -> ('Em :@: a) b em_A = WithAttributes  embed_ :: 'Embed > () embed_ = WithAttributes () () -embed_A :: 'Embed ??> a => a -> ('Embed :@: a) ()+embed_A :: ('Embed <?> a) () => a -> ('Embed :@: a) () embed_A = flip WithAttributes ()  fieldset_ :: ('Fieldset ?> a) => a -> 'Fieldset > a fieldset_ = WithAttributes () -fieldset_A :: ('Fieldset ??> a, 'Fieldset ?> b) => a -> b -> ('Fieldset :@: a) b+fieldset_A :: ('Fieldset <?> a) b => a -> b -> ('Fieldset :@: a) b fieldset_A = WithAttributes  figcaption_ :: ('Figcaption ?> a) => a -> 'Figcaption > a figcaption_ = WithAttributes () -figcaption_A :: ('Figcaption ??> a, 'Figcaption ?> b) => a -> b -> ('Figcaption :@: a) b+figcaption_A :: ('Figcaption <?> a) b => a -> b -> ('Figcaption :@: a) b figcaption_A = WithAttributes  figure_ :: ('Figure ?> a) => a -> 'Figure > a figure_ = WithAttributes () -figure_A :: ('Figure ??> a, 'Figure ?> b) => a -> b -> ('Figure :@: a) b+figure_A :: ('Figure <?> a) b => a -> b -> ('Figure :@: a) b figure_A = WithAttributes  font_ :: ('Font ?> a) => a -> 'Font > a font_ = WithAttributes () -font_A :: ('Font ??> a, 'Font ?> b) => a -> b -> ('Font :@: a) b+font_A :: ('Font <?> a) b => a -> b -> ('Font :@: a) b font_A = WithAttributes  footer_ :: ('Footer ?> a) => a -> 'Footer > a footer_ = WithAttributes () -footer_A :: ('Footer ??> a, 'Footer ?> b) => a -> b -> ('Footer :@: a) b+footer_A :: ('Footer <?> a) b => a -> b -> ('Footer :@: a) b footer_A = WithAttributes  form_ :: ('Form ?> a) => a -> 'Form > a form_ = WithAttributes () -form_A :: ('Form ??> a, 'Form ?> b) => a -> b -> ('Form :@: a) b+form_A :: ('Form <?> a) b => a -> b -> ('Form :@: a) b form_A = WithAttributes  frame_ :: ('Frame ?> a) => a -> 'Frame > a frame_ = WithAttributes () -frame_A :: ('Frame ??> a, 'Frame ?> b) => a -> b -> ('Frame :@: a) b+frame_A :: ('Frame <?> a) b => a -> b -> ('Frame :@: a) b frame_A = WithAttributes  frameset_ :: ('Frameset ?> a) => a -> 'Frameset > a frameset_ = WithAttributes () -frameset_A :: ('Frameset ??> a, 'Frameset ?> b) => a -> b -> ('Frameset :@: a) b+frameset_A :: ('Frameset <?> a) b => a -> b -> ('Frameset :@: a) b frameset_A = WithAttributes  h1_ :: ('H1 ?> a) => a -> 'H1 > a h1_ = WithAttributes () -h1_A :: ('H1 ??> a, 'H1 ?> b) => a -> b -> ('H1 :@: a) b+h1_A :: ('H1 <?> a) b => a -> b -> ('H1 :@: a) b h1_A = WithAttributes  h2_ :: ('H2 ?> a) => a -> 'H2 > a h2_ = WithAttributes () -h2_A :: ('H2 ??> a, 'H2 ?> b) => a -> b -> ('H2 :@: a) b+h2_A :: ('H2 <?> a) b => a -> b -> ('H2 :@: a) b h2_A = WithAttributes  h3_ :: ('H3 ?> a) => a -> 'H3 > a h3_ = WithAttributes () -h3_A :: ('H3 ??> a, 'H3 ?> b) => a -> b -> ('H3 :@: a) b+h3_A :: ('H3 <?> a) b => a -> b -> ('H3 :@: a) b h3_A = WithAttributes  h4_ :: ('H4 ?> a) => a -> 'H4 > a h4_ = WithAttributes () -h4_A :: ('H4 ??> a, 'H4 ?> b) => a -> b -> ('H4 :@: a) b+h4_A :: ('H4 <?> a) b => a -> b -> ('H4 :@: a) b h4_A = WithAttributes  h5_ :: ('H5 ?> a) => a -> 'H5 > a h5_ = WithAttributes () -h5_A :: ('H5 ??> a, 'H5 ?> b) => a -> b -> ('H5 :@: a) b+h5_A :: ('H5 <?> a) b => a -> b -> ('H5 :@: a) b h5_A = WithAttributes  h6_ :: ('H6 ?> a) => a -> 'H6 > a h6_ = WithAttributes () -h6_A :: ('H6 ??> a, 'H6 ?> b) => a -> b -> ('H6 :@: a) b+h6_A :: ('H6 <?> a) b => a -> b -> ('H6 :@: a) b h6_A = WithAttributes  head_ :: ('Head ?> a) => a -> 'Head > a head_ = WithAttributes () -head_A :: ('Head ??> a, 'Head ?> b) => a -> b -> ('Head :@: a) b+head_A :: ('Head <?> a) b => a -> b -> ('Head :@: a) b head_A = WithAttributes  header_ :: ('Header ?> a) => a -> 'Header > a header_ = WithAttributes () -header_A :: ('Header ??> a, 'Header ?> b) => a -> b -> ('Header :@: a) b+header_A :: ('Header <?> a) b => a -> b -> ('Header :@: a) b header_A = WithAttributes  hgroup_ :: ('Hgroup ?> a) => a -> 'Hgroup > a hgroup_ = WithAttributes () -hgroup_A :: ('Hgroup ??> a, 'Hgroup ?> b) => a -> b -> ('Hgroup :@: a) b+hgroup_A :: ('Hgroup <?> a) b => a -> b -> ('Hgroup :@: a) b hgroup_A = WithAttributes  hr_ :: 'Hr > () hr_ = WithAttributes () () -hr_A :: 'Hr ??> a => a -> ('Hr :@: a) ()+hr_A :: ('Hr <?> a) () => a -> ('Hr :@: a) () hr_A = flip WithAttributes ()  html_ :: ('Html ?> a) => a -> 'Html > a html_ = WithAttributes () -html_A :: ('Html ??> a, 'Html ?> b) => a -> b -> ('Html :@: a) b+html_A :: ('Html <?> a) b => a -> b -> ('Html :@: a) b html_A = WithAttributes  i_ :: ('I ?> a) => a -> 'I > a i_ = WithAttributes () -i_A :: ('I ??> a, 'I ?> b) => a -> b -> ('I :@: a) b+i_A :: ('I <?> a) b => a -> b -> ('I :@: a) b i_A = WithAttributes  iframe_ :: 'Iframe > () iframe_ = WithAttributes () () -iframe_A :: 'Iframe ??> a => a -> ('Iframe :@: a) ()+iframe_A :: ('Iframe <?> a) () => a -> ('Iframe :@: a) () iframe_A = flip WithAttributes ()  image_ :: ('Image ?> a) => a -> 'Image > a image_ = WithAttributes () -image_A :: ('Image ??> a, 'Image ?> b) => a -> b -> ('Image :@: a) b+image_A :: ('Image <?> a) b => a -> b -> ('Image :@: a) b image_A = WithAttributes  img_ :: 'Img > () img_ = WithAttributes () () -img_A :: 'Img ??> a => a -> ('Img :@: a) ()+img_A :: ('Img <?> a) () => a -> ('Img :@: a) () img_A = flip WithAttributes ()  input_ :: ('Input ?> a) => a -> 'Input > a input_ = WithAttributes () -input_A :: ('Input ??> a, 'Input ?> b) => a -> b -> ('Input :@: a) b+input_A :: ('Input <?> a) b => a -> b -> ('Input :@: a) b input_A = WithAttributes  ins_ :: ('Ins ?> a) => a -> 'Ins > a ins_ = WithAttributes () -ins_A :: ('Ins ??> a, 'Ins ?> b) => a -> b -> ('Ins :@: a) b+ins_A :: ('Ins <?> a) b => a -> b -> ('Ins :@: a) b ins_A = WithAttributes  isindex_ :: ('Isindex ?> a) => a -> 'Isindex > a isindex_ = WithAttributes () -isindex_A :: ('Isindex ??> a, 'Isindex ?> b) => a -> b -> ('Isindex :@: a) b+isindex_A :: ('Isindex <?> a) b => a -> b -> ('Isindex :@: a) b isindex_A = WithAttributes  kbd_ :: ('Kbd ?> a) => a -> 'Kbd > a kbd_ = WithAttributes () -kbd_A :: ('Kbd ??> a, 'Kbd ?> b) => a -> b -> ('Kbd :@: a) b+kbd_A :: ('Kbd <?> a) b => a -> b -> ('Kbd :@: a) b kbd_A = WithAttributes  keygen_ :: ('Keygen ?> a) => a -> 'Keygen > a keygen_ = WithAttributes () -keygen_A :: ('Keygen ??> a, 'Keygen ?> b) => a -> b -> ('Keygen :@: a) b+keygen_A :: ('Keygen <?> a) b => a -> b -> ('Keygen :@: a) b keygen_A = WithAttributes  label_ :: ('Label ?> a) => a -> 'Label > a label_ = WithAttributes () -label_A :: ('Label ??> a, 'Label ?> b) => a -> b -> ('Label :@: a) b+label_A :: ('Label <?> a) b => a -> b -> ('Label :@: a) b label_A = WithAttributes  legend_ :: ('Legend ?> a) => a -> 'Legend > a legend_ = WithAttributes () -legend_A :: ('Legend ??> a, 'Legend ?> b) => a -> b -> ('Legend :@: a) b+legend_A :: ('Legend <?> a) b => a -> b -> ('Legend :@: a) b legend_A = WithAttributes  li_ :: ('Li ?> a) => a -> 'Li > a li_ = WithAttributes () -li_A :: ('Li ??> a, 'Li ?> b) => a -> b -> ('Li :@: a) b+li_A :: ('Li <?> a) b => a -> b -> ('Li :@: a) b li_A = WithAttributes  link_ :: 'Link > () link_ = WithAttributes () () -link_A :: 'Link ??> a => a -> ('Link :@: a) ()+link_A :: ('Link <?> a) () => a -> ('Link :@: a) () link_A = flip WithAttributes ()  listing_ :: ('Listing ?> a) => a -> 'Listing > a listing_ = WithAttributes () -listing_A :: ('Listing ??> a, 'Listing ?> b) => a -> b -> ('Listing :@: a) b+listing_A :: ('Listing <?> a) b => a -> b -> ('Listing :@: a) b listing_A = WithAttributes  main_ :: ('Main ?> a) => a -> 'Main > a main_ = WithAttributes () -main_A :: ('Main ??> a, 'Main ?> b) => a -> b -> ('Main :@: a) b+main_A :: ('Main <?> a) b => a -> b -> ('Main :@: a) b main_A = WithAttributes  map_ :: ('Map ?> a) => a -> 'Map > a map_ = WithAttributes () -map_A :: ('Map ??> a, 'Map ?> b) => a -> b -> ('Map :@: a) b+map_A :: ('Map <?> a) b => a -> b -> ('Map :@: a) b map_A = WithAttributes  mark_ :: ('Mark ?> a) => a -> 'Mark > a mark_ = WithAttributes () -mark_A :: ('Mark ??> a, 'Mark ?> b) => a -> b -> ('Mark :@: a) b+mark_A :: ('Mark <?> a) b => a -> b -> ('Mark :@: a) b mark_A = WithAttributes  marquee_ :: ('Marquee ?> a) => a -> 'Marquee > a marquee_ = WithAttributes () -marquee_A :: ('Marquee ??> a, 'Marquee ?> b) => a -> b -> ('Marquee :@: a) b+marquee_A :: ('Marquee <?> a) b => a -> b -> ('Marquee :@: a) b marquee_A = WithAttributes  math_ :: ('Math ?> a) => a -> 'Math > a math_ = WithAttributes () -math_A :: ('Math ??> a, 'Math ?> b) => a -> b -> ('Math :@: a) b+math_A :: ('Math <?> a) b => a -> b -> ('Math :@: a) b math_A = WithAttributes  menu_ :: ('Menu ?> a) => a -> 'Menu > a menu_ = WithAttributes () -menu_A :: ('Menu ??> a, 'Menu ?> b) => a -> b -> ('Menu :@: a) b+menu_A :: ('Menu <?> a) b => a -> b -> ('Menu :@: a) b menu_A = WithAttributes  menuitem_ :: 'Menuitem > () menuitem_ = WithAttributes () () -menuitem_A :: 'Menuitem ??> a => a -> ('Menuitem :@: a) ()+menuitem_A :: ('Menuitem <?> a) () => a -> ('Menuitem :@: a) () menuitem_A = flip WithAttributes ()  meta_ :: 'Meta > () meta_ = WithAttributes () () -meta_A :: 'Meta ??> a => a -> ('Meta :@: a) ()+meta_A :: ('Meta <?> a) () => a -> ('Meta :@: a) () meta_A = flip WithAttributes ()  meter_ :: ('Meter ?> a) => a -> 'Meter > a meter_ = WithAttributes () -meter_A :: ('Meter ??> a, 'Meter ?> b) => a -> b -> ('Meter :@: a) b+meter_A :: ('Meter <?> a) b => a -> b -> ('Meter :@: a) b meter_A = WithAttributes  multicol_ :: ('Multicol ?> a) => a -> 'Multicol > a multicol_ = WithAttributes () -multicol_A :: ('Multicol ??> a, 'Multicol ?> b) => a -> b -> ('Multicol :@: a) b+multicol_A :: ('Multicol <?> a) b => a -> b -> ('Multicol :@: a) b multicol_A = WithAttributes  nav_ :: ('Nav ?> a) => a -> 'Nav > a nav_ = WithAttributes () -nav_A :: ('Nav ??> a, 'Nav ?> b) => a -> b -> ('Nav :@: a) b+nav_A :: ('Nav <?> a) b => a -> b -> ('Nav :@: a) b nav_A = WithAttributes  nextid_ :: ('Nextid ?> a) => a -> 'Nextid > a nextid_ = WithAttributes () -nextid_A :: ('Nextid ??> a, 'Nextid ?> b) => a -> b -> ('Nextid :@: a) b+nextid_A :: ('Nextid <?> a) b => a -> b -> ('Nextid :@: a) b nextid_A = WithAttributes  nobr_ :: ('Nobr ?> a) => a -> 'Nobr > a nobr_ = WithAttributes () -nobr_A :: ('Nobr ??> a, 'Nobr ?> b) => a -> b -> ('Nobr :@: a) b+nobr_A :: ('Nobr <?> a) b => a -> b -> ('Nobr :@: a) b nobr_A = WithAttributes  noembed_ :: ('Noembed ?> a) => a -> 'Noembed > a noembed_ = WithAttributes () -noembed_A :: ('Noembed ??> a, 'Noembed ?> b) => a -> b -> ('Noembed :@: a) b+noembed_A :: ('Noembed <?> a) b => a -> b -> ('Noembed :@: a) b noembed_A = WithAttributes  noframes_ :: ('Noframes ?> a) => a -> 'Noframes > a noframes_ = WithAttributes () -noframes_A :: ('Noframes ??> a, 'Noframes ?> b) => a -> b -> ('Noframes :@: a) b+noframes_A :: ('Noframes <?> a) b => a -> b -> ('Noframes :@: a) b noframes_A = WithAttributes  noscript_ :: ('Noscript ?> a) => a -> 'Noscript > a noscript_ = WithAttributes () -noscript_A :: ('Noscript ??> a, 'Noscript ?> b) => a -> b -> ('Noscript :@: a) b+noscript_A :: ('Noscript <?> a) b => a -> b -> ('Noscript :@: a) b noscript_A = WithAttributes  object_ :: ('Object ?> a) => a -> 'Object > a object_ = WithAttributes () -object_A :: ('Object ??> a, 'Object ?> b) => a -> b -> ('Object :@: a) b+object_A :: ('Object <?> a) b => a -> b -> ('Object :@: a) b object_A = WithAttributes  ol_ :: ('Ol ?> a) => a -> 'Ol > a ol_ = WithAttributes () -ol_A :: ('Ol ??> a, 'Ol ?> b) => a -> b -> ('Ol :@: a) b+ol_A :: ('Ol <?> a) b => a -> b -> ('Ol :@: a) b ol_A = WithAttributes  optgroup_ :: ('Optgroup ?> a) => a -> 'Optgroup > a optgroup_ = WithAttributes () -optgroup_A :: ('Optgroup ??> a, 'Optgroup ?> b) => a -> b -> ('Optgroup :@: a) b+optgroup_A :: ('Optgroup <?> a) b => a -> b -> ('Optgroup :@: a) b optgroup_A = WithAttributes  option_ :: ('Option ?> a) => a -> 'Option > a option_ = WithAttributes () -option_A :: ('Option ??> a, 'Option ?> b) => a -> b -> ('Option :@: a) b+option_A :: ('Option <?> a) b => a -> b -> ('Option :@: a) b option_A = WithAttributes  output_ :: ('Output ?> a) => a -> 'Output > a output_ = WithAttributes () -output_A :: ('Output ??> a, 'Output ?> b) => a -> b -> ('Output :@: a) b+output_A :: ('Output <?> a) b => a -> b -> ('Output :@: a) b output_A = WithAttributes  p_ :: ('P ?> a) => a -> 'P > a p_ = WithAttributes () -p_A :: ('P ??> a, 'P ?> b) => a -> b -> ('P :@: a) b+p_A :: ('P <?> a) b => a -> b -> ('P :@: a) b p_A = WithAttributes  param_ :: 'Param > () param_ = WithAttributes () () -param_A :: 'Param ??> a => a -> ('Param :@: a) ()+param_A :: ('Param <?> a) () => a -> ('Param :@: a) () param_A = flip WithAttributes ()  picture_ :: ('Picture ?> a) => a -> 'Picture > a picture_ = WithAttributes () -picture_A :: ('Picture ??> a, 'Picture ?> b) => a -> b -> ('Picture :@: a) b+picture_A :: ('Picture <?> a) b => a -> b -> ('Picture :@: a) b picture_A = WithAttributes  plaintext_ :: ('Plaintext ?> a) => a -> 'Plaintext > a plaintext_ = WithAttributes () -plaintext_A :: ('Plaintext ??> a, 'Plaintext ?> b) => a -> b -> ('Plaintext :@: a) b+plaintext_A :: ('Plaintext <?> a) b => a -> b -> ('Plaintext :@: a) b plaintext_A = WithAttributes  pre_ :: ('Pre ?> a) => a -> 'Pre > a pre_ = WithAttributes () -pre_A :: ('Pre ??> a, 'Pre ?> b) => a -> b -> ('Pre :@: a) b+pre_A :: ('Pre <?> a) b => a -> b -> ('Pre :@: a) b pre_A = WithAttributes  progress_ :: ('Progress ?> a) => a -> 'Progress > a progress_ = WithAttributes () -progress_A :: ('Progress ??> a, 'Progress ?> b) => a -> b -> ('Progress :@: a) b+progress_A :: ('Progress <?> a) b => a -> b -> ('Progress :@: a) b progress_A = WithAttributes  q_ :: ('Q ?> a) => a -> 'Q > a q_ = WithAttributes () -q_A :: ('Q ??> a, 'Q ?> b) => a -> b -> ('Q :@: a) b+q_A :: ('Q <?> a) b => a -> b -> ('Q :@: a) b q_A = WithAttributes  rp_ :: ('Rp ?> a) => a -> 'Rp > a rp_ = WithAttributes () -rp_A :: ('Rp ??> a, 'Rp ?> b) => a -> b -> ('Rp :@: a) b+rp_A :: ('Rp <?> a) b => a -> b -> ('Rp :@: a) b rp_A = WithAttributes  rt_ :: ('Rt ?> a) => a -> 'Rt > a rt_ = WithAttributes () -rt_A :: ('Rt ??> a, 'Rt ?> b) => a -> b -> ('Rt :@: a) b+rt_A :: ('Rt <?> a) b => a -> b -> ('Rt :@: a) b rt_A = WithAttributes  rtc_ :: ('Rtc ?> a) => a -> 'Rtc > a rtc_ = WithAttributes () -rtc_A :: ('Rtc ??> a, 'Rtc ?> b) => a -> b -> ('Rtc :@: a) b+rtc_A :: ('Rtc <?> a) b => a -> b -> ('Rtc :@: a) b rtc_A = WithAttributes  ruby_ :: ('Ruby ?> a) => a -> 'Ruby > a ruby_ = WithAttributes () -ruby_A :: ('Ruby ??> a, 'Ruby ?> b) => a -> b -> ('Ruby :@: a) b+ruby_A :: ('Ruby <?> a) b => a -> b -> ('Ruby :@: a) b ruby_A = WithAttributes  s_ :: ('S ?> a) => a -> 'S > a s_ = WithAttributes () -s_A :: ('S ??> a, 'S ?> b) => a -> b -> ('S :@: a) b+s_A :: ('S <?> a) b => a -> b -> ('S :@: a) b s_A = WithAttributes  samp_ :: ('Samp ?> a) => a -> 'Samp > a samp_ = WithAttributes () -samp_A :: ('Samp ??> a, 'Samp ?> b) => a -> b -> ('Samp :@: a) b+samp_A :: ('Samp <?> a) b => a -> b -> ('Samp :@: a) b samp_A = WithAttributes  script_ :: ('Script ?> a) => a -> 'Script > a script_ = WithAttributes () -script_A :: ('Script ??> a, 'Script ?> b) => a -> b -> ('Script :@: a) b+script_A :: ('Script <?> a) b => a -> b -> ('Script :@: a) b script_A = WithAttributes  section_ :: ('Section ?> a) => a -> 'Section > a section_ = WithAttributes () -section_A :: ('Section ??> a, 'Section ?> b) => a -> b -> ('Section :@: a) b+section_A :: ('Section <?> a) b => a -> b -> ('Section :@: a) b section_A = WithAttributes  select_ :: ('Select ?> a) => a -> 'Select > a select_ = WithAttributes () -select_A :: ('Select ??> a, 'Select ?> b) => a -> b -> ('Select :@: a) b+select_A :: ('Select <?> a) b => a -> b -> ('Select :@: a) b select_A = WithAttributes  shadow_ :: ('Shadow ?> a) => a -> 'Shadow > a shadow_ = WithAttributes () -shadow_A :: ('Shadow ??> a, 'Shadow ?> b) => a -> b -> ('Shadow :@: a) b+shadow_A :: ('Shadow <?> a) b => a -> b -> ('Shadow :@: a) b shadow_A = WithAttributes  slot_ :: ('Slot ?> a) => a -> 'Slot > a slot_ = WithAttributes () -slot_A :: ('Slot ??> a, 'Slot ?> b) => a -> b -> ('Slot :@: a) b+slot_A :: ('Slot <?> a) b => a -> b -> ('Slot :@: a) b slot_A = WithAttributes  small_ :: ('Small ?> a) => a -> 'Small > a small_ = WithAttributes () -small_A :: ('Small ??> a, 'Small ?> b) => a -> b -> ('Small :@: a) b+small_A :: ('Small <?> a) b => a -> b -> ('Small :@: a) b small_A = WithAttributes  source_ :: 'Source > () source_ = WithAttributes () () -source_A :: 'Source ??> a => a -> ('Source :@: a) ()+source_A :: ('Source <?> a) () => a -> ('Source :@: a) () source_A = flip WithAttributes ()  spacer_ :: ('Spacer ?> a) => a -> 'Spacer > a spacer_ = WithAttributes () -spacer_A :: ('Spacer ??> a, 'Spacer ?> b) => a -> b -> ('Spacer :@: a) b+spacer_A :: ('Spacer <?> a) b => a -> b -> ('Spacer :@: a) b spacer_A = WithAttributes  span_ :: ('Span ?> a) => a -> 'Span > a span_ = WithAttributes () -span_A :: ('Span ??> a, 'Span ?> b) => a -> b -> ('Span :@: a) b+span_A :: ('Span <?> a) b => a -> b -> ('Span :@: a) b span_A = WithAttributes  strike_ :: ('Strike ?> a) => a -> 'Strike > a strike_ = WithAttributes () -strike_A :: ('Strike ??> a, 'Strike ?> b) => a -> b -> ('Strike :@: a) b+strike_A :: ('Strike <?> a) b => a -> b -> ('Strike :@: a) b strike_A = WithAttributes  strong_ :: ('Strong ?> a) => a -> 'Strong > a strong_ = WithAttributes () -strong_A :: ('Strong ??> a, 'Strong ?> b) => a -> b -> ('Strong :@: a) b+strong_A :: ('Strong <?> a) b => a -> b -> ('Strong :@: a) b strong_A = WithAttributes  style_ :: ('Style ?> a) => a -> 'Style > a style_ = WithAttributes () -style_A :: ('Style ??> a, 'Style ?> b) => a -> b -> ('Style :@: a) b+style_A :: ('Style <?> a) b => a -> b -> ('Style :@: a) b style_A = WithAttributes  sub_ :: ('Sub ?> a) => a -> 'Sub > a sub_ = WithAttributes () -sub_A :: ('Sub ??> a, 'Sub ?> b) => a -> b -> ('Sub :@: a) b+sub_A :: ('Sub <?> a) b => a -> b -> ('Sub :@: a) b sub_A = WithAttributes  summary_ :: ('Summary ?> a) => a -> 'Summary > a summary_ = WithAttributes () -summary_A :: ('Summary ??> a, 'Summary ?> b) => a -> b -> ('Summary :@: a) b+summary_A :: ('Summary <?> a) b => a -> b -> ('Summary :@: a) b summary_A = WithAttributes  sup_ :: ('Sup ?> a) => a -> 'Sup > a sup_ = WithAttributes () -sup_A :: ('Sup ??> a, 'Sup ?> b) => a -> b -> ('Sup :@: a) b+sup_A :: ('Sup <?> a) b => a -> b -> ('Sup :@: a) b sup_A = WithAttributes  svg_ :: ('Svg ?> a) => a -> 'Svg > a svg_ = WithAttributes () -svg_A :: ('Svg ??> a, 'Svg ?> b) => a -> b -> ('Svg :@: a) b+svg_A :: ('Svg <?> a) b => a -> b -> ('Svg :@: a) b svg_A = WithAttributes  table_ :: ('Table ?> a) => a -> 'Table > a table_ = WithAttributes () -table_A :: ('Table ??> a, 'Table ?> b) => a -> b -> ('Table :@: a) b+table_A :: ('Table <?> a) b => a -> b -> ('Table :@: a) b table_A = WithAttributes  tbody_ :: ('Tbody ?> a) => a -> 'Tbody > a tbody_ = WithAttributes () -tbody_A :: ('Tbody ??> a, 'Tbody ?> b) => a -> b -> ('Tbody :@: a) b+tbody_A :: ('Tbody <?> a) b => a -> b -> ('Tbody :@: a) b tbody_A = WithAttributes  td_ :: ('Td ?> a) => a -> 'Td > a td_ = WithAttributes () -td_A :: ('Td ??> a, 'Td ?> b) => a -> b -> ('Td :@: a) b+td_A :: ('Td <?> a) b => a -> b -> ('Td :@: a) b td_A = WithAttributes  template_ :: ('Template ?> a) => a -> 'Template > a template_ = WithAttributes () -template_A :: ('Template ??> a, 'Template ?> b) => a -> b -> ('Template :@: a) b+template_A :: ('Template <?> a) b => a -> b -> ('Template :@: a) b template_A = WithAttributes  textarea_ :: ('Textarea ?> a) => a -> 'Textarea > a textarea_ = WithAttributes () -textarea_A :: ('Textarea ??> a, 'Textarea ?> b) => a -> b -> ('Textarea :@: a) b+textarea_A :: ('Textarea <?> a) b => a -> b -> ('Textarea :@: a) b textarea_A = WithAttributes  tfoot_ :: ('Tfoot ?> a) => a -> 'Tfoot > a tfoot_ = WithAttributes () -tfoot_A :: ('Tfoot ??> a, 'Tfoot ?> b) => a -> b -> ('Tfoot :@: a) b+tfoot_A :: ('Tfoot <?> a) b => a -> b -> ('Tfoot :@: a) b tfoot_A = WithAttributes  th_ :: ('Th ?> a) => a -> 'Th > a th_ = WithAttributes () -th_A :: ('Th ??> a, 'Th ?> b) => a -> b -> ('Th :@: a) b+th_A :: ('Th <?> a) b => a -> b -> ('Th :@: a) b th_A = WithAttributes  thead_ :: ('Thead ?> a) => a -> 'Thead > a thead_ = WithAttributes () -thead_A :: ('Thead ??> a, 'Thead ?> b) => a -> b -> ('Thead :@: a) b+thead_A :: ('Thead <?> a) b => a -> b -> ('Thead :@: a) b thead_A = WithAttributes  time_ :: ('Time ?> a) => a -> 'Time > a time_ = WithAttributes () -time_A :: ('Time ??> a, 'Time ?> b) => a -> b -> ('Time :@: a) b+time_A :: ('Time <?> a) b => a -> b -> ('Time :@: a) b time_A = WithAttributes  title_ :: ('Title ?> a) => a -> 'Title > a title_ = WithAttributes () -title_A :: ('Title ??> a, 'Title ?> b) => a -> b -> ('Title :@: a) b+title_A :: ('Title <?> a) b => a -> b -> ('Title :@: a) b title_A = WithAttributes  tr_ :: ('Tr ?> a) => a -> 'Tr > a tr_ = WithAttributes () -tr_A :: ('Tr ??> a, 'Tr ?> b) => a -> b -> ('Tr :@: a) b+tr_A :: ('Tr <?> a) b => a -> b -> ('Tr :@: a) b tr_A = WithAttributes  track_ :: 'Track > () track_ = WithAttributes () () -track_A :: 'Track ??> a => a -> ('Track :@: a) ()+track_A :: ('Track <?> a) () => a -> ('Track :@: a) () track_A = flip WithAttributes ()  tt_ :: ('Tt ?> a) => a -> 'Tt > a tt_ = WithAttributes () -tt_A :: ('Tt ??> a, 'Tt ?> b) => a -> b -> ('Tt :@: a) b+tt_A :: ('Tt <?> a) b => a -> b -> ('Tt :@: a) b tt_A = WithAttributes  u_ :: ('U ?> a) => a -> 'U > a u_ = WithAttributes () -u_A :: ('U ??> a, 'U ?> b) => a -> b -> ('U :@: a) b+u_A :: ('U <?> a) b => a -> b -> ('U :@: a) b u_A = WithAttributes  ul_ :: ('Ul ?> a) => a -> 'Ul > a ul_ = WithAttributes () -ul_A :: ('Ul ??> a, 'Ul ?> b) => a -> b -> ('Ul :@: a) b+ul_A :: ('Ul <?> a) b => a -> b -> ('Ul :@: a) b ul_A = WithAttributes  var_ :: ('Var ?> a) => a -> 'Var > a var_ = WithAttributes () -var_A :: ('Var ??> a, 'Var ?> b) => a -> b -> ('Var :@: a) b+var_A :: ('Var <?> a) b => a -> b -> ('Var :@: a) b var_A = WithAttributes  video_ :: ('Video ?> a) => a -> 'Video > a video_ = WithAttributes () -video_A :: ('Video ??> a, 'Video ?> b) => a -> b -> ('Video :@: a) b+video_A :: ('Video <?> a) b => a -> b -> ('Video :@: a) b video_A = WithAttributes  wbr_ :: 'Wbr > () wbr_ = WithAttributes () () -wbr_A :: 'Wbr ??> a => a -> ('Wbr :@: a) ()+wbr_A :: ('Wbr <?> a) () => a -> ('Wbr :@: a) () wbr_A = flip WithAttributes ()  xmp_ :: ('Xmp ?> a) => a -> 'Xmp > a xmp_ = WithAttributes () -xmp_A :: ('Xmp ??> a, 'Xmp ?> b) => a -> b -> ('Xmp :@: a) b+xmp_A :: ('Xmp <?> a) b => a -> b -> ('Xmp :@: a) b xmp_A = WithAttributes
src/Html/Reify.hs view
@@ -6,7 +6,9 @@ {-# LANGUAGE DataKinds            #-} {-# LANGUAGE PolyKinds            #-} -module Html.Reify where+module Html.Reify+  ( R(..)+  ) where  import Html.Type.Internal import Html.Convert
src/Html/Type.hs view
@@ -7,6 +7,7 @@   , (#)   , type (?>)   , type (??>)+  , type (<?>)   , type (:=)(..)   , Raw(..)   , Attribute(..)
src/Html/Type/Internal.hs view
@@ -2,6 +2,7 @@  {-# LANGUAGE TypeFamilyDependencies #-} {-# LANGUAGE UndecidableInstances   #-}+{-# LANGUAGE ConstraintKinds        #-} {-# LANGUAGE TypeOperators          #-} {-# LANGUAGE TypeFamilies           #-} {-# LANGUAGE DataKinds              #-}@@ -370,30 +371,29 @@  newtype (:=) (a :: Attribute) b = AT b --- | Check whether `b` is a valid child of `a`.  You'll propably never--- need to call this directly.  Through a GADT, it is enforced that--- every child is lawful.-type family (a :: Element) ?> b :: Constraint where-  a ?> (b :@: _) _     = MaybeTypeError a b (CheckContentCategory (EInfoContent (GetEInfo a)) (SingleElement b ': EInfoCategories (GetEInfo b)))-  a ?> (b # c)         = (a ?> b, a ?> c)-  a ?> Maybe b         = a ?> b-  a ?> Either b c      = (a ?> b, a ?> c)-  a ?> f ((b :@: c) d) = a ?> (b :@: c) d-  a ?> f (b # c)       = a ?> (b # c)-  a ?> ()              = ()-  a ?> (b -> c)        = TypeError (Text "Html elements can't contain functions")-  a ?> b               = CheckString a b+-- | Check whether `b` is a valid child of `a`.+type a ?> b = Check Element a b -type family (a :: Element) ??> b :: Constraint where-  a ??> () = ()-  a ??> (b # c)  = (a ??> b, a ??> c)-  a ??> Maybe b = a ??> b-  a ??> Either b c = (a ??> b, a ??> c)-  a ??> (b := _) = If (Elem a (AInfoElements (GetAInfo b)) || Null (AInfoElements (GetAInfo b)))-                   (() :: Constraint)-                   (TypeError (ShowType b :<>: Text " is not a valid attribute of " :<>: ShowType a))-  a ??> b        = TypeError (ShowType b :<>: Text " is not an attribute.")+-- | Check whether `a` is a valid attribute and `b` is a valid child of `p`.+type (<?>) p a b = (Check Attribute p a, Check Element p b) +{-# DEPRECATED (??>) "This will be removed in a future release, use <?> instead" #-}+type a ??> b = Check Attribute a b++type family Check f a b :: Constraint where+  Check _ _ ()                      = ()+  Check f a (b # c)                 = (Check f a b, Check f a c)+  Check f a (Maybe b)               = Check f a b+  Check f a (Either b c)            = (Check f a b, Check f a c)+  Check Element a (f ((b :@: c) d)) = Check Element a ((b :@: c) d)+  Check Element a (f (b # c))       = Check Element a (b # c)+  Check Element a ((b :@: _) _)     = MaybeTypeError a b (CheckContentCategory (EInfoContent (GetEInfo a)) (SingleElement b ': EInfoCategories (GetEInfo b)))+  Check Element a b                 = CheckString a b+  Check Attribute a (b := _)        = If (Elem a (AInfoElements (GetAInfo b)) || Null (AInfoElements (GetAInfo b)))+                                        (() :: Constraint)+                                        (TypeError (ShowType b :<>: Text " is not a valid attribute of " :<>: ShowType a))+  Check Attribute _ b               = TypeError (ShowType b :<>: Text " is not an attribute.")+ -- | Combine two elements or attributes sequentially. -- -- >>> i_ () # div_ ()@@ -422,15 +422,11 @@ -- >>> div_ "a" -- <div>a</div> data (:@:) (a :: Element) b c where-  WithAttributes :: (a ??> b, a ?> c) => b -> c -> (a :@: b) c+  WithAttributes :: (a <?> b) c => b -> c -> (a :@: b) c infixr 8 :@:  -- | Wrapper for types which won't be escaped.-newtype Raw a = Raw a--  --------------------  -- internal code ---  -------------------+newtype Raw a = Raw {fromRaw :: a}  type family Null xs where   Null '[] = True@@ -512,9 +508,9 @@   (contentCategories :: [ContentCategory])   (permittedContent  :: ContentCategory) -type family EInfoName x       where EInfoName       (EInfo n _ _)  = n+type family EInfoName x       where EInfoName       (EInfo n _  _) = n type family EInfoCategories x where EInfoCategories (EInfo _ cs _) = cs-type family EInfoContent x    where EInfoContent    (EInfo _ _ c)  = c+type family EInfoContent x    where EInfoContent    (EInfo _ _  c) = c  type ShowElement (x :: Element) = EInfoName (GetEInfo x) @@ -524,7 +520,7 @@   CheckContentCategory (NOT a) c   = Not (CheckContentCategory a c)   CheckContentCategory a c         = Elem a c --- | Check whether a given element may contain a string.+-- | Check whether a given element may contain a non document type. type family CheckString (a :: Element) b where   CheckString a b = If (CheckContentCategory (EInfoContent (GetEInfo a)) '[OnlyText, FlowContent, PhrasingContent])                        (() :: Constraint)@@ -565,704 +561,249 @@  -- | Get type list of valid elements for a given attribute.  An empty list signifies global attribute. type family GetAInfo a = r | r -> a where-  GetAInfo AcceptA              = AInfo "accept" '[Form, Input]-  GetAInfo AcceptCharsetA       = AInfo "accept-charset" '[Form]-  GetAInfo AccesskeyA           = AInfo "accesskey" '[]-  GetAInfo ActionA              = AInfo "action" '[Form]-  GetAInfo AllowfullscreenA     = AInfo "allowfullscreen" '[Iframe]+  GetAInfo AcceptA              = AInfo "accept"              '[Form, Input]+  GetAInfo AcceptCharsetA       = AInfo "accept-charset"      '[Form]+  GetAInfo AccesskeyA           = AInfo "accesskey"           '[]+  GetAInfo ActionA              = AInfo "action"              '[Form]+  GetAInfo AllowfullscreenA     = AInfo "allowfullscreen"     '[Iframe]   GetAInfo AllowpaymentrequestA = AInfo "allowpaymentrequest" '[Iframe]-  GetAInfo AlignA               = AInfo "align" '[Applet, Caption, Col, Colgroup, Hr, Iframe, Img, Table, Tbody, Td, Tfoot, Th, Thead, Tr]-  GetAInfo AltA                 = AInfo "alt" '[Applet, Area, Img, Input]-  GetAInfo AsyncA               = AInfo "async" '[Script]-  GetAInfo AutocompleteA        = AInfo "autocomplete" '[Form, Input]-  GetAInfo AutofocusA           = AInfo "autofocus" '[Button, Input, Keygen, Select, Textarea]-  GetAInfo AutoplayA            = AInfo "autoplay" '[Audio, Video]-  GetAInfo AutosaveA            = AInfo "autosave" '[Input]-  GetAInfo BgcolorA             = AInfo "bgcolor" '[Body, Col, Colgroup, Marquee, Table, Tbody, Tfoot, Td, Th, Tr]-  GetAInfo BorderA              = AInfo "border" '[Img, Object, Table]-  GetAInfo BufferedA            = AInfo "buffered" '[Audio, Video]-  GetAInfo ChallengeA           = AInfo "challenge" '[Keygen]-  GetAInfo CharsetA             = AInfo "charset" '[Meta, Script]-  GetAInfo CheckedA             = AInfo "checked" '[Command, Input]-  GetAInfo CiteA                = AInfo "cite" '[Blockquote, Del, Ins, Q]-  GetAInfo ClassA               = AInfo "class" '[]-  GetAInfo CodeA                = AInfo "code" '[Applet]-  GetAInfo CodebaseA            = AInfo "codebase" '[Applet]-  GetAInfo ColorA               = AInfo "color" '[Basefont, Font, Hr]-  GetAInfo ColsA                = AInfo "cols" '[Textarea]-  GetAInfo ColspanA             = AInfo "colspan" '[Td, Th]-  GetAInfo ContentA             = AInfo "content" '[Meta]-  GetAInfo ContenteditableA     = AInfo "contenteditable" '[]-  GetAInfo ContextmenuA         = AInfo "contextmenu" '[]-  GetAInfo ControlsA            = AInfo "controls" '[Audio, Video]-  GetAInfo CoordsA              = AInfo "coords" '[Area]-  GetAInfo CrossoriginA         = AInfo "crossorigin" '[Audio, Img, Link, Script, Video]-  GetAInfo DataA                = AInfo "data" '[Object]-  GetAInfo DatetimeA            = AInfo "datetime" '[Del, Ins, Time]-  GetAInfo DefaultA             = AInfo "default" '[Track]-  GetAInfo DeferA               = AInfo "defer" '[Script]-  GetAInfo DirA                 = AInfo "dir" '[]-  GetAInfo DirnameA             = AInfo "dirname" '[Input, Textarea]-  GetAInfo DisabledA            = AInfo "disabled" '[Button, Command, Fieldset, Input, Keygen, Optgroup, Option, Select, Textarea]-  GetAInfo DownloadA            = AInfo "download" '[A, Area]-  GetAInfo DraggableA           = AInfo "draggable" '[]-  GetAInfo DropzoneA            = AInfo "dropzone" '[]-  GetAInfo EnctypeA             = AInfo "enctype" '[Form]-  GetAInfo ForA                 = AInfo "for" '[Label, Output]-  GetAInfo FormA                = AInfo "form" '[Button, Fieldset, Input, Keygen, Label, Meter, Object, Output, Progress, Select, Textarea]-  GetAInfo FormactionA          = AInfo "formaction" '[Input, Button]-  GetAInfo FormenctypeA         = AInfo "formenctype" '[Button, Input]-  GetAInfo FormmethodA          = AInfo "formmethod" '[Button, Input]-  GetAInfo FormnovalidateA      = AInfo "formnovalidate" '[Button, Input]-  GetAInfo FormtargetA          = AInfo "formtarget" '[Button, Input]-  GetAInfo HeadersA             = AInfo "headers" '[Td, Th]-  GetAInfo HeightA              = AInfo "height" '[Canvas, Embed, Iframe, Img, Input, Object, Video]-  GetAInfo HiddenA              = AInfo "hidden" '[]-  GetAInfo HighA                = AInfo "high" '[Meter]-  GetAInfo HrefA                = AInfo "href" '[A, Area, Base, Link]-  GetAInfo HreflangA            = AInfo "hreflang" '[A, Area, Link]-  GetAInfo HttpEquivA           = AInfo "httpEquiv" '[Meta]-  GetAInfo IconA                = AInfo "icon" '[Command]-  GetAInfo IdA                  = AInfo "id" '[]-  GetAInfo IntegrityA           = AInfo "integrity" '[Link, Script]-  GetAInfo IsmapA               = AInfo "ismap" '[Img]-  GetAInfo ItempropA            = AInfo "itemprop" '[]-  GetAInfo KeytypeA             = AInfo "keytype" '[Keygen]-  GetAInfo KindA                = AInfo "kind" '[Track]-  GetAInfo LabelA               = AInfo "label" '[Track]-  GetAInfo LangA                = AInfo "lang" '[]-  GetAInfo LanguageA            = AInfo "language" '[Script]-  GetAInfo ListA                = AInfo "list" '[Input]-  GetAInfo LongdescA            = AInfo "longdesc" '[Img]-  GetAInfo LoopA                = AInfo "loop" '[Audio, Bgsound, Marquee, Video]-  GetAInfo LowA                 = AInfo "low" '[Meter]-  GetAInfo ManifestA            = AInfo "manifest" '[Html]-  GetAInfo MaxA                 = AInfo "max" '[Input, Meter, Progress]-  GetAInfo MaxlengthA           = AInfo "maxlength" '[Input, Textarea]-  GetAInfo MediaA               = AInfo "media" '[A, Area, Link, Source, Style]-  GetAInfo MethodA              = AInfo "method" '[Form]-  GetAInfo MinA                 = AInfo "min" '[Input, Meter]-  GetAInfo MinlengthA           = AInfo "minlength" '[Input, Textarea]-  GetAInfo MultipleA            = AInfo "multiple" '[Input, Select]-  GetAInfo MutedA               = AInfo "muted" '[Video]-  GetAInfo NameA                = AInfo "name" '[Button, Form, Fieldset, Iframe, Input, Keygen, Object, Output, Select, Textarea, Map, Meta, Param]-  GetAInfo NonceA               = AInfo "nonce" '[Link, Script, Style]-  GetAInfo NovalidateA          = AInfo "novalidate" '[Form]-  GetAInfo OpenA                = AInfo "open" '[Details]-  GetAInfo OptimumA             = AInfo "optimum" '[Meter]-  GetAInfo PatternA             = AInfo "pattern" '[Input]-  GetAInfo PingA                = AInfo "ping" '[A, Area]-  GetAInfo PlaceholderA         = AInfo "placeholder" '[Input, Textarea]-  GetAInfo PosterA              = AInfo "poster" '[Video]-  GetAInfo PreloadA             = AInfo "preload" '[Audio, Video]-  GetAInfo RadiogroupA          = AInfo "radiogroup" '[Command]-  GetAInfo ReadonlyA            = AInfo "readonly" '[Input, Textarea]-  GetAInfo ReferrerpolicyA      = AInfo "referrerpolicy" '[A, Area, Iframe, Img, Link]-  GetAInfo RelA                 = AInfo "rel" '[A, Area, Link]-  GetAInfo RequiredA            = AInfo "required" '[Input, Select, Textarea]-  GetAInfo RevA                 = AInfo "rev" '[A, Link]-  GetAInfo ReversedA            = AInfo "reversed" '[Ol]-  GetAInfo RowsA                = AInfo "rows" '[Textarea]-  GetAInfo RowspanA             = AInfo "rowspan" '[Td, Th]-  GetAInfo SandboxA             = AInfo "sandbox" '[Iframe]-  GetAInfo ScopeA               = AInfo "scope" '[Th]-  GetAInfo ScopedA              = AInfo "scoped" '[Style]-  GetAInfo SeamlessA            = AInfo "seamless" '[Iframe]-  GetAInfo SelectedA            = AInfo "selected" '[Option]-  GetAInfo ShapeA               = AInfo "shape" '[A, Area]-  GetAInfo SizeA                = AInfo "size" '[Input, Select]-  GetAInfo SizesA               = AInfo "sizes" '[Link, Img, Source]-  GetAInfo SlotA                = AInfo "slot" '[]-  GetAInfo SpanA                = AInfo "span" '[Col, Colgroup]-  GetAInfo SpellcheckA          = AInfo "spellcheck" '[]-  GetAInfo SrcA                 = AInfo "src" '[Audio, Embed, Iframe, Img, Input, Script, Source, Track, Video]-  GetAInfo SrcdocA              = AInfo "srcdoc" '[Iframe]-  GetAInfo SrclangA             = AInfo "srclang" '[Track]-  GetAInfo SrcsetA              = AInfo "srcset" '[Img]-  GetAInfo StartA               = AInfo "start" '[Ol]-  GetAInfo StepA                = AInfo "step" '[Input]-  GetAInfo StyleA               = AInfo "style" '[]-  GetAInfo SummaryA             = AInfo "summary" '[Table]-  GetAInfo TabindexA            = AInfo "tabindex" '[]-  GetAInfo TargetA              = AInfo "target" '[A, Area, Base, Form]-  GetAInfo TitleA               = AInfo "title" '[]-  GetAInfo TranslateA           = AInfo "translate" '[]-  GetAInfo TypeA                = AInfo "type" '[Button, Input, Command, Embed, Object, Script, Source, Style, Menu, Ol, A, Area, Link]-  GetAInfo TypemustmatchA       = AInfo "typemustmatch" '[Object]-  GetAInfo UsemapA              = AInfo "usemap" '[Img, Input, Object]-  GetAInfo ValueA               = AInfo "value" '[Button, Option, Input, Li, Meter, Progress, Param, Data]-  GetAInfo WidthA               = AInfo "width" '[Canvas, Embed, Iframe, Img, Input, Object, Video]-  GetAInfo WrapA                = AInfo "wrap" '[Textarea]+  GetAInfo AlignA               = AInfo "align"               '[Applet, Caption, Col, Colgroup, Hr, Iframe, Img, Table, Tbody, Td, Tfoot, Th, Thead, Tr]+  GetAInfo AltA                 = AInfo "alt"                 '[Applet, Area, Img, Input]+  GetAInfo AsyncA               = AInfo "async"               '[Script]+  GetAInfo AutocompleteA        = AInfo "autocomplete"        '[Form, Input]+  GetAInfo AutofocusA           = AInfo "autofocus"           '[Button, Input, Keygen, Select, Textarea]+  GetAInfo AutoplayA            = AInfo "autoplay"            '[Audio, Video]+  GetAInfo AutosaveA            = AInfo "autosave"            '[Input]+  GetAInfo BgcolorA             = AInfo "bgcolor"             '[Body, Col, Colgroup, Marquee, Table, Tbody, Tfoot, Td, Th, Tr]+  GetAInfo BorderA              = AInfo "border"              '[Img, Object, Table]+  GetAInfo BufferedA            = AInfo "buffered"            '[Audio, Video]+  GetAInfo ChallengeA           = AInfo "challenge"           '[Keygen]+  GetAInfo CharsetA             = AInfo "charset"             '[Meta, Script]+  GetAInfo CheckedA             = AInfo "checked"             '[Command, Input]+  GetAInfo CiteA                = AInfo "cite"                '[Blockquote, Del, Ins, Q]+  GetAInfo ClassA               = AInfo "class"               '[]+  GetAInfo CodeA                = AInfo "code"                '[Applet]+  GetAInfo CodebaseA            = AInfo "codebase"            '[Applet]+  GetAInfo ColorA               = AInfo "color"               '[Basefont, Font, Hr]+  GetAInfo ColsA                = AInfo "cols"                '[Textarea]+  GetAInfo ColspanA             = AInfo "colspan"             '[Td, Th]+  GetAInfo ContentA             = AInfo "content"             '[Meta]+  GetAInfo ContenteditableA     = AInfo "contenteditable"     '[]+  GetAInfo ContextmenuA         = AInfo "contextmenu"         '[]+  GetAInfo ControlsA            = AInfo "controls"            '[Audio, Video]+  GetAInfo CoordsA              = AInfo "coords"              '[Area]+  GetAInfo CrossoriginA         = AInfo "crossorigin"         '[Audio, Img, Link, Script, Video]+  GetAInfo DataA                = AInfo "data"                '[Object]+  GetAInfo DatetimeA            = AInfo "datetime"            '[Del, Ins, Time]+  GetAInfo DefaultA             = AInfo "default"             '[Track]+  GetAInfo DeferA               = AInfo "defer"               '[Script]+  GetAInfo DirA                 = AInfo "dir"                 '[]+  GetAInfo DirnameA             = AInfo "dirname"             '[Input, Textarea]+  GetAInfo DisabledA            = AInfo "disabled"            '[Button, Command, Fieldset, Input, Keygen, Optgroup, Option, Select, Textarea]+  GetAInfo DownloadA            = AInfo "download"            '[A, Area]+  GetAInfo DraggableA           = AInfo "draggable"           '[]+  GetAInfo DropzoneA            = AInfo "dropzone"            '[]+  GetAInfo EnctypeA             = AInfo "enctype"             '[Form]+  GetAInfo ForA                 = AInfo "for"                 '[Label, Output]+  GetAInfo FormA                = AInfo "form"                '[Button, Fieldset, Input, Keygen, Label, Meter, Object, Output, Progress, Select, Textarea]+  GetAInfo FormactionA          = AInfo "formaction"          '[Input, Button]+  GetAInfo FormenctypeA         = AInfo "formenctype"         '[Button, Input]+  GetAInfo FormmethodA          = AInfo "formmethod"          '[Button, Input]+  GetAInfo FormnovalidateA      = AInfo "formnovalidate"      '[Button, Input]+  GetAInfo FormtargetA          = AInfo "formtarget"          '[Button, Input]+  GetAInfo HeadersA             = AInfo "headers"             '[Td, Th]+  GetAInfo HeightA              = AInfo "height"              '[Canvas, Embed, Iframe, Img, Input, Object, Video]+  GetAInfo HiddenA              = AInfo "hidden"              '[]+  GetAInfo HighA                = AInfo "high"                '[Meter]+  GetAInfo HrefA                = AInfo "href"                '[A, Area, Base, Link]+  GetAInfo HreflangA            = AInfo "hreflang"            '[A, Area, Link]+  GetAInfo HttpEquivA           = AInfo "httpEquiv"           '[Meta]+  GetAInfo IconA                = AInfo "icon"                '[Command]+  GetAInfo IdA                  = AInfo "id"                  '[]+  GetAInfo IntegrityA           = AInfo "integrity"           '[Link, Script]+  GetAInfo IsmapA               = AInfo "ismap"               '[Img]+  GetAInfo ItempropA            = AInfo "itemprop"            '[]+  GetAInfo KeytypeA             = AInfo "keytype"             '[Keygen]+  GetAInfo KindA                = AInfo "kind"                '[Track]+  GetAInfo LabelA               = AInfo "label"               '[Track]+  GetAInfo LangA                = AInfo "lang"                '[]+  GetAInfo LanguageA            = AInfo "language"            '[Script]+  GetAInfo ListA                = AInfo "list"                '[Input]+  GetAInfo LongdescA            = AInfo "longdesc"            '[Img]+  GetAInfo LoopA                = AInfo "loop"                '[Audio, Bgsound, Marquee, Video]+  GetAInfo LowA                 = AInfo "low"                 '[Meter]+  GetAInfo ManifestA            = AInfo "manifest"            '[Html]+  GetAInfo MaxA                 = AInfo "max"                 '[Input, Meter, Progress]+  GetAInfo MaxlengthA           = AInfo "maxlength"           '[Input, Textarea]+  GetAInfo MediaA               = AInfo "media"               '[A, Area, Link, Source, Style]+  GetAInfo MethodA              = AInfo "method"              '[Form]+  GetAInfo MinA                 = AInfo "min"                 '[Input, Meter]+  GetAInfo MinlengthA           = AInfo "minlength"           '[Input, Textarea]+  GetAInfo MultipleA            = AInfo "multiple"            '[Input, Select]+  GetAInfo MutedA               = AInfo "muted"               '[Video]+  GetAInfo NameA                = AInfo "name"                '[Button, Form, Fieldset, Iframe, Input, Keygen, Object, Output, Select, Textarea, Map, Meta, Param]+  GetAInfo NonceA               = AInfo "nonce"               '[Link, Script, Style]+  GetAInfo NovalidateA          = AInfo "novalidate"          '[Form]+  GetAInfo OpenA                = AInfo "open"                '[Details]+  GetAInfo OptimumA             = AInfo "optimum"             '[Meter]+  GetAInfo PatternA             = AInfo "pattern"             '[Input]+  GetAInfo PingA                = AInfo "ping"                '[A, Area]+  GetAInfo PlaceholderA         = AInfo "placeholder"         '[Input, Textarea]+  GetAInfo PosterA              = AInfo "poster"              '[Video]+  GetAInfo PreloadA             = AInfo "preload"             '[Audio, Video]+  GetAInfo RadiogroupA          = AInfo "radiogroup"          '[Command]+  GetAInfo ReadonlyA            = AInfo "readonly"            '[Input, Textarea]+  GetAInfo ReferrerpolicyA      = AInfo "referrerpolicy"      '[A, Area, Iframe, Img, Link]+  GetAInfo RelA                 = AInfo "rel"                 '[A, Area, Link]+  GetAInfo RequiredA            = AInfo "required"            '[Input, Select, Textarea]+  GetAInfo RevA                 = AInfo "rev"                 '[A, Link]+  GetAInfo ReversedA            = AInfo "reversed"            '[Ol]+  GetAInfo RowsA                = AInfo "rows"                '[Textarea]+  GetAInfo RowspanA             = AInfo "rowspan"             '[Td, Th]+  GetAInfo SandboxA             = AInfo "sandbox"             '[Iframe]+  GetAInfo ScopeA               = AInfo "scope"               '[Th]+  GetAInfo ScopedA              = AInfo "scoped"              '[Style]+  GetAInfo SeamlessA            = AInfo "seamless"            '[Iframe]+  GetAInfo SelectedA            = AInfo "selected"            '[Option]+  GetAInfo ShapeA               = AInfo "shape"               '[A, Area]+  GetAInfo SizeA                = AInfo "size"                '[Input, Select]+  GetAInfo SizesA               = AInfo "sizes"               '[Link, Img, Source]+  GetAInfo SlotA                = AInfo "slot"                '[]+  GetAInfo SpanA                = AInfo "span"                '[Col, Colgroup]+  GetAInfo SpellcheckA          = AInfo "spellcheck"          '[]+  GetAInfo SrcA                 = AInfo "src"                 '[Audio, Embed, Iframe, Img, Input, Script, Source, Track, Video]+  GetAInfo SrcdocA              = AInfo "srcdoc"              '[Iframe]+  GetAInfo SrclangA             = AInfo "srclang"             '[Track]+  GetAInfo SrcsetA              = AInfo "srcset"              '[Img]+  GetAInfo StartA               = AInfo "start"               '[Ol]+  GetAInfo StepA                = AInfo "step"                '[Input]+  GetAInfo StyleA               = AInfo "style"               '[]+  GetAInfo SummaryA             = AInfo "summary"             '[Table]+  GetAInfo TabindexA            = AInfo "tabindex"            '[]+  GetAInfo TargetA              = AInfo "target"              '[A, Area, Base, Form]+  GetAInfo TitleA               = AInfo "title"               '[]+  GetAInfo TranslateA           = AInfo "translate"           '[]+  GetAInfo TypeA                = AInfo "type"                '[Button, Input, Command, Embed, Object, Script, Source, Style, Menu, Ol, A, Area, Link]+  GetAInfo TypemustmatchA       = AInfo "typemustmatch"       '[Object]+  GetAInfo UsemapA              = AInfo "usemap"              '[Img, Input, Object]+  GetAInfo ValueA               = AInfo "value"               '[Button, Option, Input, Li, Meter, Progress, Param, Data]+  GetAInfo WidthA               = AInfo "width"               '[Canvas, Embed, Iframe, Img, Input, Object, Video]+  GetAInfo WrapA                = AInfo "wrap"                '[Textarea]  -- | Retrieve type level meta data about elements. type family GetEInfo a = r | r -> a where -  GetEInfo DOCTYPE = EInfo-    "!DOCTYPE html"-    '[]-    NoContent--  GetEInfo A = EInfo-    "a"-    '[ FlowContent, PhrasingContent ]-    (FlowContent :&: NOT (SingleElement Details) :|: PhrasingContent)--  GetEInfo Abbr = EInfo-    "abbr"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Address = EInfo-    "address"-    '[ FlowContent ]-    (FlowContent :&: NOT (HeadingContent :|: SectioningContent :|: SingleElement Address :|: SingleElement Header :|: SingleElement Footer))--  GetEInfo Area = EInfo-    "area"-    '[ FlowContent, PhrasingContent ]-    NoContent--  GetEInfo Article = EInfo-    "article"-    '[ FlowContent, SectioningContent ]-    FlowContent--  GetEInfo Aside = EInfo-    "aside"-    '[ FlowContent, SectioningContent ]-    FlowContent--  GetEInfo Audio = EInfo-    "audio"-    '[ FlowContent, PhrasingContent ]-    (SingleElement Source :|: SingleElement Track)--  GetEInfo B = EInfo-    "b"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Base = EInfo-    "base"-    '[ MetadataContent ]-    NoContent--  GetEInfo Bdi = EInfo-    "bdi"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Bdo = EInfo-    "bdo"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Blockquote = EInfo-    "blockquote"-    '[ FlowContent ]-    FlowContent--  GetEInfo Body = EInfo-    "body"-    '[]-    FlowContent--  GetEInfo Br = EInfo-    "br"-    '[ FlowContent, PhrasingContent ]-    NoContent--  GetEInfo Button = EInfo-    "button"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Canvas = EInfo-    "canvas"-    '[ FlowContent, PhrasingContent ]-    (SingleElement A :|: SingleElement Button :|: SingleElement Input)--  GetEInfo Caption = EInfo-    "caption"-    '[]-    FlowContent--  GetEInfo Cite = EInfo-    "cite"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Code = EInfo-    "code"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Col = EInfo-    "col"-    '[]-    NoContent--  GetEInfo Colgroup = EInfo-    "colgroup"-    '[]-    (SingleElement Col)--  GetEInfo Data = EInfo-    "data"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Datalist = EInfo-    "datalist"-    '[ FlowContent, PhrasingContent ]-    (PhrasingContent :|: SingleElement Option)--  GetEInfo Dd = EInfo-    "dd"-    '[]-    FlowContent--  GetEInfo Del = EInfo-    "del"-    '[ FlowContent, PhrasingContent ]-    OnlyText--  GetEInfo Details = EInfo-    "details"-    '[ FlowContent ]-    ( FlowContent :|: SingleElement Summary)--  GetEInfo Dfn = EInfo-    "dfn"-    '[ FlowContent, PhrasingContent ]-    (PhrasingContent :&: NOT (SingleElement Dfn))--  GetEInfo Dialog = EInfo-    "dialog"-    '[ FlowContent ]-    FlowContent--  GetEInfo Div = EInfo-    "div"-    '[ FlowContent ]-    (FlowContent :|: SingleElement Dt :|: SingleElement Dd :|: SingleElement Script :|: SingleElement Template)--  GetEInfo Dl = EInfo-    "dl"-    '[ FlowContent ]-    (SingleElement Dt :|: SingleElement Dd :|: SingleElement Script :|: SingleElement Template :|: SingleElement Div)--  GetEInfo Dt = EInfo-    "dt"-    '[]-    (FlowContent :&: NOT (SingleElement Header :|: SingleElement Footer :|: SectioningContent :|: HeadingContent))--  GetEInfo Em = EInfo-    "em"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Embed = EInfo-    "embed"-    '[ FlowContent, PhrasingContent ]-    NoContent--  GetEInfo Fieldset = EInfo-    "fieldset"-    '[ FlowContent ]-    (FlowContent :|: SingleElement Legend)--  GetEInfo Figcaption = EInfo-    "figcaption"-    '[]-    FlowContent--  GetEInfo Figure = EInfo-    "figure"-    '[ FlowContent ]-    (FlowContent :|: SingleElement Figcaption)--  GetEInfo Footer = EInfo-    "footer"-    '[ FlowContent ]-    (FlowContent :&: NOT (SingleElement Footer :|: SingleElement Header))--  GetEInfo Form = EInfo-    "form"-    '[ FlowContent ]-    (FlowContent :&: NOT (SingleElement Form))--  GetEInfo H1 = EInfo-    "h1"-    '[ FlowContent, HeadingContent ]-    PhrasingContent--  GetEInfo H2 = EInfo-    "h2"-    '[ FlowContent, HeadingContent ]-    PhrasingContent--  GetEInfo H3 = EInfo-    "h3"-    '[ FlowContent, HeadingContent ]-    PhrasingContent--  GetEInfo H4 = EInfo-    "h4"-    '[ FlowContent, HeadingContent ]-    PhrasingContent--  GetEInfo H5 = EInfo-    "h5"-    '[ FlowContent, HeadingContent ]-    PhrasingContent--  GetEInfo H6 = EInfo-    "h6"-    '[ FlowContent, HeadingContent ]-    PhrasingContent--  GetEInfo Head = EInfo-    "head"-    '[]-    MetadataContent--  GetEInfo Header = EInfo-    "header"-    '[ FlowContent ]-    (FlowContent :&: NOT (SingleElement Header :|: SingleElement Footer))--  GetEInfo Hgroup = EInfo-    "hgroup"-    '[ FlowContent, HeadingContent ]-    (SingleElement H1 :|: SingleElement H2 :|: SingleElement H3 :|: SingleElement H4 :|: SingleElement H5 :|: SingleElement H6)--  GetEInfo Hr = EInfo-    "hr"-    '[ FlowContent ]-    NoContent--  GetEInfo Html = EInfo-    "html"-    '[]-    (SingleElement Head :|: SingleElement Body)--  GetEInfo I = EInfo-    "i"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Iframe = EInfo-    "iframe"-    '[ FlowContent, PhrasingContent ]-    NoContent--  GetEInfo Img = EInfo-    "img"-    '[ FlowContent, PhrasingContent ]-    NoContent--  GetEInfo Ins = EInfo-    "ins"-    '[ FlowContent, PhrasingContent ]-    OnlyText--  GetEInfo Kbd = EInfo-    "kbd"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Label = EInfo-    "label"-    '[ FlowContent, PhrasingContent ]-    (PhrasingContent :&: NOT (SingleElement Label))--  GetEInfo Legend = EInfo-    "legend"-    '[]-    PhrasingContent--  GetEInfo Li = EInfo-    "li"-    '[]-    FlowContent--  GetEInfo Link = EInfo-    "link"-    '[ FlowContent, PhrasingContent, MetadataContent ]-    NoContent--  GetEInfo Main = EInfo-    "main"-    '[ FlowContent ]-    FlowContent--  GetEInfo Map = EInfo-    "map"-    '[ FlowContent, PhrasingContent ]-    OnlyText--  GetEInfo Mark = EInfo-    "mark"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Menu = EInfo-    "menu"-    '[ FlowContent ]-    (FlowContent :|: SingleElement Li :|: SingleElement Script :|: SingleElement Template :|: SingleElement Menu :|: SingleElement Menuitem :|: SingleElement Hr)--  GetEInfo Menuitem = EInfo-    "menuitem"-    '[]-    NoContent--  GetEInfo Meta = EInfo-    "meta"-    '[ FlowContent, MetadataContent, PhrasingContent ]-    NoContent--  GetEInfo Meter = EInfo-    "meter"-    '[ FlowContent, PhrasingContent ]-    (PhrasingContent :&: NOT (SingleElement Meter))--  GetEInfo Nav = EInfo-    "nav"-    '[ FlowContent, SectioningContent ]-    FlowContent--  GetEInfo Noscript = EInfo-    "noscript"-    '[ FlowContent, MetadataContent, PhrasingContent ]-    (FlowContent :|: PhrasingContent :|: SingleElement Link :|: SingleElement Style :|: SingleElement Meta)--  GetEInfo Object = EInfo-    "object"-    '[ FlowContent, PhrasingContent ]-    (SingleElement Param)--  GetEInfo Ol = EInfo-    "ol"-    '[ FlowContent ]-    (SingleElement Li)--  GetEInfo Optgroup = EInfo-    "optgroup"-    '[]-    (SingleElement Option)--  GetEInfo Option = EInfo-    "option"-    '[]-    OnlyText--  GetEInfo Output = EInfo-    "output"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo P = EInfo-    "p"-    '[ FlowContent ]-    PhrasingContent--  GetEInfo Param = EInfo-    "param"-    '[]-    NoContent--  GetEInfo Picture = EInfo-    "picture"-    '[ FlowContent, PhrasingContent ]-    (SingleElement Source :|: SingleElement Img)--  GetEInfo Pre = EInfo-    "pre"-    '[ FlowContent ]-    PhrasingContent--  GetEInfo Progress = EInfo-    "progress"-    '[ FlowContent, PhrasingContent ]-    (PhrasingContent :&: NOT (SingleElement Progress))--  GetEInfo Q = EInfo-    "q"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Rp = EInfo-    "rp"-    '[]-    OnlyText--  GetEInfo Rt = EInfo-    "rt"-    '[]-    PhrasingContent--  GetEInfo Rtc = EInfo-    "rtc"-    '[]-    (PhrasingContent :|: SingleElement Rt)--  GetEInfo Ruby = EInfo-    "ruby"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo S = EInfo-    "s"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Samp = EInfo-    "samp"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Script = EInfo-    "script"-    '[ FlowContent, MetadataContent, PhrasingContent ]-    OnlyText--  GetEInfo Section = EInfo-    "section"-    '[ FlowContent, SectioningContent ]-    FlowContent--  GetEInfo Select = EInfo-    "select"-    '[ FlowContent, PhrasingContent ]-    (SingleElement Option :|: SingleElement Optgroup)--  GetEInfo Slot = EInfo-    "slot"-    '[ FlowContent, PhrasingContent ]-    OnlyText--  GetEInfo Small = EInfo-    "small"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Source = EInfo-    "source"-    '[]-    NoContent--  GetEInfo Span = EInfo-    "span"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Strong = EInfo-    "strong"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Style = EInfo-    "style"-    '[ FlowContent, MetadataContent ]-    OnlyText--  GetEInfo Sub = EInfo-    "sub"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Summary = EInfo-    "summary"-    '[]-    (PhrasingContent :|: HeadingContent)--  GetEInfo Sup = EInfo-    "sup"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Table = EInfo-    "table"-    '[FlowContent]-    (SingleElement Caption :|: SingleElement Colgroup :|: SingleElement Thead :|: SingleElement Tbody :|: SingleElement Tr :|: SingleElement Tfoot)--  GetEInfo Tbody = EInfo-    "tbody"-    '[]-    (SingleElement Tr)--  GetEInfo Td = EInfo-    "td"-    '[]-    FlowContent--  GetEInfo Template = EInfo-    "template"-    '[ FlowContent, MetadataContent, PhrasingContent ]-    (FlowContent :|: MetadataContent)--  GetEInfo Textarea = EInfo-    "textarea"-    '[ FlowContent, PhrasingContent ]-    OnlyText--  GetEInfo Tfoot = EInfo-    "tfoot"-    '[]-    (SingleElement Tr)--  GetEInfo Th = EInfo-    "th"-    '[]-    (FlowContent :&: NOT (SingleElement Header :|: SingleElement Footer :|: SectioningContent :|: HeadingContent))--  GetEInfo Thead = EInfo-    "thead"-    '[]-    (SingleElement Tr)--  GetEInfo Time = EInfo-    "time"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Title = EInfo-    "title"-    '[ MetadataContent ]-    OnlyText--  GetEInfo Tr = EInfo-    "tr"-    '[]-    (SingleElement Td :|: SingleElement Th)--  GetEInfo Track = EInfo-    "track"-    '[]-    NoContent--  GetEInfo U = EInfo-    "u"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Ul = EInfo-    "ul"-    '[ FlowContent ]-    (SingleElement Li)--  GetEInfo Var = EInfo-    "var"-    '[ FlowContent, PhrasingContent ]-    PhrasingContent--  GetEInfo Video = EInfo-    "video"-    '[ FlowContent, PhrasingContent ]-    (SingleElement Track :|: SingleElement Source)--  GetEInfo Wbr = EInfo-    "wbr"-    '[ FlowContent, PhrasingContent ]-    NoContent+  GetEInfo DOCTYPE    = EInfo "!DOCTYPE html" '[]                                                NoContent+  GetEInfo A          = EInfo "a"             '[ FlowContent, PhrasingContent ]                  (FlowContent :&: NOT (SingleElement Details) :|: PhrasingContent)+  GetEInfo Abbr       = EInfo "abbr"          '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Address    = EInfo "address"       '[ FlowContent ]                                   (FlowContent :&: NOT (HeadingContent :|: SectioningContent :|: SingleElement Address :|: SingleElement Header :|: SingleElement Footer))+  GetEInfo Area       = EInfo "area"          '[ FlowContent, PhrasingContent ]                  NoContent+  GetEInfo Article    = EInfo "article"       '[ FlowContent, SectioningContent ]                FlowContent+  GetEInfo Aside      = EInfo "aside"         '[ FlowContent, SectioningContent ]                FlowContent+  GetEInfo Audio      = EInfo "audio"         '[ FlowContent, PhrasingContent ]                  (SingleElement Source :|: SingleElement Track)+  GetEInfo B          = EInfo "b"             '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Base       = EInfo "base"          '[ MetadataContent ]                               NoContent+  GetEInfo Bdi        = EInfo "bdi"           '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Bdo        = EInfo "bdo"           '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Blockquote = EInfo "blockquote"    '[ FlowContent ]                                   FlowContent+  GetEInfo Body       = EInfo "body"          '[]                                                FlowContent+  GetEInfo Br         = EInfo "br"            '[ FlowContent, PhrasingContent ]                  NoContent+  GetEInfo Button     = EInfo "button"        '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Canvas     = EInfo "canvas"        '[ FlowContent, PhrasingContent ]                  (SingleElement A :|: SingleElement Button :|: SingleElement Input)+  GetEInfo Caption    = EInfo "caption"       '[]                                                FlowContent+  GetEInfo Cite       = EInfo "cite"          '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Code       = EInfo "code"          '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Col        = EInfo "col"           '[]                                                NoContent+  GetEInfo Colgroup   = EInfo "colgroup"      '[]                                                (SingleElement Col)+  GetEInfo Data       = EInfo "data"          '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Datalist   = EInfo "datalist"      '[ FlowContent, PhrasingContent ]                  (PhrasingContent :|: SingleElement Option)+  GetEInfo Dd         = EInfo "dd"            '[]                                                FlowContent+  GetEInfo Del        = EInfo "del"           '[ FlowContent, PhrasingContent ]                  OnlyText+  GetEInfo Details    = EInfo "details"       '[ FlowContent ]                                   ( FlowContent :|: SingleElement Summary)+  GetEInfo Dfn        = EInfo "dfn"           '[ FlowContent, PhrasingContent ]                  (PhrasingContent :&: NOT (SingleElement Dfn))+  GetEInfo Dialog     = EInfo "dialog"        '[ FlowContent ]                                   FlowContent+  GetEInfo Div        = EInfo "div"           '[ FlowContent ]                                   (FlowContent :|: SingleElement Dt :|: SingleElement Dd :|: SingleElement Script :|: SingleElement Template)+  GetEInfo Dl         = EInfo "dl"            '[ FlowContent ]                                   (SingleElement Dt :|: SingleElement Dd :|: SingleElement Script :|: SingleElement Template :|: SingleElement Div)+  GetEInfo Dt         = EInfo "dt"            '[]                                                (FlowContent :&: NOT (SingleElement Header :|: SingleElement Footer :|: SectioningContent :|: HeadingContent))+  GetEInfo Em         = EInfo "em"            '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Embed      = EInfo "embed"         '[ FlowContent, PhrasingContent ]                  NoContent+  GetEInfo Fieldset   = EInfo "fieldset"      '[ FlowContent ]                                   (FlowContent :|: SingleElement Legend)+  GetEInfo Figcaption = EInfo "figcaption"    '[]                                                FlowContent+  GetEInfo Figure     = EInfo "figure"        '[ FlowContent ]                                   (FlowContent :|: SingleElement Figcaption)+  GetEInfo Footer     = EInfo "footer"        '[ FlowContent ]                                   (FlowContent :&: NOT (SingleElement Footer :|: SingleElement Header))+  GetEInfo Form       = EInfo "form"          '[ FlowContent ]                                   (FlowContent :&: NOT (SingleElement Form))+  GetEInfo H1         = EInfo "h1"            '[ FlowContent, HeadingContent ]                   PhrasingContent+  GetEInfo H2         = EInfo "h2"            '[ FlowContent, HeadingContent ]                   PhrasingContent+  GetEInfo H3         = EInfo "h3"            '[ FlowContent, HeadingContent ]                   PhrasingContent+  GetEInfo H4         = EInfo "h4"            '[ FlowContent, HeadingContent ]                   PhrasingContent+  GetEInfo H5         = EInfo "h5"            '[ FlowContent, HeadingContent ]                   PhrasingContent+  GetEInfo H6         = EInfo "h6"            '[ FlowContent, HeadingContent ]                   PhrasingContent+  GetEInfo Head       = EInfo "head"          '[]                                                MetadataContent+  GetEInfo Header     = EInfo "header"        '[ FlowContent ]                                   (FlowContent :&: NOT (SingleElement Header :|: SingleElement Footer))+  GetEInfo Hgroup     = EInfo "hgroup"        '[ FlowContent, HeadingContent ]                   (SingleElement H1 :|: SingleElement H2 :|: SingleElement H3 :|: SingleElement H4 :|: SingleElement H5 :|: SingleElement H6)+  GetEInfo Hr         = EInfo "hr"            '[ FlowContent ]                                   NoContent+  GetEInfo Html       = EInfo "html"          '[]                                                (SingleElement Head :|: SingleElement Body)+  GetEInfo I          = EInfo "i"             '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Iframe     = EInfo "iframe"        '[ FlowContent, PhrasingContent ]                  NoContent+  GetEInfo Img        = EInfo "img"           '[ FlowContent, PhrasingContent ]                  NoContent+  GetEInfo Ins        = EInfo "ins"           '[ FlowContent, PhrasingContent ]                  OnlyText+  GetEInfo Kbd        = EInfo "kbd"           '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Label      = EInfo "label"         '[ FlowContent, PhrasingContent ]                  (PhrasingContent :&: NOT (SingleElement Label))+  GetEInfo Legend     = EInfo "legend"        '[]                                                PhrasingContent+  GetEInfo Li         = EInfo "li"            '[]                                                FlowContent+  GetEInfo Link       = EInfo "link"          '[ FlowContent, PhrasingContent, MetadataContent ] NoContent+  GetEInfo Main       = EInfo "main"          '[ FlowContent ]                                   FlowContent+  GetEInfo Map        = EInfo "map"           '[ FlowContent, PhrasingContent ]                  OnlyText+  GetEInfo Mark       = EInfo "mark"          '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Menu       = EInfo "menu"          '[ FlowContent ]                                   (FlowContent :|: SingleElement Li :|: SingleElement Script :|: SingleElement Template :|: SingleElement Menu :|: SingleElement Menuitem :|: SingleElement Hr)+  GetEInfo Menuitem   = EInfo "menuitem"      '[]                                                NoContent+  GetEInfo Meta       = EInfo "meta"          '[ FlowContent, MetadataContent, PhrasingContent ] NoContent+  GetEInfo Meter      = EInfo "meter"         '[ FlowContent, PhrasingContent ]                  (PhrasingContent :&: NOT (SingleElement Meter))+  GetEInfo Nav        = EInfo "nav"           '[ FlowContent, SectioningContent ]                FlowContent+  GetEInfo Noscript   = EInfo "noscript"      '[ FlowContent, MetadataContent, PhrasingContent ] (FlowContent :|: PhrasingContent :|: SingleElement Link :|: SingleElement Style :|: SingleElement Meta)+  GetEInfo Object     = EInfo "object"        '[ FlowContent, PhrasingContent ]                  (SingleElement Param)+  GetEInfo Ol         = EInfo "ol"            '[ FlowContent ]                                   (SingleElement Li)+  GetEInfo Optgroup   = EInfo "optgroup"      '[]                                                (SingleElement Option)+  GetEInfo Option     = EInfo "option"        '[]                                                OnlyText+  GetEInfo Output     = EInfo "output"        '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo P          = EInfo "p"             '[ FlowContent ]                                   PhrasingContent+  GetEInfo Param      = EInfo "param"         '[]                                                NoContent+  GetEInfo Picture    = EInfo "picture"       '[ FlowContent, PhrasingContent ]                  (SingleElement Source :|: SingleElement Img)+  GetEInfo Pre        = EInfo "pre"           '[ FlowContent ]                                   PhrasingContent+  GetEInfo Progress   = EInfo "progress"      '[ FlowContent, PhrasingContent ]                  (PhrasingContent :&: NOT (SingleElement Progress))+  GetEInfo Q          = EInfo "q"             '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Rp         = EInfo "rp"            '[]                                                OnlyText+  GetEInfo Rt         = EInfo "rt"            '[]                                                PhrasingContent+  GetEInfo Rtc        = EInfo "rtc"           '[]                                                (PhrasingContent :|: SingleElement Rt)+  GetEInfo Ruby       = EInfo "ruby"          '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo S          = EInfo "s"             '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Samp       = EInfo "samp"          '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Script     = EInfo "script"        '[ FlowContent, MetadataContent, PhrasingContent ] OnlyText+  GetEInfo Section    = EInfo "section"       '[ FlowContent, SectioningContent ]                FlowContent+  GetEInfo Select     = EInfo "select"        '[ FlowContent, PhrasingContent ]                  (SingleElement Option :|: SingleElement Optgroup)+  GetEInfo Slot       = EInfo "slot"          '[ FlowContent, PhrasingContent ]                  OnlyText+  GetEInfo Small      = EInfo "small"         '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Source     = EInfo "source"        '[]                                                NoContent+  GetEInfo Span       = EInfo "span"          '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Strong     = EInfo "strong"        '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Style      = EInfo "style"         '[ FlowContent, MetadataContent ]                  OnlyText+  GetEInfo Sub        = EInfo "sub"           '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Summary    = EInfo "summary"       '[]                                                (PhrasingContent :|: HeadingContent)+  GetEInfo Sup        = EInfo "sup"           '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Table      = EInfo "table"         '[ FlowContent ]                                   (SingleElement Caption :|: SingleElement Colgroup :|: SingleElement Thead :|: SingleElement Tbody :|: SingleElement Tr :|: SingleElement Tfoot)+  GetEInfo Tbody      = EInfo "tbody"         '[]                                                (SingleElement Tr)+  GetEInfo Td         = EInfo "td"            '[]                                                FlowContent+  GetEInfo Template   = EInfo "template"      '[ FlowContent, MetadataContent, PhrasingContent ] (FlowContent :|: MetadataContent)+  GetEInfo Textarea   = EInfo "textarea"      '[ FlowContent, PhrasingContent ]                  OnlyText+  GetEInfo Tfoot      = EInfo "tfoot"         '[]                                                (SingleElement Tr)+  GetEInfo Th         = EInfo "th"            '[]                                                (FlowContent :&: NOT (SingleElement Header :|: SingleElement Footer :|: SectioningContent :|: HeadingContent))+  GetEInfo Thead      = EInfo "thead"         '[]                                                (SingleElement Tr)+  GetEInfo Time       = EInfo "time"          '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Title      = EInfo "title"         '[ MetadataContent ]                               OnlyText+  GetEInfo Tr         = EInfo "tr"            '[]                                                (SingleElement Td :|: SingleElement Th)+  GetEInfo Track      = EInfo "track"         '[]                                                NoContent+  GetEInfo U          = EInfo "u"             '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Ul         = EInfo "ul"            '[ FlowContent ]                                   (SingleElement Li)+  GetEInfo Var        = EInfo "var"           '[ FlowContent, PhrasingContent ]                  PhrasingContent+  GetEInfo Video      = EInfo "video"         '[ FlowContent, PhrasingContent ]                  (SingleElement Track :|: SingleElement Source)+  GetEInfo Wbr        = EInfo "wbr"           '[ FlowContent, PhrasingContent ]                  NoContent
type-of-html.cabal view
@@ -1,5 +1,5 @@ name:                 type-of-html-version:              1.3.0.1+version:              1.3.1.0 synopsis:             High performance type driven html generation. description:          This library makes most invalid html documents compile time errors and uses advanced type level features to realise compile time computations. license:              BSD3@@ -8,10 +8,9 @@ maintainer:           fknupfer@gmail.com homepage:             https://github.com/knupfer/type-of-html tested-with:          GHC == 8.0.2-                    , GHC == 8.2.1                     , GHC == 8.2.2 copyright:            2017, Florian Knupfer-category:             Language+category:             Language, Text, Web, HTML build-type:           Simple extra-source-files:   ChangeLog.md                     , Readme.md