ReactOS 0.4.16-dev-2208-g6350669
pi.c File Reference
#include <stdarg.h>
#include <libxml/parser.h>
#include <libxml/xmlerror.h>
#include "windef.h"
#include "winbase.h"
#include "winuser.h"
#include "ole2.h"
#include "msxml6.h"
#include "xmlparser.h"
#include "msxml_private.h"
#include "wine/debug.h"
Include dependency graph for pi.c:

Go to the source code of this file.

Classes

struct  _dom_pi
 

Macros

#define COBJMACROS
 

Typedefs

typedef struct _dom_pi dom_pi
 

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (msxml)
 
static dom_piimpl_from_IXMLDOMProcessingInstruction (IXMLDOMProcessingInstruction *iface)
 
static HRESULT WINAPI dom_pi_QueryInterface (IXMLDOMProcessingInstruction *iface, REFIID riid, void **ppvObject)
 
static ULONG WINAPI dom_pi_AddRef (IXMLDOMProcessingInstruction *iface)
 
static ULONG WINAPI dom_pi_Release (IXMLDOMProcessingInstruction *iface)
 
static HRESULT WINAPI dom_pi_GetTypeInfoCount (IXMLDOMProcessingInstruction *iface, UINT *pctinfo)
 
static HRESULT WINAPI dom_pi_GetTypeInfo (IXMLDOMProcessingInstruction *iface, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo)
 
static HRESULT WINAPI dom_pi_GetIDsOfNames (IXMLDOMProcessingInstruction *iface, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId)
 
static HRESULT WINAPI dom_pi_Invoke (IXMLDOMProcessingInstruction *iface, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr)
 
static HRESULT WINAPI dom_pi_get_nodeName (IXMLDOMProcessingInstruction *iface, BSTR *p)
 
static HRESULT WINAPI dom_pi_get_nodeValue (IXMLDOMProcessingInstruction *iface, VARIANT *value)
 
static HRESULT WINAPI dom_pi_put_nodeValue (IXMLDOMProcessingInstruction *iface, VARIANT value)
 
static HRESULT WINAPI dom_pi_get_nodeType (IXMLDOMProcessingInstruction *iface, DOMNodeType *domNodeType)
 
static HRESULT WINAPI dom_pi_get_parentNode (IXMLDOMProcessingInstruction *iface, IXMLDOMNode **parent)
 
static HRESULT WINAPI dom_pi_get_childNodes (IXMLDOMProcessingInstruction *iface, IXMLDOMNodeList **outList)
 
static HRESULT WINAPI dom_pi_get_firstChild (IXMLDOMProcessingInstruction *iface, IXMLDOMNode **domNode)
 
static HRESULT WINAPI dom_pi_get_lastChild (IXMLDOMProcessingInstruction *iface, IXMLDOMNode **domNode)
 
static HRESULT WINAPI dom_pi_get_previousSibling (IXMLDOMProcessingInstruction *iface, IXMLDOMNode **domNode)
 
static HRESULT WINAPI dom_pi_get_nextSibling (IXMLDOMProcessingInstruction *iface, IXMLDOMNode **domNode)
 
static HRESULT xml_get_value (xmlChar **p, xmlChar **value)
 
static void set_prop (xmlNodePtr node, xmlAttrPtr attr)
 
static HRESULT parse_xml_decl (xmlNodePtr node)
 
static HRESULT WINAPI dom_pi_get_attributes (IXMLDOMProcessingInstruction *iface, IXMLDOMNamedNodeMap **map)
 
static HRESULT WINAPI dom_pi_insertBefore (IXMLDOMProcessingInstruction *iface, IXMLDOMNode *newNode, VARIANT refChild, IXMLDOMNode **outOldNode)
 
static HRESULT WINAPI dom_pi_replaceChild (IXMLDOMProcessingInstruction *iface, IXMLDOMNode *newNode, IXMLDOMNode *oldNode, IXMLDOMNode **outOldNode)
 
static HRESULT WINAPI dom_pi_removeChild (IXMLDOMProcessingInstruction *iface, IXMLDOMNode *child, IXMLDOMNode **oldChild)
 
static HRESULT WINAPI dom_pi_appendChild (IXMLDOMProcessingInstruction *iface, IXMLDOMNode *child, IXMLDOMNode **outChild)
 
static HRESULT WINAPI dom_pi_hasChildNodes (IXMLDOMProcessingInstruction *iface, VARIANT_BOOL *ret)
 
static HRESULT WINAPI dom_pi_get_ownerDocument (IXMLDOMProcessingInstruction *iface, IXMLDOMDocument **doc)
 
static HRESULT WINAPI dom_pi_cloneNode (IXMLDOMProcessingInstruction *iface, VARIANT_BOOL deep, IXMLDOMNode **outNode)
 
static HRESULT WINAPI dom_pi_get_nodeTypeString (IXMLDOMProcessingInstruction *iface, BSTR *p)
 
static HRESULT WINAPI dom_pi_get_text (IXMLDOMProcessingInstruction *iface, BSTR *p)
 
static HRESULT WINAPI dom_pi_put_text (IXMLDOMProcessingInstruction *iface, BSTR p)
 
static HRESULT WINAPI dom_pi_get_specified (IXMLDOMProcessingInstruction *iface, VARIANT_BOOL *isSpecified)
 
static HRESULT WINAPI dom_pi_get_definition (IXMLDOMProcessingInstruction *iface, IXMLDOMNode **definitionNode)
 
static HRESULT WINAPI dom_pi_get_nodeTypedValue (IXMLDOMProcessingInstruction *iface, VARIANT *v)
 
static HRESULT WINAPI dom_pi_put_nodeTypedValue (IXMLDOMProcessingInstruction *iface, VARIANT typedValue)
 
static HRESULT WINAPI dom_pi_get_dataType (IXMLDOMProcessingInstruction *iface, VARIANT *typename)
 
static HRESULT WINAPI dom_pi_put_dataType (IXMLDOMProcessingInstruction *iface, BSTR p)
 
static HRESULT WINAPI dom_pi_get_xml (IXMLDOMProcessingInstruction *iface, BSTR *p)
 
static HRESULT WINAPI dom_pi_transformNode (IXMLDOMProcessingInstruction *iface, IXMLDOMNode *node, BSTR *p)
 
