packages feed

HJScript 0.4.9 → 0.5.0

raw patch · 2 files changed

+5/−4 lines, 2 filesdep ~hsxPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: hsx

API changes (from Hackage documentation)

- HJScript.Lang: first :: Exp (Rec a b) -> Exp a
- HJScript.Lang: second :: Exp (Rec a b) -> Exp b
- HJScript.Lang: x :: Exp (Rec a b) -> Exp a
- HJScript.Lang: y :: Exp (Rec a b) -> Exp b
- HJScript.XMLGenerator: instance [overlap ok] (IsAttrNodeValue a) => IsAttrNodeValue (HJScript a)
- HJScript.XMLGenerator: instance [overlap ok] (JShow a) => IsAttrNodeValue a
- HJScript.XMLGenerator: instance [overlap ok] EmbedAsChild HJScript' String
+ HJScript.Lang: first, x :: Exp (Rec a b) -> Exp a
+ HJScript.Lang: second, y :: Exp (Rec a b) -> Exp b
+ HJScript.XMLGenerator: instance [overlap ok] IsAttrNodeValue a => IsAttrNodeValue (HJScript a)
+ HJScript.XMLGenerator: instance [overlap ok] JShow a => IsAttrNodeValue a
- HJScript: toHJScript :: (IsHJScript a) => a -> HJScript ()
+ HJScript: toHJScript :: IsHJScript a => a -> HJScript ()
- HJScript.Ajax: (=:) :: (IsReqParams (a, b)) => a -> b -> ReqParams
+ HJScript.Ajax: (=:) :: IsReqParams (a, b) => a -> b -> ReqParams
- HJScript.Ajax: openAsync :: (IsExp e String) => HttpMethod -> e -> JObject XMLHttpRequest -> HJScript ()
+ HJScript.Ajax: openAsync :: IsExp e String => HttpMethod -> e -> JObject XMLHttpRequest -> HJScript ()
- HJScript.Ajax: openAsyncPost :: (IsExp e String) => e -> JObject XMLHttpRequest -> HJScript ()
+ HJScript.Ajax: openAsyncPost :: IsExp e String => e -> JObject XMLHttpRequest -> HJScript ()
- HJScript.Ajax: sendPost :: (IsExp e String) => e -> JObject XMLHttpRequest -> HJScript ()
+ HJScript.Ajax: sendPost :: IsExp e String => e -> JObject XMLHttpRequest -> HJScript ()
- HJScript.Ajax: setCallBack :: (JObject XMLHttpRequest -> XMLGenT HJScript' ()) -> JObject XMLHttpRequest -> XMLGenT HJScript' ()
+ HJScript.Ajax: setCallBack :: (JObject XMLHttpRequest -> HJScript ()) -> JObject XMLHttpRequest -> XMLGenT HJScript' ()
- HJScript.Ajax: toReqParams :: (IsReqParams a) => a -> [ReqParam]
+ HJScript.Ajax: toReqParams :: IsReqParams a => a -> [ReqParam]
- HJScript.DOM.ElementNode: attributes :: (IsElementNode n) => Exp n -> Exp NamedNodeMap
+ HJScript.DOM.ElementNode: attributes :: IsElementNode n => Exp n -> Exp NamedNodeMap
- HJScript.DOM.ElementNode: childNodes :: (IsElementNode n) => Exp n -> JArray Node
+ HJScript.DOM.ElementNode: childNodes :: IsElementNode n => Exp n -> JArray Node
- HJScript.DOM.ElementNode: class (IsClass n) => IsElementNode n
+ HJScript.DOM.ElementNode: class IsClass n => IsElementNode n
- HJScript.DOM.ElementNode: cloneNode :: (IsNode n) => JBool -> Exp n -> Exp n
+ HJScript.DOM.ElementNode: cloneNode :: IsNode n => JBool -> Exp n -> Exp n
- HJScript.DOM.ElementNode: firstChild :: (IsElementNode n) => Exp n -> Exp Node
+ HJScript.DOM.ElementNode: firstChild :: IsElementNode n => Exp n -> Exp Node
- HJScript.DOM.ElementNode: getAttribute :: (IsElementNode n) => JString -> Exp n -> JString
+ HJScript.DOM.ElementNode: getAttribute :: IsElementNode n => JString -> Exp n -> JString
- HJScript.DOM.ElementNode: getAttributeNode :: (IsElementNode n) => JString -> Exp n -> Exp AttributeNode
+ HJScript.DOM.ElementNode: getAttributeNode :: IsElementNode n => JString -> Exp n -> Exp AttributeNode
- HJScript.DOM.ElementNode: hasAttribute :: (IsElementNode n) => JString -> Exp n -> JBool
+ HJScript.DOM.ElementNode: hasAttribute :: IsElementNode n => JString -> Exp n -> JBool
- HJScript.DOM.ElementNode: hasAttributes :: (IsElementNode n) => Exp n -> JBool
+ HJScript.DOM.ElementNode: hasAttributes :: IsElementNode n => Exp n -> JBool
- HJScript.DOM.ElementNode: hasChildNodes :: (IsElementNode n) => Exp n -> JBool
+ HJScript.DOM.ElementNode: hasChildNodes :: IsElementNode n => Exp n -> JBool
- HJScript.DOM.ElementNode: insertBefore :: (IsElementNode n) => Exp Node -> Exp Node -> Exp n -> HJScript ()
+ HJScript.DOM.ElementNode: insertBefore :: IsElementNode n => Exp Node -> Exp Node -> Exp n -> HJScript ()
- HJScript.DOM.ElementNode: lastChild :: (IsElementNode n) => Exp n -> Exp Node
+ HJScript.DOM.ElementNode: lastChild :: IsElementNode n => Exp n -> Exp Node
- HJScript.DOM.ElementNode: localName :: (IsElementNode n) => Exp n -> JString
+ HJScript.DOM.ElementNode: localName :: IsElementNode n => Exp n -> JString
- HJScript.DOM.ElementNode: nextSibling :: (IsElementNode n) => Exp n -> Exp Node
+ HJScript.DOM.ElementNode: nextSibling :: IsElementNode n => Exp n -> Exp Node
- HJScript.DOM.ElementNode: normalize :: (IsElementNode n) => Exp n -> HJScript ()
+ HJScript.DOM.ElementNode: normalize :: IsElementNode n => Exp n -> HJScript ()
- HJScript.DOM.ElementNode: parentNode :: (IsElementNode n) => Exp n -> Exp Node
+ HJScript.DOM.ElementNode: parentNode :: IsElementNode n => Exp n -> Exp Node
- HJScript.DOM.ElementNode: previousSibling :: (IsElementNode n) => Exp n -> Exp Node
+ HJScript.DOM.ElementNode: previousSibling :: IsElementNode n => Exp n -> Exp Node
- HJScript.DOM.ElementNode: removeAttribute :: (IsElementNode n) => JString -> Exp n -> HJScript ()
+ HJScript.DOM.ElementNode: removeAttribute :: IsElementNode n => JString -> Exp n -> HJScript ()
- HJScript.DOM.ElementNode: removeAttributeNode :: (IsElementNode n) => Exp AttributeNode -> Exp n -> HJScript ()
+ HJScript.DOM.ElementNode: removeAttributeNode :: IsElementNode n => Exp AttributeNode -> Exp n -> HJScript ()
- HJScript.DOM.ElementNode: scrollHeight :: (IsElementNode o) => Exp o -> Exp JInt
+ HJScript.DOM.ElementNode: scrollHeight :: IsElementNode o => Exp o -> Exp JInt
- HJScript.DOM.ElementNode: scrollHeightVar :: (IsElementNode o) => Exp o -> Var JInt
+ HJScript.DOM.ElementNode: scrollHeightVar :: IsElementNode o => Exp o -> Var JInt
- HJScript.DOM.ElementNode: scrollTop :: (IsElementNode o) => Exp o -> Exp JInt
+ HJScript.DOM.ElementNode: scrollTop :: IsElementNode o => Exp o -> Exp JInt
- HJScript.DOM.ElementNode: scrollTopVar :: (IsElementNode o) => Exp o -> Var JInt
+ HJScript.DOM.ElementNode: scrollTopVar :: IsElementNode o => Exp o -> Var JInt
- HJScript.DOM.ElementNode: setAttribute :: (IsElementNode n) => JString -> JString -> Exp n -> HJScript ()
+ HJScript.DOM.ElementNode: setAttribute :: IsElementNode n => JString -> JString -> Exp n -> HJScript ()
- HJScript.DOM.ElementNode: setAttributeNode :: (IsElementNode n) => Exp AttributeNode -> Exp n -> HJScript ()
+ HJScript.DOM.ElementNode: setAttributeNode :: IsElementNode n => Exp AttributeNode -> Exp n -> HJScript ()
- HJScript.DOM.ElementNode: tagName :: (IsElementNode o) => Exp o -> JString
+ HJScript.DOM.ElementNode: tagName :: IsElementNode o => Exp o -> JString
- HJScript.DOM.Node: castFromNode :: (IsNode n) => JObject Node -> JObject n
+ HJScript.DOM.Node: castFromNode :: IsNode n => JObject Node -> JObject n
- HJScript.DOM.Node: castToNode :: (IsNode n) => JObject n -> JObject Node
+ HJScript.DOM.Node: castToNode :: IsNode n => JObject n -> JObject Node
- HJScript.DOM.Node: class (IsClass n) => IsNode n
+ HJScript.DOM.Node: class IsClass n => IsNode n
- HJScript.DOM.Node: cloneNode :: (IsNode n) => JBool -> Exp n -> Exp n
+ HJScript.DOM.Node: cloneNode :: IsNode n => JBool -> Exp n -> Exp n
- HJScript.DOM.Node: nodeName :: (IsNode n) => Exp n -> JString
+ HJScript.DOM.Node: nodeName :: IsNode n => Exp n -> JString
- HJScript.DOM.Node: nodeType :: (IsNode n) => Exp n -> JInt
+ HJScript.DOM.Node: nodeType :: IsNode n => Exp n -> JInt
- HJScript.DOM.Node: nodeValue :: (IsNode n) => Exp n -> Var String
+ HJScript.DOM.Node: nodeValue :: IsNode n => Exp n -> Var String
- HJScript.DOM.Node: ownerDocument :: (IsNode n) => Exp n -> Exp Document
+ HJScript.DOM.Node: ownerDocument :: IsNode n => Exp n -> Exp Document
- HJScript.DOM.Node: prefix :: (IsNode n) => Exp n -> Exp String
+ HJScript.DOM.Node: prefix :: IsNode n => Exp n -> Exp String
- HJScript.DOM.XHTML: asXHTMLElement :: (IsElementNode n) => Exp n -> Exp XHTMLElement
+ HJScript.DOM.XHTML: asXHTMLElement :: IsElementNode n => Exp n -> Exp XHTMLElement
- HJScript.DOM.XHTML: class (IsElementNode a) => IsXHTMLElement a
+ HJScript.DOM.XHTML: class IsElementNode a => IsXHTMLElement a
- HJScript.DOM.XHTML: className :: (IsXHTMLElement n) => Exp n -> Var String
+ HJScript.DOM.XHTML: className :: IsXHTMLElement n => Exp n -> Var String
- HJScript.Lang: (.*.) :: (Num a) => HJSJBinOperator a a
+ HJScript.Lang: (.*.) :: Num a => HJSJBinOperator a a
- HJScript.Lang: (.+.) :: (PlusOpType a) => HJSJBinOperator a a
+ HJScript.Lang: (.+.) :: PlusOpType a => HJSJBinOperator a a
- HJScript.Lang: (.+=.) :: (Num t) => Var t -> Exp t -> HJScript ()
+ HJScript.Lang: (.+=.) :: Num t => Var t -> Exp t -> HJScript ()
- HJScript.Lang: (.-.) :: (Num a) => HJSJBinOperator a a
+ HJScript.Lang: (.-.) :: Num a => HJSJBinOperator a a
- HJScript.Lang: (./.) :: (Num a) => HJSJBinOperator a a
+ HJScript.Lang: (./.) :: Num a => HJSJBinOperator a a
- HJScript.Lang: (.<.) :: (Num a) => HJSJBinOperator a Bool
+ HJScript.Lang: (.<.) :: Num a => HJSJBinOperator a Bool
- HJScript.Lang: (.<=.) :: (Num a) => HJSJBinOperator a Bool
+ HJScript.Lang: (.<=.) :: Num a => HJSJBinOperator a Bool
- HJScript.Lang: (.>.) :: (Num a) => HJSJBinOperator a Bool
+ HJScript.Lang: (.>.) :: Num a => HJSJBinOperator a Bool
- HJScript.Lang: (.>=.) :: (Num a) => HJSJBinOperator a Bool
+ HJScript.Lang: (.>=.) :: Num a => HJSJBinOperator a Bool
- HJScript.Lang: callProc :: (Args e t) => Exp (t -> t1) -> e -> HJScript ()
+ HJScript.Lang: callProc :: Args e t => Exp (t -> t1) -> e -> HJScript ()
- HJScript.Lang: forIn :: (IsDeref d) => d -> (JString -> HJScript ()) -> HJScript ()
+ HJScript.Lang: forIn :: IsDeref d => d -> (JString -> HJScript ()) -> HJScript ()
- HJScript.Lang: forInVar :: (IsDeref d) => d -> (Var a -> HJScript ()) -> HJScript ()
+ HJScript.Lang: forInVar :: IsDeref d => d -> (Var a -> HJScript ()) -> HJScript ()
- HJScript.Lang: jShow :: (JShow t) => Exp t -> JString
+ HJScript.Lang: jShow :: JShow t => Exp t -> JString
- HJScript.Lang: jnull :: (IsNullable t) => Exp t
+ HJScript.Lang: jnull :: IsNullable t => Exp t
- HJScript.Lang: postdec :: (Num t) => Var t -> HJScript ()
+ HJScript.Lang: postdec :: Num t => Var t -> HJScript ()
- HJScript.Lang: postinc :: (Num t) => Var t -> HJScript ()
+ HJScript.Lang: postinc :: Num t => Var t -> HJScript ()
- HJScript.Lang: predec :: (Num t) => Var t -> HJScript ()
+ HJScript.Lang: predec :: Num t => Var t -> HJScript ()
- HJScript.Lang: preinc :: (Num t) => Var t -> HJScript ()
+ HJScript.Lang: preinc :: Num t => Var t -> HJScript ()
- HJScript.Lang: this :: (IsClass c) => Exp c
+ HJScript.Lang: this :: IsClass c => Exp c
- HJScript.Lang: toHJScript :: (IsHJScript a) => a -> HJScript ()
+ HJScript.Lang: toHJScript :: IsHJScript a => a -> HJScript ()
- HJScript.Objects.Math: abs :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: abs :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: acos :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: acos :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: asin :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: asin :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: atan :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: atan :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: cos :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: cos :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: exp :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: exp :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: floor :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: floor :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: log :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: log :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: max :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: max :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: min :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: min :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: pow :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: pow :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: random :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: random :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: round :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: round :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: sin :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: sin :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: sqrt :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: sqrt :: Num t => Exp t -> JFloat
- HJScript.Objects.Math: tan :: (Num t) => Exp t -> JFloat
+ HJScript.Objects.Math: tan :: Num t => Exp t -> JFloat
- HJScript.Utils: elemById :: (IsJString e) => e -> Exp ElementNode
+ HJScript.Utils: elemById :: IsJString e => e -> Exp ElementNode
- HJScript.Utils: elemVal :: (IsElementNode n) => Exp n -> JString
+ HJScript.Utils: elemVal :: IsElementNode n => Exp n -> JString
- HJScript.Utils: elemsByTag :: (IsJString e) => e -> JArray ElementNode
+ HJScript.Utils: elemsByTag :: IsJString e => e -> JArray ElementNode
- HJScript.Utils: fstElemByTag :: (IsJString e) => e -> Exp ElementNode
+ HJScript.Utils: fstElemByTag :: IsJString e => e -> Exp ElementNode
- HJScript.Utils: getElemById :: (IsJString e) => e -> HJScript (Exp ElementNode)
+ HJScript.Utils: getElemById :: IsJString e => e -> HJScript (Exp ElementNode)
- HJScript.Utils: getElemsByClass :: (IsJString e) => e -> HJScript (JArray ElementNode)
+ HJScript.Utils: getElemsByClass :: IsJString e => e -> HJScript (JArray ElementNode)
- HJScript.Utils: getElemsByTag :: (IsJString e) => e -> HJScript (JArray ElementNode)
+ HJScript.Utils: getElemsByTag :: IsJString e => e -> HJScript (JArray ElementNode)
- HJScript.Utils: getFstElemByClass :: (IsJString e) => e -> HJScript (JObject ElementNode)
+ HJScript.Utils: getFstElemByClass :: IsJString e => e -> HJScript (JObject ElementNode)
- HJScript.Utils: getFstElemByTag :: (IsJString e) => e -> HJScript (Exp ElementNode)
+ HJScript.Utils: getFstElemByTag :: IsJString e => e -> HJScript (Exp ElementNode)
- HJScript.Utils: getParentElem :: (IsElementNode e) => Exp e -> HJScript (Exp ElementNode)
+ HJScript.Utils: getParentElem :: IsElementNode e => Exp e -> HJScript (Exp ElementNode)
- HJScript.Utils: getSiblings :: (IsElementNode e) => Exp e -> HJScript (JArray Node)
+ HJScript.Utils: getSiblings :: IsElementNode e => Exp e -> HJScript (JArray Node)
- HJScript.Utils: hasChild :: (IsElementNode e) => Exp e -> JBool
+ HJScript.Utils: hasChild :: IsElementNode e => Exp e -> JBool
- HJScript.Utils: hasClass :: (IsJString e) => e -> Exp ElementNode -> JBool
+ HJScript.Utils: hasClass :: IsJString e => e -> Exp ElementNode -> JBool
- HJScript.Utils: hideElem :: (IsElementNode e) => Exp e -> HJScript ()
+ HJScript.Utils: hideElem :: IsElementNode e => Exp e -> HJScript ()
- HJScript.Utils: isInVisible :: (IsElementNode n) => Exp n -> JBool
+ HJScript.Utils: isInVisible :: IsElementNode n => Exp n -> JBool
- HJScript.Utils: isVisible :: (IsElementNode n) => Exp n -> JBool
+ HJScript.Utils: isVisible :: IsElementNode n => Exp n -> JBool
- HJScript.Utils: msg :: (IsExp e t) => e -> HJScript ()
+ HJScript.Utils: msg :: IsExp e t => e -> HJScript ()
- HJScript.Utils: parentElem :: (IsElementNode e) => (Exp e) -> Exp ElementNode
+ HJScript.Utils: parentElem :: IsElementNode e => (Exp e) -> Exp ElementNode
- HJScript.Utils: remChildren :: (IsElementNode e) => Exp e -> HJScript ()
+ HJScript.Utils: remChildren :: IsElementNode e => Exp e -> HJScript ()
- HJScript.Utils: remElem :: (IsElementNode e) => Exp e -> HJScript ()
+ HJScript.Utils: remElem :: IsElementNode e => Exp e -> HJScript ()
- HJScript.Utils: remFirstChild :: (IsElementNode e) => Exp e -> HJScript ()
+ HJScript.Utils: remFirstChild :: IsElementNode e => Exp e -> HJScript ()
- HJScript.Utils: setVal :: (IsElementNode n) => JString -> Exp n -> HJScript ()
+ HJScript.Utils: setVal :: IsElementNode n => JString -> Exp n -> HJScript ()
- HJScript.Utils: showBlock :: (IsElementNode e) => Exp e -> HJScript ()
+ HJScript.Utils: showBlock :: IsElementNode e => Exp e -> HJScript ()
- HJScript.Utils: showElem :: (IsElementNode e) => Exp e -> HJScript ()
+ HJScript.Utils: showElem :: IsElementNode e => Exp e -> HJScript ()
- HJScript.Utils: showInline :: (IsElementNode e) => Exp e -> HJScript ()
+ HJScript.Utils: showInline :: IsElementNode e => Exp e -> HJScript ()
- HJScript.Utils: toggleVis :: (IsElementNode n) => Exp n -> HJScript ()
+ HJScript.Utils: toggleVis :: IsElementNode n => Exp n -> HJScript ()
- HJScript.Utils: toggleVisBlock :: (IsElementNode n) => Exp n -> HJScript ()
+ HJScript.Utils: toggleVisBlock :: IsElementNode n => Exp n -> HJScript ()
- HJScript.Utils: toggleVisInline :: (IsElementNode n) => Exp n -> HJScript ()
+ HJScript.Utils: toggleVisInline :: IsElementNode n => Exp n -> HJScript ()
- HJScript.XMLGenerator: asAttr :: (EmbedAsAttr m a) => a -> GenAttributeList m
+ HJScript.XMLGenerator: asAttr :: EmbedAsAttr m a => a -> GenAttributeList m
- HJScript.XMLGenerator: asChild :: (EmbedAsChild m c) => c -> GenChildList m
+ HJScript.XMLGenerator: asChild :: EmbedAsChild m c => c -> GenChildList m
- HJScript.XMLGenerator: genEElement :: (XMLGen m) => Name -> [XMLGenT m [Attribute m]] -> XMLGenT m (XML m)
+ HJScript.XMLGenerator: genEElement :: XMLGen m => Name -> [XMLGenT m [Attribute m]] -> XMLGenT m (XML m)
- HJScript.XMLGenerator: genElement :: (XMLGen m) => Name -> [XMLGenT m [Attribute m]] -> [XMLGenT m [Child m]] -> XMLGenT m (XML m)
+ HJScript.XMLGenerator: genElement :: XMLGen m => Name -> [XMLGenT m [Attribute m]] -> [XMLGenT m [Child m]] -> XMLGenT m (XML m)

Files

HJScript.cabal view
@@ -1,5 +1,5 @@ Name:             HJScript-Version:          0.4.9+Version:          0.5.0 License:          BSD3 Author:           Joel Bjornson, joel.bjornson@gmail.com,                   Niklas Broberg, nibro@cs.chalmers.se@@ -46,7 +46,7 @@                     Cabal-Version:    >= 1.2.3-Build-Depends:    base < 5, HJavaScript >= 0.4.6, mtl, hsx >= 0.4.4+Build-Depends:    base < 5, HJavaScript >= 0.4.6, mtl, hsx >= 0.7.0 Build-Type:       Simple Category:         Web, Language 
src/HJScript/XMLGenerator.hs view
@@ -29,6 +29,7 @@  genElement = element  genEElement = eElement  xmlToChild = HJSChild . castToNode+ pcdataToChild str = HJSChild . castToNode $ document # createTextNode (string str)  element :: (EmbedAsChild HJScript' c,              EmbedAsAttr HJScript' a) @@ -57,8 +58,8 @@ instance EmbedAsChild HJScript' JString where  asChild jstr = asChild $ castToNode $ document # createTextNode jstr -instance EmbedAsChild HJScript' String where- asChild = asChild . string+--instance EmbedAsChild HJScript' String where+-- asChild = asChild . string  instance EmbedAsChild HJScript' Char where  asChild = asChild . (:[])