ReactOS 0.4.16-dev-2208-g6350669
msxml_private.h
Go to the documentation of this file.
1/*
2 * Common definitions
3 *
4 * Copyright 2005 Mike McCormack
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 */
20
21#ifndef __MSXML_PRIVATE__
22#define __MSXML_PRIVATE__
23
24#include "dispex.h"
25
26#include "wine/list.h"
27#ifdef __REACTOS__
28#include "wine/unicode.h"
29#endif
30
31#include "msxml_dispex.h"
32
34
35
36/* The XDR datatypes (urn:schemas-microsoft-com:datatypes)
37 * These are actually valid for XSD schemas as well
38 * See datatypes.xsd
39 */
40typedef enum _XDR_DT {
80
82
83/* XSLProcessor parameter list */
85{
86 struct list entry;
89};
90
92{
93 struct list list;
94 unsigned int count;
95};
96
97extern void schemasInit(void);
98extern void schemasCleanup(void);
99
100/* IXMLDOMNode Internal Structure */
101typedef struct _xmlnode
102{
106 xmlNodePtr node;
108
109/* IXMLDOMNamedNodeMap custom function table */
111{
112 HRESULT (*get_named_item)(const xmlNodePtr,BSTR,IXMLDOMNode**);
116 HRESULT (*get_length)(xmlNodePtr,LONG*);
119 HRESULT (*next_node)(const xmlNodePtr,LONG*,IXMLDOMNode**);
120};
121
122/* used by IEnumVARIANT to access outer object items */
124{
127};
128
129/* constructors */
130extern IUnknown *create_domdoc( xmlNodePtr );
131extern IUnknown *create_xmldoc( void );
132extern IXMLDOMNode *create_node( xmlNodePtr );
133extern IUnknown *create_element( xmlNodePtr );
134extern IUnknown *create_attribute( xmlNodePtr, BOOL );
135extern IUnknown *create_text( xmlNodePtr );
136extern IUnknown *create_pi( xmlNodePtr );
137extern IUnknown *create_comment( xmlNodePtr );
138extern IUnknown *create_cdata( xmlNodePtr );
139extern IXMLDOMNodeList *create_children_nodelist( xmlNodePtr );
140extern IXMLDOMNamedNodeMap *create_nodemap( xmlNodePtr, const struct nodemap_funcs* );
141extern IUnknown *create_doc_fragment( xmlNodePtr );
142extern IUnknown *create_doc_entity_ref( xmlNodePtr );
143extern IUnknown *create_doc_type( xmlNodePtr );
144extern HRESULT create_selection( xmlNodePtr, xmlChar*, IXMLDOMNodeList** );
147
148/* data accessors */
149xmlNodePtr xmlNodePtr_from_domnode( IXMLDOMNode *iface, xmlElementType type );
150
151/* helpers */
153
154extern void xmldoc_init( xmlDocPtr doc, MSXML_VERSION version );
155extern LONG xmldoc_add_ref( xmlDocPtr doc );
156extern LONG xmldoc_release( xmlDocPtr doc );
157extern LONG xmldoc_add_refs( xmlDocPtr doc, LONG refs );
158extern LONG xmldoc_release_refs ( xmlDocPtr doc, LONG refs );
159extern void xmlnode_add_ref(xmlNodePtr node);
160extern void xmlnode_release(xmlNodePtr node);
161extern int xmlnode_get_inst_cnt( xmlnode *node );
162extern HRESULT xmldoc_add_orphan( xmlDocPtr doc, xmlNodePtr node );
163extern HRESULT xmldoc_remove_orphan( xmlDocPtr doc, xmlNodePtr node );
164extern void xmldoc_link_xmldecl(xmlDocPtr doc, xmlNodePtr node);
165extern xmlNodePtr xmldoc_unlink_xmldecl(xmlDocPtr doc);
166extern MSXML_VERSION xmldoc_version( xmlDocPtr doc );
167
168extern HRESULT XMLElement_create( xmlNodePtr node, LPVOID *ppObj, BOOL own );
169
170extern void wineXmlCallbackLog(char const* caller, xmlErrorLevel lvl, char const* msg, va_list ap);
171extern void wineXmlCallbackError(char const* caller, const xmlError* err);
172
173#define LIBXML2_LOG_CALLBACK WINAPIV __WINE_PRINTF_ATTR(2,3)
174
175#define LIBXML2_CALLBACK_TRACE(caller, msg, ap) \
176 wineXmlCallbackLog(#caller, XML_ERR_NONE, msg, ap)
177
178#define LIBXML2_CALLBACK_WARN(caller, msg, ap) \
179 wineXmlCallbackLog(#caller, XML_ERR_WARNING, msg, ap)
180
181#define LIBXML2_CALLBACK_ERR(caller, msg, ap) \
182 wineXmlCallbackLog(#caller, XML_ERR_ERROR, msg, ap)
183
184#define LIBXML2_CALLBACK_SERROR(caller, err) wineXmlCallbackError(#caller, err)
185
186extern BOOL is_preserving_whitespace(xmlNodePtr node);
187extern BOOL is_xpathmode(const xmlDocPtr doc);
188extern void set_xpathmode(xmlDocPtr doc, BOOL xpath);
189
190extern void init_xmlnode(xmlnode*,xmlNodePtr,IXMLDOMNode*,dispex_static_data_t*);
191extern void destroy_xmlnode(xmlnode*);
194
218extern HRESULT node_get_text(const xmlnode*,BSTR*);
223 const struct xslprocessor_params*);
225
226extern HRESULT get_domdoc_from_xmldoc(xmlDocPtr xmldoc, IXMLDOMDocument3 **document);
227
231
232extern XDR_DT str_to_dt(xmlChar const* str, int len /* calculated if -1 */);
233extern XDR_DT bstr_to_dt(OLECHAR const* bstr, int len /* calculated if -1 */);
234extern xmlChar const* dt_to_str(XDR_DT dt);
235extern const char* debugstr_dt(XDR_DT dt);
236extern OLECHAR const* dt_to_bstr(XDR_DT dt);
237extern HRESULT dt_validate(XDR_DT dt, xmlChar const* content);
238
240
241extern xmlChar* tagName_to_XPath(const BSTR tagName);
242
244
245#include <libxslt/documents.h>
246extern xmlDocPtr xslt_doc_default_loader(const xmlChar *uri, xmlDictPtr dict, int options,
247 void *_ctxt, xsltLoadType type);
248
249static inline BSTR bstr_from_xmlChar(const xmlChar *str)
250{
251 BSTR ret = NULL;
252
253 if(str) {
256 if(ret)
258 }
259 else
261
262 return ret;
263}
264
265static inline xmlChar *xmlchar_from_wcharn(const WCHAR *str, int nchars, BOOL use_xml_alloc)
266{
267 xmlChar *xmlstr;
268 DWORD len = WideCharToMultiByte( CP_UTF8, 0, str, nchars, NULL, 0, NULL, NULL );
269
270 xmlstr = use_xml_alloc ? xmlMalloc( len + 1 ) : malloc( len + 1 );
271 if ( xmlstr )
272 {
273 WideCharToMultiByte( CP_UTF8, 0, str, nchars, (LPSTR) xmlstr, len+1, NULL, NULL );
274 xmlstr[len] = 0;
275 }
276 return xmlstr;
277}
278
279static inline xmlChar *xmlchar_from_wchar( const WCHAR *str )
280{
281 return xmlchar_from_wcharn(str, -1, FALSE);
282}
283
284static inline xmlChar *strdupxmlChar(const xmlChar *str)
285{
286 xmlChar *ret = NULL;
287
288 if(str) {
289 DWORD size;
290
291 size = (xmlStrlen(str)+1)*sizeof(xmlChar);
292 ret = malloc(size);
293 memcpy(ret, str, size);
294 }
295
296 return ret;
297}
298
300{
301 if(!p)
302 return E_INVALIDARG;
303 *p = NULL;
304 return S_FALSE;
305}
306
307static inline HRESULT return_null_ptr(void **p)
308{
309 if(!p)
310 return E_INVALIDARG;
311 *p = NULL;
312 return S_FALSE;
313}
314
316{
317 if(!p)
318 return E_INVALIDARG;
319
320 V_VT(p) = VT_NULL;
321 return S_FALSE;
322}
323
325{
326 if(!p)
327 return E_INVALIDARG;
328
329 *p = NULL;
330 return S_FALSE;
331}
332
334{
335 if(!p)
336 return E_INVALIDARG;
337
338 *p = VARIANT_FALSE;
339 return S_FALSE;
340}
341
343 LONG line, LONG linepos, LONG filepos );
348extern HRESULT XMLHTTPRequest_create(void **);
349extern HRESULT ServerXMLHTTP_create(void **);
350extern HRESULT XSLTemplate_create(void**);
353extern HRESULT XMLParser_create(void**);
354extern HRESULT XMLView_create(void**);
355
356/* Error Codes - not defined anywhere in the public headers */
357#define E_XML_ELEMENT_UNDECLARED 0xC00CE00D
358#define E_XML_ELEMENT_ID_NOT_FOUND 0xC00CE00E
359/* ... */
360#define E_XML_EMPTY_NOT_ALLOWED 0xC00CE011
361#define E_XML_ELEMENT_NOT_COMPLETE 0xC00CE012
362#define E_XML_ROOT_NAME_MISMATCH 0xC00CE013
363#define E_XML_INVALID_CONTENT 0xC00CE014
364#define E_XML_ATTRIBUTE_NOT_DEFINED 0xC00CE015
365#define E_XML_ATTRIBUTE_FIXED 0xC00CE016
366#define E_XML_ATTRIBUTE_VALUE 0xC00CE017
367#define E_XML_ILLEGAL_TEXT 0xC00CE018
368/* ... */
369#define E_XML_REQUIRED_ATTRIBUTE_MISSING 0xC00CE020
370
371#define NODE_PRIV_TRAILING_IGNORABLE_WS 0x40000000
372#define NODE_PRIV_CHILD_IGNORABLE_WS 0x80000000
373#define NODE_PRIV_REFCOUNT_MASK ~(NODE_PRIV_TRAILING_IGNORABLE_WS|NODE_PRIV_CHILD_IGNORABLE_WS)
374#endif /* __MSXML_PRIVATE__ */
#define msg(x)
Definition: auth_time.c:54
Definition: list.h:37
#define E_INVALIDARG
Definition: ddrawi.h:101
#define malloc
Definition: debug_ros.c:4
#define NULL
Definition: types.h:112
#define FALSE
Definition: types.h:117
content
Definition: atl_ax.c:994
static WCHAR reason[MAX_STRING_RESOURCE_LEN]
Definition: object.c:1904
WCHAR OLECHAR
Definition: compat.h:2292
OLECHAR * BSTR
Definition: compat.h:2293
#define WideCharToMultiByte
Definition: compat.h:111
short VARIANT_BOOL
Definition: compat.h:2290
#define MultiByteToWideChar
Definition: compat.h:110
@ VT_NULL
Definition: compat.h:2296
static const WCHAR version[]
Definition: asmname.c:66
char * va_list
Definition: vadefs.h:50
xsltLoadType
Definition: documents.h:53
return ret
Definition: mutex.c:146
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
const GLdouble * v
Definition: gl.h:2040
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
GLsizeiptr size
Definition: glext.h:5919
GLfloat GLfloat p
Definition: glext.h:8902
GLenum GLsizei len
Definition: glext.h:6722
tid_t
Definition: ieframe.h:311
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
static const WCHAR url[]
Definition: encode.c:1384
static HGLOBAL create_text(void)
Definition: clipboard.c:1496
const char * uri
Definition: sec_mgr.c:1588
MSXML_VERSION
Definition: msxml_dispex.h:27
IUnknown * create_xmldoc(void)
HRESULT node_get_next_sibling(xmlnode *, IXMLDOMNode **)
Definition: node.c:380
HRESULT MXNamespaceManager_create(void **)
Definition: mxnamespace.c:638
IUnknown * create_doc_entity_ref(xmlNodePtr)
Definition: entityref.c:577
xmlChar * xmlChar_from_wchar(LPCWSTR str)
HRESULT node_get_prefix(xmlnode *, BSTR *)
Definition: node.c:1606
void xmlnode_add_ref(xmlNodePtr node)
Definition: node.c:420
LONG xmldoc_release_refs(xmlDocPtr doc, LONG refs)
Definition: domdoc.c:624
IUnknown * create_doc_fragment(xmlNodePtr)
Definition: docfrag.c:580
XDR_DT bstr_to_dt(OLECHAR const *bstr, int len)
Definition: schema.c:555
void schemasCleanup(void)
Definition: schema.c:748
HRESULT node_has_childnodes(const xmlnode *, VARIANT_BOOL *)
Definition: node.c:658
HRESULT node_put_value_escaped(xmlnode *, VARIANT *)
Definition: node.c:303
HRESULT node_get_text(const xmlnode *, BSTR *)
Definition: node.c:842
HRESULT SAXXMLReader_create(MSXML_VERSION, void **)
HRESULT node_get_base_name(xmlnode *, BSTR *)
Definition: node.c:1622
void set_xpathmode(xmlDocPtr doc, BOOL xpath)
Definition: domdoc.c:230
HRESULT node_put_text(xmlnode *, BSTR)
Definition: node.c:867
BOOL is_preserving_whitespace(xmlNodePtr node)
Definition: domdoc.c:419
HRESULT node_get_last_child(xmlnode *, IXMLDOMNode **)
Definition: node.c:370
xmlNodePtr xmlNodePtr_from_domnode(IXMLDOMNode *iface, xmlElementType type)
Definition: node.c:52
static BSTR bstr_from_xmlChar(const xmlChar *str)
HRESULT create_dom_implementation(IXMLDOMImplementation **obj)
Definition: domimpl.c:193
HRESULT node_remove_child(xmlnode *, IXMLDOMNode *, IXMLDOMNode **)
Definition: node.c:608
HRESULT dom_pi_put_xml_decl(IXMLDOMNode *node, BSTR data)
Definition: pi.c:750
xmlChar const * dt_to_str(XDR_DT dt)
Definition: schema.c:569
HRESULT node_transform_node_params(const xmlnode *, IXMLDOMNode *, BSTR *, ISequentialStream *, const struct xslprocessor_params *)
Definition: node.c:1480
HRESULT XMLHTTPRequest_create(void **)
Definition: httprequest.c:2088
HRESULT create_enumvariant(IUnknown *, BOOL, const struct enumvariant_funcs *, IEnumVARIANT **)
Definition: selection.c:565
IUnknown * create_attribute(xmlNodePtr, BOOL)
Definition: attribute.c:730
IUnknown * create_element(xmlNodePtr)
Definition: element.c:1942
HRESULT XMLView_create(void **)
Definition: xmlview.c:1404
HRESULT SAXAttributes_create(MSXML_VERSION, void **)
Definition: mxwriter.c:3555
HRESULT node_get_parent(xmlnode *, IXMLDOMNode **)
Definition: node.c:348
xmlChar * tagName_to_XPath(const BSTR tagName)
Definition: domdoc.c:1955
HRESULT node_replace_child(xmlnode *, IXMLDOMNode *, IXMLDOMNode *, IXMLDOMNode **)
Definition: node.c:543
static xmlChar * xmlchar_from_wchar(const WCHAR *str)
IXMLDOMNode * create_node(xmlNodePtr)
Definition: node.c:2225
static HRESULT return_null_bstr(BSTR *p)
IUnknown * create_doc_type(xmlNodePtr)
Definition: doctype.c:569
IXMLDOMNodeList * create_children_nodelist(xmlNodePtr)
Definition: nodelist.c:416
HRESULT node_put_value(xmlnode *, VARIANT *)
Definition: node.c:279
IXMLDOMParseError * create_parseError(LONG code, BSTR url, BSTR reason, BSTR srcText, LONG line, LONG linepos, LONG filepos)
Definition: parseerror.c:320
HRESULT node_clone(xmlnode *, VARIANT_BOOL, IXMLDOMNode **)
Definition: node.c:679
IXMLDOMNamedNodeMap * create_nodemap(xmlNodePtr, const struct nodemap_funcs *)
Definition: nodemap.c:431
HRESULT node_append_child(xmlnode *, IXMLDOMNode *, IXMLDOMNode **)
Definition: node.c:639
HRESULT MXWriter_create(MSXML_VERSION, void **)
Definition: mxwriter.c:2590
void schemasInit(void)
Definition: schema.c:717
HRESULT xmldoc_remove_orphan(xmlDocPtr doc, xmlNodePtr node)
Definition: domdoc.c:672
void wineXmlCallbackError(char const *caller, const xmlError *err)
Definition: main.c:81
static xmlChar * xmlchar_from_wcharn(const WCHAR *str, int nchars, BOOL use_xml_alloc)
HRESULT node_get_previous_sibling(xmlnode *, IXMLDOMNode **)
Definition: node.c:375
HRESULT create_selection(xmlNodePtr, xmlChar *, IXMLDOMNodeList **)
Definition: selection.c:764
void xmldoc_init(xmlDocPtr doc, MSXML_VERSION version)
Definition: domdoc.c:606
enum _XDR_DT XDR_DT
HRESULT XMLElement_create(xmlNodePtr node, LPVOID *ppObj, BOOL own)
Definition: xmlelem.c:480
static HRESULT return_var_false(VARIANT_BOOL *p)
HRESULT node_get_content(xmlnode *, VARIANT *)
Definition: node.c:225
int xmlnode_get_inst_cnt(xmlnode *node)
Definition: node.c:413
HRESULT node_transform_node(const xmlnode *, IXMLDOMNode *, BSTR *)
Definition: node.c:1553
LONG xmldoc_release(xmlDocPtr doc)
Definition: domdoc.c:653
HRESULT node_select_nodes(const xmlnode *, BSTR, IXMLDOMNodeList **)
Definition: node.c:1558
XDR_DT SchemaCache_get_node_dt(IXMLDOMSchemaCollection2 *, xmlNodePtr)
Definition: schema.c:1561
void xmlnode_release(xmlNodePtr node)
Definition: node.c:426
struct _xmlnode xmlnode
HRESULT node_get_first_child(xmlnode *, IXMLDOMNode **)
Definition: node.c:365
HRESULT get_domdoc_from_xmldoc(xmlDocPtr xmldoc, IXMLDOMDocument3 **document)
Definition: domdoc.c:3749
LONG xmldoc_add_ref(xmlDocPtr doc)
Definition: domdoc.c:619
HRESULT SchemaCache_validate_tree(IXMLDOMSchemaCollection2 *, xmlNodePtr)
Definition: schema.c:1537
static HRESULT return_null_var(VARIANT *p)
HRESULT SchemaCache_create(MSXML_VERSION, void **)
Definition: schema.c:1601
const CLSID * DOMDocument_version(MSXML_VERSION v)
Definition: main.c:348
HRESULT node_set_content(xmlnode *, LPCWSTR)
Definition: node.c:241
void destroy_xmlnode(xmlnode *)
Definition: node.c:1638
void xmldoc_link_xmldecl(xmlDocPtr doc, xmlNodePtr node)
Definition: domdoc.c:386
static HRESULT return_null_ptr(void **p)
xmlNodePtr xmldoc_unlink_xmldecl(xmlDocPtr doc)
Definition: domdoc.c:393
LONG xmldoc_add_refs(xmlDocPtr doc, LONG refs)
Definition: domdoc.c:612
BOOL is_xpathmode(const xmlDocPtr doc)
Definition: domdoc.c:225
XDR_DT str_to_dt(xmlChar const *str, int len)
Definition: schema.c:541
HRESULT node_insert_before(xmlnode *, IXMLDOMNode *, const VARIANT *, IXMLDOMNode **)
Definition: node.c:432
IUnknown * create_comment(xmlNodePtr)
Definition: comment.c:825
HRESULT node_get_nodeName(xmlnode *, BSTR *)
Definition: node.c:178
void wineXmlCallbackLog(char const *caller, xmlErrorLevel lvl, char const *msg, va_list ap)
Definition: main.c:55
IUnknown * create_domdoc(xmlNodePtr)
Definition: domdoc.c:3813
HRESULT ServerXMLHTTP_create(void **)
Definition: httprequest.c:2106
HRESULT node_select_singlenode(const xmlnode *, BSTR, IXMLDOMNode **)
Definition: node.c:1572
void init_xmlnode(xmlnode *, xmlNodePtr, IXMLDOMNode *, dispex_static_data_t *)
Definition: node.c:1647
HRESULT node_get_owner_doc(const xmlnode *, IXMLDOMDocument **)
Definition: node.c:672
IUnknown * create_pi(xmlNodePtr)
Definition: pi.c:944
HRESULT cache_from_doc_ns(IXMLDOMSchemaCollection2 *, xmlnode *)
Definition: schema.c:1028
static xmlChar * strdupxmlChar(const xmlChar *str)
xmlDocPtr xslt_doc_default_loader(const xmlChar *uri, xmlDictPtr dict, int options, void *_ctxt, xsltLoadType type)
Definition: node.c:1401
BSTR EnsureCorrectEOL(BSTR)
Definition: node.c:885
HRESULT node_get_xml(xmlnode *, BOOL, BSTR *)
Definition: node.c:936
HRESULT dt_validate(XDR_DT dt, xmlChar const *content)
Definition: schema.c:590
const char * debugstr_dt(XDR_DT dt)
Definition: schema.c:585
_XDR_DT
Definition: msxml_private.h:40
@ DT_I4
Definition: msxml_private.h:57
@ DT_NMTOKEN
Definition: msxml_private.h:63
@ DT_ID
Definition: msxml_private.h:59
@ DT_TIME_TZ
Definition: msxml_private.h:71
@ DT_NUMBER
Definition: msxml_private.h:66
@ DT_FIXED_14_4
Definition: msxml_private.h:53
@ DT_NMTOKENS
Definition: msxml_private.h:64
@ DT_URI
Definition: msxml_private.h:76
@ DT_DATE_TZ
Definition: msxml_private.h:47
@ DT_INVALID
Definition: msxml_private.h:41
@ DT_UI4
Definition: msxml_private.h:74
@ DT_R8
Definition: msxml_private.h:68
@ DT_DATETIME_TZ
Definition: msxml_private.h:49
@ DT_STRING
Definition: msxml_private.h:69
@ DT_ENTITIES
Definition: msxml_private.h:51
@ DT_FLOAT
Definition: msxml_private.h:54
@ DT_DATETIME
Definition: msxml_private.h:48
@ DT_BIN_HEX
Definition: msxml_private.h:43
@ DT_I1
Definition: msxml_private.h:55
@ DT_UI8
Definition: msxml_private.h:75
@ DT_DATE
Definition: msxml_private.h:46
@ LAST_DT
Definition: msxml_private.h:78
@ DT_UI2
Definition: msxml_private.h:73
@ DT_BIN_BASE64
Definition: msxml_private.h:42
@ DT_I2
Definition: msxml_private.h:56
@ DT_ENTITY
Definition: msxml_private.h:50
@ DT_ENUMERATION
Definition: msxml_private.h:52
@ DT_IDREF
Definition: msxml_private.h:60
@ DT_R4
Definition: msxml_private.h:67
@ DT_UI1
Definition: msxml_private.h:72
@ DT_BOOLEAN
Definition: msxml_private.h:44
@ DT_CHAR
Definition: msxml_private.h:45
@ DT_TIME
Definition: msxml_private.h:70
@ DT_IDREFS
Definition: msxml_private.h:61
@ DT_NOTATION
Definition: msxml_private.h:65
@ DT_I8
Definition: msxml_private.h:58
@ DT_INT
Definition: msxml_private.h:62
@ DT_UUID
Definition: msxml_private.h:77
xmlnode * get_node_obj(IXMLDOMNode *)
Definition: node.c:168
HRESULT XMLParser_create(void **)
Definition: xmlparser.c:414
HRESULT node_get_namespaceURI(xmlnode *, BSTR *)
Definition: node.c:1589
HRESULT node_get_child_nodes(xmlnode *, IXMLDOMNodeList **)
Definition: node.c:353
HRESULT XMLDocument_create(void **)
BOOL node_query_interface(xmlnode *, REFIID, void **)
Definition: node.c:66
HRESULT XSLTemplate_create(void **)
Definition: stylesheet.c:264
OLECHAR const * dt_to_bstr(XDR_DT dt)
Definition: schema.c:577
IUnknown * create_cdata(xmlNodePtr)
Definition: cdata.c:874
static HRESULT return_null_node(IXMLDOMNode **p)
HRESULT xmldoc_add_orphan(xmlDocPtr doc, xmlNodePtr node)
Definition: domdoc.c:658
MSXML_VERSION xmldoc_version(xmlDocPtr doc)
Definition: domdoc.c:414
HRESULT node_create_supporterrorinfo(const tid_t *, void **)
HINSTANCE MSXML_hInstance
Definition: main.c:51
BSTR WINAPI SysAllocStringLen(const OLECHAR *str, unsigned int len)
Definition: oleaut.c:339
#define V_VT(A)
Definition: oleauto.h:211
long LONG
Definition: pedump.c:60
#define REFIID
Definition: guiddef.h:118
#define err(...)
const WCHAR * str
#define CP_UTF8
Definition: nls.h:20
xmlMallocFunc xmlMalloc
Definition: globals.c:193
Definition: dict.c:59
Definition: xmldoc.c:49
DispatchEx dispex
IXMLDOMNode * parent
IXMLDOMNode * iface
xmlNodePtr node
Definition: inflate.c:139
HRESULT(* next)(IUnknown *)
HRESULT(* get_item)(IUnknown *, LONG, VARIANT *)
Definition: parser.c:49
HRESULT(* get_qualified_item)(const xmlNodePtr, BSTR, BSTR, IXMLDOMNode **)
HRESULT(* set_named_item)(xmlNodePtr, IXMLDOMNode *, IXMLDOMNode **)
HRESULT(* remove_qualified_item)(xmlNodePtr, BSTR, BSTR, IXMLDOMNode **)
HRESULT(* get_named_item)(const xmlNodePtr, BSTR, IXMLDOMNode **)
HRESULT(* get_length)(xmlNodePtr, LONG *)
HRESULT(* next_node)(const xmlNodePtr, LONG *, IXMLDOMNode **)
HRESULT(* remove_named_item)(xmlNodePtr, BSTR, IXMLDOMNode **)
HRESULT(* get_item)(xmlNodePtr, LONG, IXMLDOMNode **)
struct list entry
Definition: msxml_private.h:86
unsigned int count
Definition: msxml_private.h:94
Definition: dlist.c:348
#define HRESULT
Definition: msvc.h:7
#define S_FALSE
Definition: winerror.h:3451
void int int ULONGLONG int va_list * ap
Definition: winesup.h:36
xmlErrorLevel
Definition: xmlerror.h:24
const char * LPCSTR
Definition: xmlstorage.h:183
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
__wchar_t WCHAR
Definition: xmlstorage.h:180
char * LPSTR
Definition: xmlstorage.h:182
XMLPUBFUN int xmlStrlen(const xmlChar *str)
Definition: xmlstring.c:428
unsigned char xmlChar
Definition: xmlstring.h:28