static HRESULT WINAPI dom_pi_selectNodes (IXMLDOMProcessingInstruction *iface, BSTR p, IXMLDOMNodeList **outList)
 
static HRESULT WINAPI dom_pi_selectSingleNode (IXMLDOMProcessingInstruction *iface, BSTR p, IXMLDOMNode **outNode)
 
static HRESULT WINAPI dom_pi_get_parsed (IXMLDOMProcessingInstruction *iface, VARIANT_BOOL *isParsed)
 
static HRESULT WINAPI dom_pi_get_namespaceURI (IXMLDOMProcessingInstruction *iface, BSTR *p)
 
static HRESULT WINAPI dom_pi_get_prefix (IXMLDOMProcessingInstruction *iface, BSTR *prefix)
 
static HRESULT WINAPI dom_pi_get_baseName (IXMLDOMProcessingInstruction *iface, BSTR *name)
 
static HRESULT WINAPI dom_pi_transformNodeToObject (IXMLDOMProcessingInstruction *iface, IXMLDOMNode *domNode, VARIANT var1)
 
static HRESULT WINAPI dom_pi_get_target (IXMLDOMProcessingInstruction *iface, BSTR *p)
 
static HRESULT WINAPI dom_pi_get_data (IXMLDOMProcessingInstruction *iface, BSTR *p)
 
static HRESULT WINAPI dom_pi_put_data (IXMLDOMProcessingInstruction *iface, BSTR data)
 
HRESULT dom_pi_put_xml_decl (IXMLDOMNode *node, BSTR data)
 
static xmlAttrPtr node_has_prop (const xmlNode *node, const xmlChar *name)
 
static HRESULT dom_pi_get_qualified_item (const xmlNodePtr node, BSTR name, BSTR uri, IXMLDOMNode **item)
 
static HRESULT dom_pi_get_named_item (const xmlNodePtr node, BSTR name, IXMLDOMNode **item)
 
static HRESULT dom_pi_set_named_item (xmlNodePtr node, IXMLDOMNode *newItem, IXMLDOMNode **namedItem)
 
static HRESULT dom_pi_remove_qualified_item (xmlNodePtr node, BSTR name, BSTR uri, IXMLDOMNode **item)
 
static HRESULT dom_pi_remove_named_item (xmlNodePtr node, BSTR name, IXMLDOMNode **item)
 
static HRESULT dom_pi_get_item (const xmlNodePtr node, LONG index, IXMLDOMNode **item)
 
static HRESULT dom_pi_get_length (const xmlNodePtr node, LONG *length)
 
static HRESULT dom_pi_next_node (const xmlNodePtr node, LONG *iter, IXMLDOMNode **nextNode)
 
IUnknowncreate_pi (xmlNodePtr pi)
 

Variables

static const struct nodemap_funcs dom_pi_attr_map
 
static const tid_t dompi_se_tids []
 
static const struct IXMLDOMProcessingInstructionVtbl dom_pi_vtbl
 
static const tid_t dompi_iface_tids []
 
static dispex_static_data_t dompi_dispex
 

Macro Definition Documentation

◆ COBJMACROS

#define COBJMACROS

Definition at line 21 of file pi.c.

Typedef Documentation

◆ dom_pi

Function Documentation

◆ create_pi()

IUnknown * create_pi ( xmlNodePtr  pi)

Definition at line 944 of file pi.c.

945{
946 dom_pi *This;
947
948 This = malloc(sizeof(*This));
949 if ( !This )
950 return NULL;
951
952 This->IXMLDOMProcessingInstruction_iface.lpVtbl = &dom_pi_vtbl;
953 This->ref = 1;
954
955 init_xmlnode(&This->node, pi, (IXMLDOMNode*)&This->IXMLDOMProcessingInstruction_iface, &dompi_dispex);
956
957 return (IUnknown*)&This->IXMLDOMProcessingInstruction_iface;
958}
#define malloc
Definition: debug_ros.c:4
#define NULL
Definition: types.h:112
static PROCESS_INFORMATION pi
Definition: debugger.c:2303
void init_xmlnode(xmlnode *, xmlNodePtr, IXMLDOMNode *, dispex_static_data_t *)
Definition: node.c:1647
static dispex_static_data_t dompi_dispex
Definition: pi.c:937
static const struct IXMLDOMProcessingInstructionVtbl dom_pi_vtbl
Definition: pi.c:778
Definition: pi.c:41

Referenced by create_node().

◆ dom_pi_AddRef()

static ULONG WINAPI dom_pi_AddRef ( IXMLDOMProcessingInstruction iface)
static

Definition at line 94 of file pi.c.

96{
99 TRACE("%p, refcount %lu.\n", iface, ref);
100 return ref;
101}
#define InterlockedIncrement
Definition: armddk.h:53
static dom_pi * impl_from_IXMLDOMProcessingInstruction(IXMLDOMProcessingInstruction *iface)
Definition: pi.c:55
#define TRACE(s)
Definition: solgame.cpp:4
Definition: send.c:48
uint32_t ULONG
Definition: typedefs.h:59

◆ dom_pi_appendChild()

static HRESULT WINAPI dom_pi_appendChild ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode child,
IXMLDOMNode **  outChild 
)
static

Definition at line 478 of file pi.c.

481{
483 TRACE("(%p)->(%p %p)\n", This, child, outChild);
484 return node_append_child(&This->node, child, outChild);
485}
static HWND child
Definition: cursoricon.c:298
HRESULT node_append_child(xmlnode *, IXMLDOMNode *, IXMLDOMNode **)
Definition: node.c:639

◆ dom_pi_cloneNode()

static HRESULT WINAPI dom_pi_cloneNode ( IXMLDOMProcessingInstruction iface,
VARIANT_BOOL  deep,
IXMLDOMNode **  outNode 
)
static

Definition at line 505 of file pi.c.

508{
510 TRACE("(%p)->(%d %p)\n", This, deep, outNode);
511 return node_clone( &This->node, deep, outNode );
512}
HRESULT node_clone(xmlnode *, VARIANT_BOOL, IXMLDOMNode **)
Definition: node.c:679

◆ dom_pi_get_attributes()

static HRESULT WINAPI dom_pi_get_attributes ( IXMLDOMProcessingInstruction iface,
IXMLDOMNamedNodeMap **  map 
)
static

