Rudiments
xmldomnode.h
1 // Copyright (c) 2002 David Muse
2 // See the COPYING file for more information.
3 
4  friend class codetree;
5  friend class codetreegrammar;
6  friend class xmldomevents;
7  private:
8  void init(xmldomnode *nullnode);
9  xmldomnode *getNode(xmldomnode *first,
10  uint64_t position,
11  const char *ns,
12  const char *name,
13  bool ignorecase,
14  uint64_t count) const;
15  xmldomnode *getAttribute(
16  const char *name,
17  bool ignorecase) const;
18  xmldomnode *getFirstChild(
19  const char *ns,
20  const char *name,
21  bool ignorecase) const;
22  xmldomnode *getFirstChild(
23  const char *ns,
24  const char *name,
25  const char *attributename,
26  const char *attributevalue,
27  bool ignorecase) const;
28  xmldomnode *getFirstTagChild(
29  const char *ns,
30  const char *name,
31  bool ignorecase) const;
32  xmldomnode *getFirstTagChild(
33  const char *ns,
34  const char *name,
35  const char *attributename,
36  const char *attributevalue,
37  bool ignorecase) const;
38  xmldomnode *getPreviousTagSibling(
39  const char *ns,
40  const char *name,
41  bool ignorecase) const;
42  xmldomnode *getPreviousTagSibling(
43  const char *ns,
44  const char *name,
45  const char *attributename,
46  const char *attributevalue,
47  bool ignorecase) const;
48  xmldomnode *getNextTagSibling(
49  const char *ns,
50  const char *name,
51  bool ignorecase) const;
52  xmldomnode *getNextTagSibling(
53  const char *ns,
54  const char *name,
55  const char *attributename,
56  const char *attributevalue,
57  bool ignorecase) const;
58  xmldomnode *getFirstTagDescendent(
59  const char *ns,
60  const char *name,
61  bool ignorecase) const;
62  xmldomnode *getFirstTagDescendent(
63  const char *ns,
64  const char *name,
65  const char *attributename,
66  const char *attributevalue,
67  bool ignorecase) const;
68  bool insertNode(xmldomnode *node,
69  uint64_t position,
70  xmldomnodetype type,
71  xmldomnode **first,
72  xmldomnode **last,
73  uint64_t *count);
74  bool deleteFirstChild(
75  const char *ns,
76  const char *name,
77  bool ignorecase);
78  bool deleteChildren(
79  const char *ns,
80  const char *name,
81  bool ignorecase);
82  bool deleteChildren(
83  const char *ns,
84  const char *name,
85  const char *attributename,
86  const char *attributevalue,
87  bool ignorecase);
88  bool deleteDescendents(
89  const char *ns,
90  const char *name,
91  bool ignorecase);
92  bool deleteDescendents(
93  const char *ns,
94  const char *name,
95  const char *attributename,
96  const char *attributevalue,
97  bool ignorecase);
98  bool unwrapFirstChild(
99  const char *ns,
100  const char *name,
101  bool ignorecase);
102  bool unwrapChildren(
103  const char *ns,
104  const char *name,
105  bool ignorecase);
106  bool unwrapDescendents(
107  const char *ns,
108  const char *name,
109  bool ignorecase);
110  bool renameFirstChild(
111  const char *oldns,
112  const char *oldname,
113  const char *newns,
114  const char *newname,
115  bool ignorecase);
116  bool renameChildren(
117  const char *oldns,
118  const char *oldname,
119  const char *newns,
120  const char *newname,
121  bool ignorecase);
122  bool renameDescendents(
123  const char *oldns,
124  const char *oldname,
125  const char *newns,
126  const char *newname,
127  bool ignorecase);
128  bool deleteNode(xmldomnode *node,
129  uint64_t position,
130  const char *name,
131  xmldomnode **first,
132  xmldomnode **last,
133  uint64_t *count);
134  xmldomnode *unlinkNode(xmldomnode *node,
135  uint64_t position,
136  const char *name,
137  xmldomnode **first,
138  xmldomnode **last,
139  uint64_t *count);
140  void xml(stringbuffer *strb,
141  filedescriptor *fd,
142  bool indent,
143  uint16_t *indentlevel) const;
144  void append(stringbuffer *strb,
145  filedescriptor *fd,
146  const char *str) const;
147  void append(stringbuffer *strb,
148  filedescriptor *fd,
149  const char *str,
150  size_t len) const;
151  void append(stringbuffer *strb,
152  filedescriptor *fd,
153  char ch) const;
154  void append(stringbuffer *strb,
155  filedescriptor *fd,
156  uint16_t ch) const;
157  void safeAppend(stringbuffer *strb,
158  filedescriptor *fd,
159  const char *str) const;
160  bool match(xmldomnode *node,
161  const char *ns,
162  const char *name,
163  bool ignorecase) const;
164  bool match(xmldomnode *node,
165  const char *ns,
166  const char * const *set) const;
167 
168  void setPrivateData(void *privatedata);
169  void *getPrivateData();
170 
171  xmldomnode(const xmldomnode &x);
172  xmldomnode &operator=(const xmldomnode &x);
173 
174  xmldomnodeprivate *pvt;
Definition: xmldomnode.h:123
Definition: stringbuffer.h:22
Definition: xmldomevents.h:16
Definition: codetree.h:391
Definition: codetree.h:337
Definition: filedescriptor.h:14