Mercurial > projects > dstep
diff dstep/foundation/NSXMLDocument.d @ 14:89f3c3ef1fd2
Added the Foundation framework
author | Jacob Carlborg <doob@me.com> |
---|---|
date | Mon, 03 Aug 2009 15:23:15 +0200 |
parents | |
children | 19885b43130e |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/dstep/foundation/NSXMLDocument.d Mon Aug 03 15:23:15 2009 +0200 @@ -0,0 +1,228 @@ +/** + * Copyright: Copyright (c) 2009 Jacob Carlborg. + * Authors: Jacob Carlborg + * Version: Initial created: Aug 3, 2009 + * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost Software License 1.0) + */ +module dstep.foundation.NSXMLDocument; + +import dstep.foundation.NSData; +import dstep.foundation.NSXMLDTD; +import dstep.foundation.NSXMLNode; +import dstep.objc.bridge.Bridge; +import dstep.objc.objc : id; + +alias NSUInteger NSXMLDocumentContentKind; + +enum +{ + NSXMLDocumentXMLKind = 0, + NSXMLDocumentXHTMLKind, + NSXMLDocumentHTMLKind, + NSXMLDocumentTextKind +} + +class NSXMLDocument : NSXMLNode +{ + mixin ObjcWrap; + + Object initWithXMLString (NSString string, NSUInteger mask, NSError** error) + { + return invokeObjcSelf!(Object, "initWithXMLString:options:error:", NSString, NSUInteger, NSError**)(string, mask, error); + } + + this (NSString string, NSUInteger mask, NSError** error) + { + objcObject = Bridge.invokeObjcClassMethod!(id, "alloc")(objcClass); + id result = Bridge.invokeObjcMethod!(id, "initWithXMLString:options:error:", NSString, NSUInteger, NSError**)(objcObject, string, mask, error); + + if (result) + objcObject = ret; + + dObject = this; + } + + Object initWithContentsOfURL (NSURL url, NSUInteger mask, NSError** error) + { + return invokeObjcSelf!(Object, "initWithContentsOfURL:options:error:", NSURL, NSUInteger, NSError**)(url, mask, error); + } + + this (NSURL url, NSUInteger mask, NSError** error) + { + objcObject = Bridge.invokeObjcClassMethod!(id, "alloc")(objcClass); + id result = Bridge.invokeObjcMethod!(id, "initWithContentsOfURL:options:error:", NSURL, NSUInteger, NSError**)(objcObject, url, mask, error); + + if (result) + objcObject = ret; + + dObject = this; + } + + Object initWithData (NSData data, NSUInteger mask, NSError** error) + { + return invokeObjcSelf!(Object, "initWithData:options:error:", NSData, NSUInteger, NSError**)(data, mask, error); + } + + this (NSData data, NSUInteger mask, NSError** error) + { + objcObject = Bridge.invokeObjcClassMethod!(id, "alloc")(objcClass); + id result = Bridge.invokeObjcMethod!(id, "initWithData:options:error:", NSData, NSUInteger, NSError**)(objcObject, data, mask, error); + + if (result) + objcObject = ret; + + dObject = this; + } + + Object initWithRootElement (NSXMLElement element) + { + return invokeObjcSelf!(Object, "initWithRootElement:", NSXMLElement)(element); + } + + this (NSXMLElement element) + { + objcObject = Bridge.invokeObjcClassMethod!(id, "alloc")(objcClass); + id result = Bridge.invokeObjcMethod!(id, "initWithRootElement:", NSXMLElement)(objcObject, element); + + if (result) + objcObject = ret; + + dObject = this; + } + + static Class replacementClassForClass (Class cls) + { + return invokeObjcSelfClass!(Class, "replacementClassForClass:", Class)(cls); + } + + void setCharacterEncoding (NSString encoding) + { + return invokeObjcSelf!(void, "setCharacterEncoding:", NSString)(encoding); + } + + NSString characterEncoding () + { + return invokeObjcSelf!(NSString, "characterEncoding"); + } + + void setVersion (NSString version_) + { + return invokeObjcSelf!(void, "setVersion:", NSString)(version_); + } + + NSString version_ () + { + return invokeObjcSelf!(NSString, "version"); + } + + void setStandalone (bool standalone) + { + return invokeObjcSelf!(void, "setStandalone:", bool)(standalone); + } + + bool isStandalone () + { + return invokeObjcSelf!(bool, "isStandalone"); + } + + void setDocumentContentKind (uint kind) + { + return invokeObjcSelf!(void, "setDocumentContentKind:", uint)(kind); + } + + uint documentContentKind () + { + return invokeObjcSelf!(uint, "documentContentKind"); + } + + void setMIMEType (NSString MIMEType) + { + return invokeObjcSelf!(void, "setMIMEType:", NSString)(MIMEType); + } + + NSString MIMEType () + { + return invokeObjcSelf!(NSString, "MIMEType"); + } + + void setDTD (NSXMLDTD documentTypeDeclaration) + { + return invokeObjcSelf!(void, "setDTD:", NSXMLDTD)(documentTypeDeclaration); + } + + NSXMLDTD DTD () + { + return invokeObjcSelf!(NSXMLDTD, "DTD"); + } + + void setRootElement (NSXMLNode root) + { + return invokeObjcSelf!(void, "setRootElement:", NSXMLNode)(root); + } + + NSXMLElement rootElement () + { + return invokeObjcSelf!(NSXMLElement, "rootElement"); + } + + void insertChild (NSXMLNode child, NSUInteger index) + { + return invokeObjcSelf!(void, "insertChild:atIndex:", NSXMLNode, NSUInteger)(child, index); + } + + void insertChildren (NSArray children, NSUInteger index) + { + return invokeObjcSelf!(void, "insertChildren:atIndex:", NSArray, NSUInteger)(children, index); + } + + void removeChildAtIndex (NSUInteger index) + { + return invokeObjcSelf!(void, "removeChildAtIndex:", NSUInteger)(index); + } + + void setChildren (NSArray children) + { + return invokeObjcSelf!(void, "setChildren:", NSArray)(children); + } + + void addChild (NSXMLNode child) + { + return invokeObjcSelf!(void, "addChild:", NSXMLNode)(child); + } + + void replaceChildAtIndex (NSUInteger index, NSXMLNode node) + { + return invokeObjcSelf!(void, "replaceChildAtIndex:withNode:", NSUInteger, NSXMLNode)(index, node); + } + + NSData XMLData () + { + return invokeObjcSelf!(NSData, "XMLData"); + } + + NSData XMLDataWithOptions (NSUInteger options) + { + return invokeObjcSelf!(NSData, "XMLDataWithOptions:", NSUInteger)(options); + } + + Object objectByApplyingXSLT (NSData xslt, NSDictionary arguments, NSError** error) + { + return invokeObjcSelf!(Object, "objectByApplyingXSLT:arguments:error:", NSData, NSDictionary, NSError**)(xslt, arguments, error); + } + + Object objectByApplyingXSLTString (NSString xslt, NSDictionary arguments, NSError** error) + { + return invokeObjcSelf!(Object, "objectByApplyingXSLTString:arguments:error:", NSString, NSDictionary, NSError**)(xslt, arguments, error); + } + + Object objectByApplyingXSLTAtURL (NSURL xsltURL, NSDictionary argument, NSError** error) + { + return invokeObjcSelf!(Object, "objectByApplyingXSLTAtURL:arguments:error:", NSURL, NSDictionary, NSError**)(xsltURL, argument, error); + } + + bool validateAndReturnError (NSError** error) + { + return invokeObjcSelf!(bool, "validateAndReturnError:", NSError**)(error); + } +} +