Definition at line 418 of file pi.c.

421{
423 static const WCHAR xmlW[] = {'x','m','l',0};
424 HRESULT hr;
425 BSTR name;
426
427 TRACE("(%p)->(%p)\n", This, map);
428
429 if (!map) return E_INVALIDARG;
430
431 *map = NULL;
432
433 hr = node_get_nodeName(&This->node, &name);
434 if (hr != S_OK) return hr;
435
436 if (!wcscmp(name, xmlW))
437 *map = create_nodemap(This->node.node, &dom_pi_attr_map);
438
440
441 return *map ? S_OK : S_FALSE;
442}
Definition: _map.h:48
#define E_INVALIDARG
Definition: ddrawi.h:101
OLECHAR * BSTR
Definition: compat.h:2293
_ACRTIMP int __cdecl wcscmp(const wchar_t *, const wchar_t *)
Definition: wcs.c:1972
#define S_OK
Definition: intsafe.h:52
IXMLDOMNamedNodeMap * create_nodemap(xmlNodePtr, const struct nodemap_funcs *)
Definition: nodemap.c:431
HRESULT node_get_nodeName(xmlnode *, BSTR *)
Definition: node.c:178
static const WCHAR xmlW[]
Definition: mxnamespace.c:54
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
Definition: oleaut.c:271
static const struct nodemap_funcs dom_pi_attr_map
Definition: pi.c:47
HRESULT hr
Definition: shlfolder.c:183
Definition: name.c:39
#define S_FALSE
Definition: winerror.h:3451
__wchar_t WCHAR
Definition: xmlstorage.h:180

◆ dom_pi_get_baseName()

static HRESULT WINAPI dom_pi_get_baseName ( IXMLDOMProcessingInstruction iface,
BSTR name 
)
static

Definition at line 671 of file pi.c.

674{
676 TRACE("(%p)->(%p)\n", This, name);
677 return node_get_base_name( &This->node, name );
678}
HRESULT node_get_base_name(xmlnode *, BSTR *)
Definition: node.c:1622

◆ dom_pi_get_childNodes()

static HRESULT WINAPI dom_pi_get_childNodes ( IXMLDOMProcessingInstruction iface,
IXMLDOMNodeList **  outList 
)
static

Definition at line 230 of file pi.c.

233{
235
236 TRACE("(%p)->(%p)\n", This, outList);
237
238 return node_get_child_nodes(&This->node, outList);
239}
HRESULT node_get_child_nodes(xmlnode *, IXMLDOMNodeList **)
Definition: node.c:353

◆ dom_pi_get_data()

static HRESULT WINAPI dom_pi_get_data ( IXMLDOMProcessingInstruction iface,
BSTR p 
)
static

Definition at line 701 of file pi.c.

704{
706 HRESULT hr;
707 VARIANT ret;
708
709 TRACE("(%p)->(%p)\n", This, p);
710
711 if(!p)
712 return E_INVALIDARG;
713
714 hr = IXMLDOMProcessingInstruction_get_nodeValue( iface, &ret );
715 if(hr == S_OK)
716 {
717 *p = V_BSTR(&ret);
718 }
719
720 return hr;
721}
return ret
Definition: mutex.c:146
GLfloat GLfloat p
Definition: glext.h:8902
#define V_BSTR(A)
Definition: oleauto.h:226

◆ dom_pi_get_dataType()

static HRESULT WINAPI dom_pi_get_dataType ( IXMLDOMProcessingInstruction iface,
VARIANT typename 
)
static

Definition at line 582 of file pi.c.

585{
587 TRACE("(%p)->(%p)\n", This, typename);
588 return return_null_var( typename );
589}
static HRESULT return_null_var(VARIANT *p)

◆ dom_pi_get_definition()

static HRESULT WINAPI dom_pi_get_definition ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode **  definitionNode 
)
static

Definition at line 555 of file pi.c.

558{
560 FIXME("(%p)->(%p)\n", This, definitionNode);
561 return E_NOTIMPL;
562}
#define FIXME(fmt,...)
Definition: precomp.h:53
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ dom_pi_get_firstChild()

static HRESULT WINAPI dom_pi_get_firstChild ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode **  domNode 
)
static

Definition at line 241 of file pi.c.

244{
246
247 TRACE("(%p)->(%p)\n", This, domNode);
248
249 return return_null_node(domNode);
250}
static HRESULT return_null_node(IXMLDOMNode **p)

◆ dom_pi_get_item()

static HRESULT dom_pi_get_item ( const xmlNodePtr  node,
LONG  index,
IXMLDOMNode **  item 
)
static

Definition at line 901 of file pi.c.

902{
903 FIXME("%p, %ld, %p: stub\n", node, index, item);
904 return E_NOTIMPL;
905}
GLuint index
Definition: glext.h:6031
Definition: dlist.c:348

◆ dom_pi_get_lastChild()

static HRESULT WINAPI dom_pi_get_lastChild ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode **  domNode 
)
static

Definition at line 252 of file pi.c.

255{
257
258 TRACE("(%p)->(%p)\n", This, domNode);
259
260 return return_null_node(domNode);
261}

◆ dom_pi_get_length()

static HRESULT dom_pi_get_length ( const xmlNodePtr  node,
LONG length 
)
static

Definition at line 907 of file pi.c.

908{
909 FIXME("(%p)->(%p): stub\n", node, length);
910
911 *length = 0;
912 return S_OK;
913}
GLuint GLsizei GLsizei * length
Definition: glext.h:6040

◆ dom_pi_get_named_item()

static HRESULT dom_pi_get_named_item ( const xmlNodePtr  node,
BSTR  name,
IXMLDOMNode **  item 
)
static

Definition at line 857 of file pi.c.

