module HJScript.DOM.Node (
Node(..), IsNode(..),
NodeType(..), nodeTypeVal,
nodeName, nodeType, nodeValue,
ownerDocument, prefix, cloneNode
) where
import HJScript.Lang
import HJScript.DOM.NodeTypes
instance IsClass Node
class IsClass n => IsNode n where
castToNode :: JObject n -> JObject Node
castToNode = castObject
castFromNode :: JObject Node -> JObject n
castFromNode = castObject
instance IsNode Node where
castToNode = id
castFromNode = id
nodeName :: IsNode n => Exp n -> JString
nodeName = deref "nodeName"
nodeType :: IsNode n => Exp n -> JInt
nodeType = deref "nodeType"
nodeValue :: IsNode n => Exp n -> Var String
nodeValue = derefVar "nodeValue"
ownerDocument :: IsNode n => Exp n -> Exp Document
ownerDocument = deref "ownerDocument"
prefix :: IsNode n => Exp n -> Exp String
prefix = deref "prefix"
cloneNode :: IsNode n => JBool -> Exp n -> Exp n
cloneNode = methodCall "cloneNode"