Rudiments
domnode.h
1// Copyright (c) 1999-2018 David Muse
2// See the COPYING file for more information.
3
5 domnode &operator=(domnode &x);
6
7 protected:
8 virtual bool insertNode(domnode *node,
9 uint64_t position,
10 domnodetype type,
11 domnode **first,
12 domnode **last,
13 uint64_t *count);
14 virtual bool deleteNode(domnode *node,
15 uint64_t position,
16 const char *name,
17 domnode **first,
18 domnode **last,
19 uint64_t *count);
20 virtual domnode *unlinkNode(domnode *node,
21 uint64_t position,
22 const char *name,
23 domnode **first,
24 domnode **last,
25 uint64_t *count);
26
27 friend class codetree;
28 friend class codetreegrammar;
29 friend class domevents;
30 private:
31
32 void construct(dom *dom);
33 domnode *getNode(domnode *first,
34 uint64_t position,
35 const char *ns,
36 const char *name,
37 bool ignorecase,
38 uint64_t count);
39 domnode *getAttribute(const char *name,
40 bool ignorecase);
41 domnode *getFirstChild(const char *ns,
42 const char *name,
43 bool ignorecase);
44 domnode *getFirstChild(const char *ns,
45 const char *name,
46 const char *attributename,
47 const char *attributevalue,
48 bool ignorecase);
49 domnode *getFirstTagChild(const char *ns,
50 const char *name,
51 bool ignorecase);
52 domnode *getFirstTagChild(const char *ns,
53 const char *name,
54 const char *attributename,
55 const char *attributevalue,
56 bool ignorecase);
57 domnode *getPreviousTagSibling(
58 const char *ns,
59 const char *name,
60 bool ignorecase);
61 domnode *getPreviousTagSibling(
62 const char *ns,
63 const char *name,
64 const char *attributename,
65 const char *attributevalue,
66 bool ignorecase);
67 domnode *getNextTagSibling(
68 const char *ns,
69 const char *name,
70 bool ignorecase);
71 domnode *getNextTagSibling(
72 const char *ns,
73 const char *name,
74 const char *attributename,
75 const char *attributevalue,
76 bool ignorecase);
77 domnode *getFirstTagDescendent(
78 const char *ns,
79 const char *name,
80 bool ignorecase);
81 domnode *getFirstTagDescendent(
82 const char *ns,
83 const char *name,
84 const char *attributename,
85 const char *attributevalue,
86 bool ignorecase);
87 bool deleteFirstChild(const char *ns,
88 const char *name,
89 bool ignorecase);
90 bool deleteChildren(const char *ns,
91 const char *name,
92 bool ignorecase);
93 bool deleteChildren(const char *ns,
94 const char *name,
95 const char *attributename,
96 const char *attributevalue,
97 bool ignorecase);
98 bool deleteDescendents(const char *ns,
99 const char *name,
100 bool ignorecase);
101 bool deleteDescendents(const char *ns,
102 const char *name,
103 const char *attributename,
104 const char *attributevalue,
105 bool ignorecase);
106 bool unwrapFirstChild(const char *ns,
107 const char *name,
108 bool ignorecase);
109 bool unwrapChildren(const char *ns,
110 const char *name,
111 bool ignorecase);
112 bool unwrapDescendents(const char *ns,
113 const char *name,
114 bool ignorecase);
115 bool renameFirstChild(const char *oldns,
116 const char *oldname,
117 const char *newns,
118 const char *newname,
119 bool ignorecase);
120 bool renameChildren(const char *oldns,
121 const char *oldname,
122 const char *newns,
123 const char *newname,
124 bool ignorecase);
125 bool renameDescendents(const char *oldns,
126 const char *oldname,
127 const char *newns,
128 const char *newname,
129 bool ignorecase);
130 void write(output *out,
131 bool indent,
132 uint16_t *indentlevel);
133 void safeWrite(output *out, const char *str);
134 bool match(domnode *node,
135 const char *ns,
136 const char *name,
137 bool ignorecase);
138 bool match(domnode *node,
139 const char *ns,
140 const char * const *set);
141
142 void setPrivateData(void *privatedata);
143 void *getPrivateData();
144
145 domnodeprivate *pvt;
Definition codetree.h:328
Definition codetree.h:378
Definition dom.h:10
Definition domevents.h:219
Definition domnode.h:122
Definition output.h:11