858{
859 xmlChar *nameA;
860 xmlAttrPtr attr;
861
862 TRACE("(%p)->(%s %p)\n", node, debugstr_w(name), item);
863
864 if (!item) return E_POINTER;
865
866 nameA = xmlchar_from_wchar(name);
867 if (!nameA) return E_OUTOFMEMORY;
868
869 attr = node_has_prop(node, nameA);
870 free(nameA);
871
872 if (!attr)
873 {
874 *item = NULL;
875 return S_FALSE;
876 }
877
878 *item = create_node((xmlNodePtr)attr);
879
880 return S_OK;
881}
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define free
Definition: debug_ros.c:5
static HRESULT create_node(HTMLDocumentNode *, nsIDOMNode *, HTMLDOMNode **)
Definition: htmlnode.c:1216
#define debugstr_w
Definition: kernel32.h:32
static xmlChar * xmlchar_from_wchar(const WCHAR *str)
static xmlAttrPtr node_has_prop(const xmlNode *node, const xmlChar *name)
Definition: pi.c:829
Definition: cookie.c:202
#define E_POINTER
Definition: winerror.h:3480
unsigned char xmlChar
Definition: xmlstring.h:28

◆ dom_pi_get_namespaceURI()

static HRESULT WINAPI dom_pi_get_namespaceURI ( IXMLDOMProcessingInstruction iface,
BSTR p 
)
static

Definition at line 653 of file pi.c.

656{
658 TRACE("(%p)->(%p)\n", This, p);
659 return node_get_namespaceURI(&This->node, p);
660}
HRESULT node_get_namespaceURI(xmlnode *, BSTR *)
Definition: node.c:1589

◆ dom_pi_get_nextSibling()

static HRESULT WINAPI dom_pi_get_nextSibling ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode **  domNode 
)
static

Definition at line 274 of file pi.c.

277{
279
280 TRACE("(%p)->(%p)\n", This, domNode);
281
282 return node_get_next_sibling(&This->node, domNode);
283}
HRESULT node_get_next_sibling(xmlnode *, IXMLDOMNode **)
Definition: node.c:380

◆ dom_pi_get_nodeName()

static HRESULT WINAPI dom_pi_get_nodeName ( IXMLDOMProcessingInstruction iface,
BSTR p 
)
static

Definition at line 158 of file pi.c.

161{
163
164 TRACE("(%p)->(%p)\n", This, p);
165
166 return node_get_nodeName(&This->node, p);
167}

◆ dom_pi_get_nodeType()

static HRESULT WINAPI dom_pi_get_nodeType ( IXMLDOMProcessingInstruction iface,
DOMNodeType domNodeType 
)
static

Definition at line 207 of file pi.c.

210{
212
213 TRACE("(%p)->(%p)\n", This, domNodeType);
214
215 *domNodeType = NODE_PROCESSING_INSTRUCTION;
216 return S_OK;
217}
@ NODE_PROCESSING_INSTRUCTION
Definition: msxml6.idl:119

◆ dom_pi_get_nodeTypedValue()

static HRESULT WINAPI dom_pi_get_nodeTypedValue ( IXMLDOMProcessingInstruction iface,
VARIANT v 
)
static

Definition at line 564 of file pi.c.

567{
569 TRACE("(%p)->(%p)\n", This, v);
570 return node_get_content(&This->node, v);
571}
const GLdouble * v
Definition: gl.h:2040
HRESULT node_get_content(xmlnode *, VARIANT *)
Definition: node.c:225

◆ dom_pi_get_nodeTypeString()

static HRESULT WINAPI dom_pi_get_nodeTypeString ( IXMLDOMProcessingInstruction iface,
BSTR p 
)
static

Definition at line 514 of file pi.c.

517{
519 static const WCHAR processinginstructionW[] =
520 {'p','r','o','c','e','s','s','i','n','g','i','n','s','t','r','u','c','t','i','o','n',0};
521
522 TRACE("(%p)->(%p)\n", This, p);
523
524 return return_bstr(processinginstructionW, p);
525}
static HRESULT return_bstr(const WCHAR *value, BSTR *p)
Definition: msxml_dispex.h:115

◆ dom_pi_get_nodeValue()

static HRESULT WINAPI dom_pi_get_nodeValue ( IXMLDOMProcessingInstruction iface,
VARIANT value 
)
static

Definition at line 169 of file pi.c.

172{
174
175 TRACE("(%p)->(%p)\n", This, value);
176
177 return node_get_content(&This->node, value);
178}
Definition: pdh_main.c:96

◆ dom_pi_get_ownerDocument()

static HRESULT WINAPI dom_pi_get_ownerDocument ( IXMLDOMProcessingInstruction iface,
IXMLDOMDocument **  doc 
)
static

Definition at line 496 of file pi.c.

499{
501 TRACE("(%p)->(%p)\n", This, doc);
502 return node_get_owner_doc(&This->node, doc);
503}
HRESULT node_get_owner_doc(const xmlnode *, IXMLDOMDocument **)
Definition: node.c:672

◆ dom_pi_get_parentNode()

static HRESULT WINAPI dom_pi_get_parentNode ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode **  parent 
)
static

Definition at line 219 of file pi.c.

222{
224
225 TRACE("(%p)->(%p)\n", This, parent);
226
227 return node_get_parent(&This->node, parent);
228}
r parent
Definition: btrfs.c:3010
HRESULT node_get_parent(xmlnode *, IXMLDOMNode **)
Definition: node.c:348

◆ dom_pi_get_parsed()

static HRESULT WINAPI dom_pi_get_parsed ( IXMLDOMProcessingInstruction iface,
VARIANT_BOOL isParsed 
)
static

Definition at line 643 of file pi.c.

646{
648 FIXME("(%p)->(%p) stub!\n", This, isParsed);
649 *isParsed = VARIANT_TRUE;
650 return S_OK;
651}

◆ dom_pi_get_prefix()

static HRESULT WINAPI dom_pi_get_prefix ( IXMLDOMProcessingInstruction iface,
BSTR prefix 
)
static

Definition at line 662 of file pi.c.

665{
667 TRACE("(%p)->(%p)\n", This, prefix);
668 return return_null_bstr( prefix );
669}
static HRESULT return_null_bstr(BSTR *p)
Character const *const prefix
Definition: tempnam.cpp:195

◆ dom_pi_get_previousSibling()

static HRESULT WINAPI dom_pi_get_previousSibling ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode **  domNode 
)
static

Definition at line 263 of file pi.c.

266{
268
269 TRACE("(%p)->(%p)\n", This, domNode);
270
271 return node_get_previous_sibling(&This->node, domNode);
272}
HRESULT node_get_previous_sibling(xmlnode *, IXMLDOMNode **)
Definition: node.c:375

◆ dom_pi_get_qualified_item()

