aboutsummaryrefslogtreecommitdiff
path: root/x86_64-w64-mingw32/include/wsdxmldom.h
blob: efad10145d0ac67afbcbfbaa86a9da67f726cfc1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
/**
 * This file is part of the mingw-w64 runtime package.
 * No warranty is given; refer to the file DISCLAIMER within this package.
 */

#include <winapifamily.h>

#ifndef __WSDXMLDOM_H__
#define __WSDXMLDOM_H__

#if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)

typedef struct _WSDXML_TYPE {
  const WCHAR *Uri;
  const BYTE *Table;
} WSDXML_TYPE;

typedef struct _WSDXML_NAMESPACE {
  const WCHAR *Uri;
  const WCHAR *PreferredPrefix;
  struct _WSDXML_NAME *Names;
  WORD NamesCount;
  WORD Encoding;
} WSDXML_NAMESPACE;

typedef struct _WSDXML_NAME {
  WSDXML_NAMESPACE *Space;
  WCHAR *LocalName;
} WSDXML_NAME;

typedef struct _WSDXML_PREFIX_MAPPING {
  DWORD Refs;
  struct _WSDXML_PREFIX_MAPPING *Next;
  WSDXML_NAMESPACE *Space;
  WCHAR *Prefix;
} WSDXML_PREFIX_MAPPING;

typedef struct _WSDXML_ATTRIBUTE {
  struct _WSDXML_ELEMENT *Element;
  struct _WSDXML_ATTRIBUTE *Next;
  WSDXML_NAME *Name;
  WCHAR *Value;
} WSDXML_ATTRIBUTE;

typedef struct _WSDXML_NODE {
  enum {
    ElementType,
    TextType
  } Type;
  struct _WSDXML_ELEMENT *Parent;
  struct _WSDXML_NODE *Next;
} WSDXML_NODE;

typedef struct _WSDXML_ELEMENT {
  WSDXML_NODE Node;
  WSDXML_NAME *Name;
  WSDXML_ATTRIBUTE *FirstAttribute;
  WSDXML_NODE *FirstChild;
  WSDXML_PREFIX_MAPPING *PrefixMappings;
} WSDXML_ELEMENT;

typedef struct _WSDXML_TEXT {
  WSDXML_NODE Node;
  WCHAR *Text;
} WSDXML_TEXT;

typedef struct _WSDXML_ELEMENT_LIST {
  struct _WSDXML_ELEMENT_LIST *Next;
  WSDXML_ELEMENT *Element;
} WSDXML_ELEMENT_LIST;

#endif
#endif