static HRESULT dom_pi_get_qualified_item ( const xmlNodePtr  node,
BSTR  name,
BSTR  uri,
IXMLDOMNode **  item 
)
static

Definition at line 850 of file pi.c.

852{
853 FIXME("(%p)->(%s %s %p): stub\n", node, debugstr_w(name), debugstr_w(uri), item);
854 return E_NOTIMPL;
855}
const char * uri
Definition: sec_mgr.c:1588

◆ dom_pi_get_specified()

static HRESULT WINAPI dom_pi_get_specified ( IXMLDOMProcessingInstruction iface,
VARIANT_BOOL isSpecified 
)
static

Definition at line 545 of file pi.c.

548{
550 FIXME("(%p)->(%p) stub!\n", This, isSpecified);
551 *isSpecified = VARIANT_TRUE;
552 return S_OK;
553}

◆ dom_pi_get_target()

static HRESULT WINAPI dom_pi_get_target ( IXMLDOMProcessingInstruction iface,
BSTR p 
)
static

Definition at line 689 of file pi.c.

692{
694
695 TRACE("(%p)->(%p)\n", This, p);
696
697 /* target returns the same value as nodeName property */
698 return node_get_nodeName(&This->node, p);
699}

◆ dom_pi_get_text()

static HRESULT WINAPI dom_pi_get_text ( IXMLDOMProcessingInstruction iface,
BSTR p 
)
static

Definition at line 527 of file pi.c.

530{
532 TRACE("(%p)->(%p)\n", This, p);
533 return node_get_text(&This->node, p);
534}
HRESULT node_get_text(const xmlnode *, BSTR *)
Definition: node.c:842

◆ dom_pi_get_xml()

static HRESULT WINAPI dom_pi_get_xml ( IXMLDOMProcessingInstruction iface,
BSTR p 
)
static

Definition at line 605 of file pi.c.

608{
610
611 TRACE("(%p)->(%p)\n", This, p);
612
613 return node_get_xml(&This->node, FALSE, p);
614}
#define FALSE
Definition: types.h:117
HRESULT node_get_xml(xmlnode *, BOOL, BSTR *)
Definition: node.c:936

◆ dom_pi_GetIDsOfNames()

static HRESULT WINAPI dom_pi_GetIDsOfNames ( IXMLDOMProcessingInstruction iface,
REFIID  riid,
LPOLESTR rgszNames,
UINT  cNames,
LCID  lcid,
DISPID rgDispId 
)
static

Definition at line 137 of file pi.c.

141{
143 return IDispatchEx_GetIDsOfNames(&This->node.dispex.IDispatchEx_iface,
144 riid, rgszNames, cNames, lcid, rgDispId);
145}
LCID lcid
Definition: locale.c:5656
REFIID riid
Definition: atlbase.h:39

◆ dom_pi_GetTypeInfo()

static HRESULT WINAPI dom_pi_GetTypeInfo ( IXMLDOMProcessingInstruction iface,
UINT  iTInfo,
LCID  lcid,
ITypeInfo **  ppTInfo 
)
static

Definition at line 127 of file pi.c.

131{
133 return IDispatchEx_GetTypeInfo(&This->node.dispex.IDispatchEx_iface,
134 iTInfo, lcid, ppTInfo);
135}

◆ dom_pi_GetTypeInfoCount()

static HRESULT WINAPI dom_pi_GetTypeInfoCount ( IXMLDOMProcessingInstruction iface,
UINT pctinfo 
)
static

Definition at line 119 of file pi.c.

122{
124 return IDispatchEx_GetTypeInfoCount(&This->node.dispex.IDispatchEx_iface, pctinfo);
125}

◆ dom_pi_hasChildNodes()

static HRESULT WINAPI dom_pi_hasChildNodes ( IXMLDOMProcessingInstruction iface,
VARIANT_BOOL ret 
)
static

Definition at line 487 of file pi.c.

490{
492 TRACE("(%p)->(%p)\n", This, ret);
493 return node_has_childnodes(&This->node, ret);
494}
HRESULT node_has_childnodes(const xmlnode *, VARIANT_BOOL *)
Definition: node.c:658

◆ dom_pi_insertBefore()

static HRESULT WINAPI dom_pi_insertBefore ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode newNode,
VARIANT  refChild,
IXMLDOMNode **  outOldNode 
)
static

Definition at line 444 of file pi.c.

448{
450
451 FIXME("(%p)->(%p %s %p) needs test\n", This, newNode, debugstr_variant(&refChild), outOldNode);
452
453 return node_insert_before(&This->node, newNode, &refChild, outOldNode);
454}
static const char * debugstr_variant(const VARIANT *var)
Definition: container.c:46
HRESULT node_insert_before(xmlnode *, IXMLDOMNode *, const VARIANT *, IXMLDOMNode **)
Definition: node.c:432

◆ dom_pi_Invoke()

static HRESULT WINAPI dom_pi_Invoke ( IXMLDOMProcessingInstruction iface,
DISPID  dispIdMember,
REFIID  riid,
LCID  lcid,
WORD  wFlags,
DISPPARAMS *  pDispParams,
VARIANT pVarResult,
EXCEPINFO *  pExcepInfo,
UINT puArgErr 
)
static

Definition at line 147 of file pi.c.

152{
154 return IDispatchEx_Invoke(&This->node.dispex.IDispatchEx_iface,
155 dispIdMember, riid, lcid, wFlags, pDispParams, pVarResult, pExcepInfo, puArgErr);
156}
WINBASEAPI _In_ DWORD _Out_ _In_ WORD wFlags
Definition: wincon_undoc.h:337

◆ dom_pi_next_node()

static HRESULT dom_pi_next_node ( const xmlNodePtr  node,
LONG iter,
IXMLDOMNode **  nextNode 
)
static

Definition at line 915 of file pi.c.

916{
917 FIXME("%p, %ld, %p: stub\n", node, *iter, nextNode);
918 return E_NOTIMPL;
919}

◆ dom_pi_put_data()

static HRESULT WINAPI dom_pi_put_data ( IXMLDOMProcessingInstruction iface,
BSTR  data 
)
static

Definition at line 723 of file pi.c.

726{
728 BSTR target;
729 HRESULT hr;
730
731 TRACE("(%p)->(%s)\n", This, debugstr_w(data) );
732
733 /* cannot set data to a PI node whose target is 'xml' */
734 hr = IXMLDOMProcessingInstruction_get_nodeName(iface, &target);
735 if(hr == S_OK)
736 {
737 static const WCHAR xmlW[] = {'x','m','l',0};
738 if(!wcscmp(target, xmlW))
739 {
741 return E_FAIL;
742 }
743
745 }
746
747 return node_set_content(&This->node, data);
748}
#define E_FAIL
Definition: ddrawi.h:102
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
HRESULT node_set_content(xmlnode *, LPCWSTR)
Definition: node.c:241
Definition: tools.h:99

◆ dom_pi_put_dataType()

static HRESULT WINAPI dom_pi_put_dataType ( IXMLDOMProcessingInstruction iface,
BSTR  p 
)
static

Definition at line 591 of file pi.c.

594{
596
597 TRACE("(%p)->(%s)\n", This, debugstr_w(p));
598
599 if(!p)
600 return E_INVALIDARG;
601
602 return E_FAIL;
603}

◆ dom_pi_put_nodeTypedValue()

static HRESULT WINAPI dom_pi_put_nodeTypedValue ( IXMLDOMProcessingInstruction iface,
VARIANT  typedValue 
)
static

Definition at line 573 of file pi.c.

576{
578 FIXME("(%p)->(%s)\n", This, debugstr_variant(&typedValue));
579 return E_NOTIMPL;
580}

◆ dom_pi_put_nodeValue()

static HRESULT WINAPI dom_pi_put_nodeValue ( IXMLDOMProcessingInstruction iface,
VARIANT  value 
)
static

Definition at line 180 of file pi.c.

183{
185 BSTR target;
186 HRESULT hr;
187
188 TRACE("(%p)->(%s)\n", This, debugstr_variant(&value));
189
190 /* Cannot set data to a PI node whose target is 'xml' */
191 hr = IXMLDOMProcessingInstruction_get_nodeName(iface, &target);
192 if(hr == S_OK)
193 {
194 static const WCHAR xmlW[] = {'x','m','l',0};
195 if(!wcscmp(target, xmlW))
196 {
198 return E_FAIL;
199 }
200
202 }
203
204 return node_put_value(&This->node, &value);
205}
HRESULT node_put_value(xmlnode *, VARIANT *)
Definition: node.c:279

◆ dom_pi_put_text()

static HRESULT WINAPI dom_pi_put_text ( IXMLDOMProcessingInstruction iface,
BSTR  p 
)
static

Definition at line 536 of file pi.c.

539{
541 TRACE("(%p)->(%s)\n", This, debugstr_w(p));
542 return node_put_text( &This->node, p );
543}
HRESULT node_put_text(xmlnode *, BSTR)
Definition: node.c:867

◆ dom_pi_put_xml_decl()

HRESULT dom_pi_put_xml_decl ( IXMLDOMNode node,
BSTR  data 
)

Definition at line 750 of file pi.c.

751{
752 static const WCHAR xmlW[] = {'x','m','l',0};
753 xmlnode *node_obj;
754 HRESULT hr;
755 BSTR name;
756
757 if (!data)
758 return XML_E_XMLDECLSYNTAX;
759
760 node_obj = get_node_obj(node);
761 hr = node_set_content(node_obj, data);
762 if (FAILED(hr))
763 return hr;
764
765 hr = node_get_nodeName(node_obj, &name);
766 if (FAILED(hr))
767 return hr;
768
769 if (!lstrcmpW(name, xmlW) && !node_obj->node->properties)
770 hr = parse_xml_decl(node_obj->node);
771 else
772 hr = S_OK;
773
775 return hr;
776}
int WINAPI lstrcmpW(LPCWSTR str1, LPCWSTR str2)
Definition: locale.c:4246
@ XML_E_XMLDECLSYNTAX
Definition: xmlparser.idl:109
static HTMLDOMNode * get_node_obj(IHTMLDOMNode *)
Definition: htmlnode.c:1045
#define FAILED(hr)
Definition: intsafe.h:51
static HRESULT parse_xml_decl(xmlNodePtr node)
Definition: pi.c:330
xmlNodePtr node

Referenced by domdoc_createProcessingInstruction().

◆ dom_pi_QueryInterface()

static HRESULT WINAPI dom_pi_QueryInterface ( IXMLDOMProcessingInstruction iface,
REFIID  riid,
void **  ppvObject 
)
static

Definition at line 60 of file pi.c.

64{
66 TRACE("(%p)->(%s %p)\n", This, debugstr_guid(riid), ppvObject);
67
68 if ( IsEqualGUID( riid, &IID_IXMLDOMProcessingInstruction ) ||
69 IsEqualGUID( riid, &IID_IXMLDOMNode ) ||
72 {
73 *ppvObject = iface;
74 }
75 else if(node_query_interface(&This->node, riid, ppvObject))
76 {
77 return *ppvObject ? S_OK : E_NOINTERFACE;
78 }
79 else if(IsEqualGUID( riid, &IID_ISupportErrorInfo ))
80 {
82 }
83 else
84 {
85 TRACE("Unsupported interface %s\n", debugstr_guid(riid));
86 *ppvObject = NULL;
87 return E_NOINTERFACE;
88 }
89
90 IUnknown_AddRef((IUnknown*)*ppvObject);
91 return S_OK;
92}
const GUID IID_IUnknown
#define debugstr_guid
Definition: kernel32.h:35
BOOL node_query_interface(xmlnode *, REFIID, void **)
Definition: node.c:66
HRESULT node_create_supporterrorinfo(const tid_t *, void **)
const GUID IID_IDispatch
static const tid_t dompi_se_tids[]
Definition: pi.c:49
#define IsEqualGUID(rguid1, rguid2)
Definition: guiddef.h:147
#define E_NOINTERFACE
Definition: winerror.h:3479

◆ dom_pi_Release()

static ULONG WINAPI dom_pi_Release ( IXMLDOMProcessingInstruction iface)
static

Definition at line 103 of file pi.c.

105{
108
109 TRACE("%p, refcount %lu.\n", iface, ref);
110 if ( ref == 0 )
111 {
112 destroy_xmlnode(&This->node);
113 free(This);
114 }
115
116 return ref;
117}
#define InterlockedDecrement
Definition: armddk.h:52
void destroy_xmlnode(xmlnode *)
Definition: node.c:1638

◆ dom_pi_remove_named_item()

static HRESULT dom_pi_remove_named_item ( xmlNodePtr  node,
BSTR  name,
IXMLDOMNode **  item 
)
static

Definition at line 895 of file pi.c.

896{
897 FIXME("(%p)->(%s %p): stub\n", node, debugstr_w(name), item);
898 return E_NOTIMPL;
899}

◆ dom_pi_remove_qualified_item()

static HRESULT dom_pi_remove_qualified_item ( xmlNodePtr  node,
BSTR  name,
BSTR  uri,
IXMLDOMNode **  item 
)
static

Definition at line 889 of file pi.c.

890{
891 FIXME("(%p)->(%s %s %p): stub\n", node, debugstr_w(name), debugstr_w(uri), item);
892 return E_NOTIMPL;
893}

◆ dom_pi_removeChild()

static HRESULT WINAPI dom_pi_removeChild ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode child,
IXMLDOMNode **  oldChild 
)
static

Definition at line 469 of file pi.c.

472{
474 TRACE("(%p)->(%p %p)\n", This, child, oldChild);
475 return node_remove_child(&This->node, child, oldChild);
476}
HRESULT node_remove_child(xmlnode *, IXMLDOMNode *, IXMLDOMNode **)
Definition: node.c:608

◆ dom_pi_replaceChild()

static HRESULT WINAPI dom_pi_replaceChild ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode newNode,
IXMLDOMNode oldNode,
IXMLDOMNode **  outOldNode 
)
static

Definition at line 456 of file pi.c.

461{
463
464 FIXME("(%p)->(%p %p %p) needs test\n", This, newNode, oldNode, outOldNode);
465
466 return node_replace_child(&This->node, newNode, oldNode, outOldNode);
467}
HRESULT node_replace_child(xmlnode *, IXMLDOMNode *, IXMLDOMNode *, IXMLDOMNode **)
Definition: node.c:543

◆ dom_pi_selectNodes()

static HRESULT WINAPI dom_pi_selectNodes ( IXMLDOMProcessingInstruction iface,
BSTR  p,
IXMLDOMNodeList **  outList 
)
static

Definition at line 625 of file pi.c.

628{
630 TRACE("(%p)->(%s %p)\n", This, debugstr_w(p), outList);
631 return node_select_nodes(&This->node, p, outList);
632}
HRESULT node_select_nodes(const xmlnode *, BSTR, IXMLDOMNodeList **)
Definition: node.c:1558

◆ dom_pi_selectSingleNode()

static HRESULT WINAPI dom_pi_selectSingleNode ( IXMLDOMProcessingInstruction iface,
BSTR  p,
IXMLDOMNode **  outNode 
)
static

Definition at line 634 of file pi.c.

637{
639 TRACE("(%p)->(%s %p)\n", This, debugstr_w(p), outNode);
640 return node_select_singlenode(&This->node, p, outNode);
641}
HRESULT node_select_singlenode(const xmlnode *, BSTR, IXMLDOMNode **)
Definition: node.c:1572

◆ dom_pi_set_named_item()

static HRESULT dom_pi_set_named_item ( xmlNodePtr  node,
IXMLDOMNode newItem,
IXMLDOMNode **  namedItem 
)
static

Definition at line 883 of file pi.c.

884{
885 FIXME("(%p)->(%p %p): stub\n", node, newItem, namedItem );
886 return E_NOTIMPL;
887}

◆ dom_pi_transformNode()

static HRESULT WINAPI dom_pi_transformNode ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode node,
BSTR p 
)
static

Definition at line 616 of file pi.c.

619{
621 TRACE("(%p)->(%p %p)\n", This, node, p);
622 return node_transform_node(&This->node, node, p);
623}
HRESULT node_transform_node(const xmlnode *, IXMLDOMNode *, BSTR *)
Definition: node.c:1553

◆ dom_pi_transformNodeToObject()

static HRESULT WINAPI dom_pi_transformNodeToObject ( IXMLDOMProcessingInstruction iface,
IXMLDOMNode domNode,
VARIANT  var1 
)
static

Definition at line 680 of file pi.c.

683{
685 FIXME("(%p)->(%p %s)\n", This, domNode, debugstr_variant(&var1));
686 return E_NOTIMPL;
687}

◆ impl_from_IXMLDOMProcessingInstruction()

◆ node_has_prop()

static xmlAttrPtr node_has_prop ( const xmlNode *  node,
const xmlChar name 
)
static

Definition at line 829 of file pi.c.

830{
831 xmlAttrPtr prop;
832
833 /* xmlHasNsProp accepts only nodes of type XML_ELEMENT_NODE,
834 * so we have to look for an attribute in the node by hand.
835 */
836
837 prop = node->properties;
838
839 while (prop)
840 {
841 if (xmlStrEqual(prop->name, name))
842 return prop;
843
844 prop = prop->next;
845 }
846
847 return NULL;
848}
void * next
Definition: dlist.c:360
XMLPUBFUN int xmlStrEqual(const xmlChar *str1, const xmlChar *str2)
Definition: xmlstring.c:162

Referenced by dom_pi_get_named_item().

◆ parse_xml_decl()

static HRESULT parse_xml_decl ( xmlNodePtr  node)
static

Definition at line 330 of file pi.c.

331{
332 xmlChar *version, *encoding, *standalone, *p;
333 xmlAttrPtr attr;
334 HRESULT hr = S_OK;
335
336 if (!node->content) return S_OK;
337
338 version = encoding = standalone = NULL;
339
340 p = node->content;
341
342 while (*p)
343 {
344 while (isspace(*p)) p++;
345 if (!*p) break;
346
347 if (!strncmp((const char *)p, "version", 7))
348 {
349 p += 7;
350 if ((hr = xml_get_value(&p, &version)) != S_OK) goto fail;
351 }
352 else if (!strncmp((const char *)p, "encoding", 8))
353 {
354 p += 8;
355 if ((hr = xml_get_value(&p, &encoding)) != S_OK) goto fail;
356 }
357 else if (!strncmp((const char *)p, "standalone", 10))
358 {
359 p += 10;
360 if ((hr = xml_get_value(&p, &standalone)) != S_OK) goto fail;
361 }
362 else
363 {
364 FIXME("unexpected XML attribute %s\n", debugstr_a((const char *)p));
366 goto fail;
367 }
368 }
369
370 /* xmlSetProp/xmlSetNsProp accept only nodes of type XML_ELEMENT_NODE,
371 * so we have to create and assign attributes to a node by hand.
372 */
373
374 if (version)
375 {
376 attr = xmlSetNsProp(NULL, NULL, (const xmlChar *)"version", version);
377 if (attr)
378 {
379 attr->doc = node->doc;
381 }
382 else hr = E_OUTOFMEMORY;
383 }
384 if (encoding)
385 {
386 attr = xmlSetNsProp(NULL, NULL, (const xmlChar *)"encoding", encoding);
387 if (attr)
388 {
389 attr->doc = node->doc;
391 }
392 else hr = E_OUTOFMEMORY;
393 }
394 if (standalone)
395 {
396 attr = xmlSetNsProp(NULL, NULL, (const xmlChar *)"standalone", standalone);
397 if (attr)
398 {
399 attr->doc = node->doc;
401 }
402 else hr = E_OUTOFMEMORY;
403 }
404
405fail:
406 if (hr != S_OK)
407 {
408 xmlFreePropList(node->properties);
409 node->properties = NULL;
410 }
411
412 free(version);
413 free(encoding);
414 free(standalone);
415 return hr;
416}
#define isspace(c)
Definition: acclib.h:69
static const WCHAR version[]
Definition: asmname.c:66
_ACRTIMP int __cdecl strncmp(const char *, const char *, size_t)
Definition: string.c:3330
#define debugstr_a
Definition: kernel32.h:31
#define XML_E_UNEXPECTED_ATTRIBUTE
Definition: domdoc.c:48
static void set_prop(xmlNodePtr node, xmlAttrPtr attr)
Definition: pi.c:314
static HRESULT xml_get_value(xmlChar **p, xmlChar **value)
Definition: pi.c:285

Referenced by dom_pi_put_xml_decl().

◆ set_prop()

static void set_prop ( xmlNodePtr  node,
xmlAttrPtr  attr 
)
static

Definition at line 314 of file pi.c.

315{
316 xmlAttrPtr prop;
317
318 if (!node->properties)
319 {
320 node->properties = attr;
321 return;
322 }
323
324 prop = node->properties;
325 while (prop->next) prop = prop->next;
326
327 prop->next = attr;
328}

Referenced by parse_xml_decl().

◆ WINE_DEFAULT_DEBUG_CHANNEL()

WINE_DEFAULT_DEBUG_CHANNEL ( msxml  )

◆ xml_get_value()

static HRESULT xml_get_value ( xmlChar **  p,
xmlChar **  value 
)
static

Definition at line 285 of file pi.c.

286{
287 xmlChar *v, q;
288 int len;
289
290 while (isspace(**p)) *p += 1;
291 if (**p != '=') return XML_E_MISSINGEQUALS;
292 *p += 1;
293
294 while (isspace(**p)) *p += 1;
295 if (**p != '"' && **p != '\'') return XML_E_MISSINGQUOTE;
296 q = **p;
297 *p += 1;
298
299 v = *p;
300 while (**p && **p != q) *p += 1;
301 if (!**p) return XML_E_BADCHARINSTRING;
302 len = *p - v;
303 if (!len) return XML_E_MISSINGNAME;
304 *p += 1;
305
306 *value = malloc(len + 1);
307 if (!*value) return E_OUTOFMEMORY;
308 memcpy(*value, v, len);
309 *(*value + len) = 0;
310
311 return S_OK;
312}
@ XML_E_MISSINGNAME
Definition: xmlparser.idl:189
@ XML_E_MISSINGQUOTE
Definition: xmlparser.idl:104
@ XML_E_MISSINGEQUALS
Definition: xmlparser.idl:103
@ XML_E_BADCHARINSTRING
Definition: xmlparser.idl:108
GLdouble GLdouble GLdouble GLdouble q
Definition: gl.h:2063
GLenum GLsizei len
Definition: glext.h:6722
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878

Referenced by parse_xml_decl().

Variable Documentation

◆ dom_pi_attr_map

static const struct nodemap_funcs dom_pi_attr_map
static
Initial value:
= {
}
static HRESULT dom_pi_remove_qualified_item(xmlNodePtr node, BSTR name, BSTR uri, IXMLDOMNode **item)
Definition: pi.c:889
static HRESULT dom_pi_get_named_item(const xmlNodePtr node, BSTR name, IXMLDOMNode **item)
Definition: pi.c:857
static HRESULT dom_pi_set_named_item(xmlNodePtr node, IXMLDOMNode *newItem, IXMLDOMNode **namedItem)
Definition: pi.c:883
static HRESULT dom_pi_remove_named_item(xmlNodePtr node, BSTR name, IXMLDOMNode **item)
Definition: pi.c:895
static HRESULT dom_pi_get_item(const xmlNodePtr node, LONG index, IXMLDOMNode **item)
Definition: pi.c:901
static HRESULT dom_pi_next_node(const xmlNodePtr node, LONG *iter, IXMLDOMNode **nextNode)
Definition: pi.c:915
static HRESULT dom_pi_get_qualified_item(const xmlNodePtr node, BSTR name, BSTR uri, IXMLDOMNode **item)
Definition: pi.c:850
static HRESULT dom_pi_get_length(const xmlNodePtr node, LONG *length)
Definition: pi.c:907

Definition at line 47 of file pi.c.

Referenced by dom_pi_get_attributes().

◆ dom_pi_vtbl

const struct IXMLDOMProcessingInstructionVtbl dom_pi_vtbl
static

Definition at line 778 of file pi.c.

Referenced by create_pi().

◆ dompi_dispex

dispex_static_data_t dompi_dispex
static
Initial value:
= {
}
@ IXMLDOMProcessingInstruction_tid
Definition: msxml_dispex.h:54
static const tid_t dompi_iface_tids[]
Definition: pi.c:932

Definition at line 937 of file pi.c.

Referenced by create_pi().

◆ dompi_iface_tids

const tid_t dompi_iface_tids[]
static
Initial value:

Definition at line 932 of file pi.c.

◆ dompi_se_tids

const tid_t dompi_se_tids[]
static
Initial value:

Definition at line 49 of file pi.c.

Referenced by dom_pi_QueryInterface().