Compare commits
41 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c1424ee4e1 | ||
|
|
b94eefc7a1 | ||
|
|
e2d02e1623 | ||
|
|
befc3c3ae7 | ||
|
|
f928c35186 | ||
|
|
d946ddadc2 | ||
|
|
65b5366a02 | ||
|
|
e59e3c3460 | ||
|
|
7dd295609c | ||
|
|
6a18a3105c | ||
|
|
f5af951f1d | ||
|
|
95f687b1f1 | ||
|
|
0741941589 | ||
|
|
00b74a40b5 | ||
|
|
72407d2050 | ||
|
|
938560f9f0 | ||
|
|
3c9370561c | ||
|
|
0bb8767e37 | ||
|
|
51a1d1c937 | ||
|
|
ff75430374 | ||
|
|
5dd529236b | ||
|
|
0f1fa6d271 | ||
|
|
59785ec384 | ||
|
|
cc1745b552 | ||
|
|
dc75a362cb | ||
|
|
50689919b7 | ||
|
|
63d8de6278 | ||
|
|
703f91e6b8 | ||
|
|
c8593733a2 | ||
|
|
588e4ef8a9 | ||
|
|
f26a547fdc | ||
|
|
28f9a48d5e | ||
|
|
f6dc9be122 | ||
|
|
ff97dbb2cc | ||
|
|
5b00e0662f | ||
|
|
a36f7ac776 | ||
|
|
bd197877ca | ||
|
|
c9e3b52745 | ||
|
|
e1b50439c9 | ||
|
|
cf1006943b | ||
|
|
71b12596eb |
4
.gitignore
vendored
4
.gitignore
vendored
@@ -7,6 +7,8 @@ tinyxml2/tinyxml2-cbp/bin/
|
||||
tinyxml2/tinyxml2-cbp/obj/
|
||||
tinyxml2/bin/
|
||||
tinyxml2/temp/
|
||||
.artifacts/
|
||||
.projects/
|
||||
*.sdf
|
||||
*.suo
|
||||
*.opensdf
|
||||
@@ -15,4 +17,4 @@ tinyxml2/temp/
|
||||
*.layout
|
||||
*.o
|
||||
*.vc.db
|
||||
*.vc.opendb
|
||||
*.vc.opendb
|
||||
|
||||
@@ -21,13 +21,13 @@ include(CTest)
|
||||
################################
|
||||
# set lib version here
|
||||
|
||||
set(GENERIC_LIB_VERSION "6.0.0")
|
||||
set(GENERIC_LIB_VERSION "6.2.0")
|
||||
set(GENERIC_LIB_SOVERSION "6")
|
||||
|
||||
################################
|
||||
# Add definitions
|
||||
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG")
|
||||
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DTINYXML2_DEBUG")
|
||||
|
||||
################################
|
||||
# Add targets
|
||||
@@ -138,7 +138,7 @@ if(BUILD_TESTING AND BUILD_TESTS)
|
||||
COMMENT "Configuring xmltest resources directory: ${CMAKE_BINARY_DIR}/resources"
|
||||
)
|
||||
|
||||
add_test(NAME xmltest COMMAND xmltest)
|
||||
add_test(NAME xmltest COMMAND xmltest WORKING_DIRECTORY $<TARGET_FILE_DIR:xmltest>)
|
||||
endif()
|
||||
|
||||
install(FILES tinyxml2.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||
@@ -170,7 +170,7 @@ file(WRITE
|
||||
|
||||
install(FILES
|
||||
${CMAKE_BINARY_DIR}/${CMAKE_PROJECT_NAME}Config.cmake
|
||||
DESTINATION lib/cmake/${CMAKE_PROJECT_NAME})
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${CMAKE_PROJECT_NAME})
|
||||
|
||||
install(EXPORT ${CMAKE_PROJECT_NAME}Targets
|
||||
DESTINATION lib/cmake/${CMAKE_PROJECT_NAME})
|
||||
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${CMAKE_PROJECT_NAME})
|
||||
|
||||
56
Makefile
56
Makefile
@@ -1,3 +1,25 @@
|
||||
# For GNU conventions and targets see https://www.gnu.org/prep/standards/standards.html
|
||||
# Using GNU standards makes it easier for some users to keep doing what they are used to.
|
||||
|
||||
# 'mkdir -p' is non-portable, but it is widely supported. A portable solution
|
||||
# is elusive due to race conditions on testing the directory and creating it.
|
||||
# Anemic toolchain users can sidestep the problem using MKDIR="mkdir".
|
||||
|
||||
AR = ar
|
||||
ARFLAGS = cr
|
||||
RM = rm -f
|
||||
RANLIB = ranlib
|
||||
MKDIR = mkdir -p
|
||||
|
||||
INSTALL = install
|
||||
INSTALL_PROGRAM = $(INSTALL)
|
||||
INSTALL_DATA = $(INSTALL) -m 644
|
||||
|
||||
prefix = /usr/local
|
||||
bindir = $(prefix)/bin
|
||||
libdir = $(prefix)/lib
|
||||
includedir = $(prefix)/include
|
||||
|
||||
all: xmltest staticlib
|
||||
|
||||
rebuild: clean all
|
||||
@@ -12,15 +34,41 @@ effc:
|
||||
-Wno-unused-parameter -Weffc++ xmltest.cpp tinyxml2.cpp -o xmltest
|
||||
|
||||
clean:
|
||||
$(RM) *.o xmltest libtinyxml2.a
|
||||
|
||||
-$(RM) *.o xmltest libtinyxml2.a
|
||||
|
||||
# Standard GNU target
|
||||
distclean:
|
||||
-$(RM) *.o xmltest libtinyxml2.a
|
||||
|
||||
test: clean xmltest
|
||||
./xmltest
|
||||
|
||||
# Standard GNU target
|
||||
check: clean xmltest
|
||||
./xmltest
|
||||
|
||||
staticlib: libtinyxml2.a
|
||||
|
||||
libtinyxml2.a: tinyxml2.o
|
||||
$(AR) $(ARFLAGS)s $@ $^
|
||||
|
||||
$(AR) $(ARFLAGS) $@ $^
|
||||
$(RANLIB) $@
|
||||
|
||||
tinyxml2.o: tinyxml2.cpp tinyxml2.h
|
||||
|
||||
directories:
|
||||
$(MKDIR) $(DESTDIR)$(prefix)
|
||||
$(MKDIR) $(DESTDIR)$(bindir)
|
||||
$(MKDIR) $(DESTDIR)$(libdir)
|
||||
$(MKDIR) $(DESTDIR)$(includedir)
|
||||
|
||||
# Standard GNU target.
|
||||
install: xmltest staticlib directories
|
||||
$(INSTALL_PROGRAM) xmltest $(DESTDIR)$(bindir)/xmltest
|
||||
$(INSTALL_DATA) tinyxml2.h $(DESTDIR)$(includedir)/tinyxml2.h
|
||||
$(INSTALL_DATA) libtinyxml2.a $(DESTDIR)$(libdir)/libtinyxml2.a
|
||||
|
||||
# Standard GNU target
|
||||
uninstall:
|
||||
$(RM) $(DESTDIR)$(bindir)/xmltest
|
||||
$(RM) $(DESTDIR)$(includedir)/tinyxml2.h
|
||||
$(RM) $(DESTDIR)$(libdir)/libtinyxml2.a
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -67,7 +67,7 @@ $(function() {
|
||||
</div></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -67,7 +67,7 @@ $(function() {
|
||||
</div></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -96,7 +96,7 @@ Text "A Midsummer Night's Dream" </li>
|
||||
</div></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -73,7 +73,7 @@ $(function() {
|
||||
</div></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -83,7 +83,7 @@ $(function() {
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -75,7 +75,7 @@ $(function() {
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -95,7 +95,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -215,7 +215,7 @@ void </td><td class="memItemRight" valign="bottom"><a class="el" href="clas
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -105,7 +105,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -292,7 +292,7 @@ const char* xmlcstr = printer.CStr();
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -73,7 +73,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -79,7 +79,7 @@ $(function() {
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -105,7 +105,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -294,7 +294,7 @@ const char* xmlcstr = printer.CStr();
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -73,63 +73,62 @@ $(function() {
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a9efa54f7ecb37c17ab1fa2b3078ccca1">Accept</a>(XMLVisitor *visitor) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a65656b0b2cbc822708eb351504178aaf">Clear</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a62c71b6bf8734b5424063b8d9a61c266">DeepClone</a>(XMLDocument *target) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aab792e90adc38cdc5446616573b8b01b">DeepCopy</a>(XMLDocument *target)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#af592ffc91514e25a39664521ac83db45">DeepCopy</a>(XMLDocument *target) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a363b6edbd6ebd55f8387d2b89f2b0921">DeleteChild</a>(XMLNode *node)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a0360085cc54df5bff85d5c5da13afdce">DeleteChildren</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ac1d6e2c7fcc1a660624ac4f68e96380d">DeleteNode</a>(XMLNode *node)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a34e6318e182e40e3cc4f4ba5d59ed9ed">Error</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#afa3ed33b3107f920ec2b301f805ac17d">ErrorID</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a57400f816dbe7799ece33615ead9ab76">ErrorLineNum</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad75aa9d32c4e8b300655186808aa9abf">ErrorStr</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#ae7dc225e1018cdd685f7563593a1fe08">FirstChild</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a1795a35852dc8aae877cc8ded986e59b">FirstChildElement</a>(const char *name=0) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a2de84cfa4ec3fe249bad745069d145f1">GetDocument</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#af343d1ef0b45c0020e62d784d7e67a68">GetDocument</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad82d07e43e096e834dbdfd06312398c1">GetErrorLineNum</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a229494e30e5473237f3fa547eee4c43f">GetErrorStr1</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a2d952f49c761bffd2903250680a8716b">GetErrorStr2</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a9b5fc636646fda761d342c72e91cb286">GetLineNum</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a7f0687574afa03bc479dc44f29db0afe">GetUserData</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a33fc5d159db873a179fa26338adb05bd">HasBOM</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a85adb8f0b7477eec30f9a41d420b09c2">InsertAfterChild</a>(XMLNode *afterThis, XMLNode *addThis)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#aeb249ed60f4e8bfad3709151c3ee4286">InsertEndChild</a>(XMLNode *addThis)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a8ff7dc071f3a1a6ae2ac25a37492865d">InsertFirstChild</a>(XMLNode *addThis)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a9b8583a277e8e26f4cbbb5492786778e">LastChild</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a173e9d1341bc56992e2d320a35936551">LastChildElement</a>(const char *name=0) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a2ebd4647a8af5fc6831b294ac26a150a">LoadFile</a>(const char *filename)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a5f1d330fad44c52f3d265338dd2a6dc2">LoadFile</a>(FILE *)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ade4874bcb439954972ef2b3723ff3259">NewComment</a>(const char *comment)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aee2eb3435923f5494dcc70ac225b60a2">NewDeclaration</a>(const char *text=0)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a8aa7817d4a1001364b06373763ab99d6">NewElement</a>(const char *name)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ab7e8b29ae4099092a8bb947da6361296">NewText</a>(const char *text)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a5385c937734ff6db9226ab707d2c7147">NewUnknown</a>(const char *text)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a79db9ef0fe014d27790f2218b87bcbb5">NextSibling</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a1264c86233328f0cd36297552d982f80">NextSiblingElement</a>(const char *name=0) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#ac3ab489e6e202a3cd1762d3b332e89d4">NoChildren</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#ae0f62bc186c56c2e0483ebd52dbfbe34">Parent</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a1819bd34f540a7304c105a6232d25a1f">Parse</a>(const char *xml, size_t nBytes=(size_t)(-1))</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#aac667c513d445f8b783e1e15ef9d3551">PreviousSibling</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a872936cae46fb473eb47fec99129fc70">PreviousSiblingElement</a>(const char *name=0) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a867cf5fa3e3ff6ae4847a8b7ee8ec083">Print</a>(XMLPrinter *streamer=0) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a1d033945b42e125d933d6231e4571552">PrintError</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad2b70320d3c2a071c2f36928edff3e1c">RootElement</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a73ac416b4a2aa0952e841220eb3da18f">SaveFile</a>(const char *filename, bool compact=false)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a8b95779479a0035acc67b3a61dfe1b74">SaveFile</a>(FILE *fp, bool compact=false)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a14419b698f7c4b140df4e80f3f0c93b0">SetBOM</a>(bool useBOM)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a002978fc889cc011d143185f2377eca2">SetUserData</a>(void *userData)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a09dd68cf9eae137579f6e50f36487513">SetValue</a>(const char *val, bool staticMem=false)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aa37cc1709d7e1e988bc17dcfb24a69b8">ShallowClone</a>(XMLDocument *) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a6fe5ef18699091844fcf64b56ffa5bf9">ShallowEqual</a>(const XMLNode *) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#aff47671055aa99840a1c1ebd661e63e3">ToComment</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a174fd4c22c010b58138c1b84a0dfbd51">ToDeclaration</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a3e185f880882bd978367bb55937735ec">ToDocument</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#aab516e699567f75cc9ab2ef2eee501e8">ToElement</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a41c55dab9162d1eb62db2008430e376b">ToText</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a8675a74aa0ada6eccab0c77ef3e5b9bd">ToUnknown</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a66344989a4b436155bcda72bd6b07b82">Value</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a57ddf17b6e054dda10af98991b1b8f70">XMLDocument</a>(bool processEntities=true, Whitespace whitespaceMode=PRESERVE_WHITESPACE)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a9b5fc636646fda761d342c72e91cb286">GetLineNum</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a7f0687574afa03bc479dc44f29db0afe">GetUserData</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a33fc5d159db873a179fa26338adb05bd">HasBOM</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a85adb8f0b7477eec30f9a41d420b09c2">InsertAfterChild</a>(XMLNode *afterThis, XMLNode *addThis)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#aeb249ed60f4e8bfad3709151c3ee4286">InsertEndChild</a>(XMLNode *addThis)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a8ff7dc071f3a1a6ae2ac25a37492865d">InsertFirstChild</a>(XMLNode *addThis)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a9b8583a277e8e26f4cbbb5492786778e">LastChild</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a173e9d1341bc56992e2d320a35936551">LastChildElement</a>(const char *name=0) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a2ebd4647a8af5fc6831b294ac26a150a">LoadFile</a>(const char *filename)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a5f1d330fad44c52f3d265338dd2a6dc2">LoadFile</a>(FILE *)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ade4874bcb439954972ef2b3723ff3259">NewComment</a>(const char *comment)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aee2eb3435923f5494dcc70ac225b60a2">NewDeclaration</a>(const char *text=0)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a8aa7817d4a1001364b06373763ab99d6">NewElement</a>(const char *name)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ab7e8b29ae4099092a8bb947da6361296">NewText</a>(const char *text)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a5385c937734ff6db9226ab707d2c7147">NewUnknown</a>(const char *text)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a79db9ef0fe014d27790f2218b87bcbb5">NextSibling</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a1264c86233328f0cd36297552d982f80">NextSiblingElement</a>(const char *name=0) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#ac3ab489e6e202a3cd1762d3b332e89d4">NoChildren</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#ae0f62bc186c56c2e0483ebd52dbfbe34">Parent</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a1819bd34f540a7304c105a6232d25a1f">Parse</a>(const char *xml, size_t nBytes=(size_t)(-1))</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#aac667c513d445f8b783e1e15ef9d3551">PreviousSibling</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a872936cae46fb473eb47fec99129fc70">PreviousSiblingElement</a>(const char *name=0) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a867cf5fa3e3ff6ae4847a8b7ee8ec083">Print</a>(XMLPrinter *streamer=0) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a1d033945b42e125d933d6231e4571552">PrintError</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad2b70320d3c2a071c2f36928edff3e1c">RootElement</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a73ac416b4a2aa0952e841220eb3da18f">SaveFile</a>(const char *filename, bool compact=false)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a8b95779479a0035acc67b3a61dfe1b74">SaveFile</a>(FILE *fp, bool compact=false)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a14419b698f7c4b140df4e80f3f0c93b0">SetBOM</a>(bool useBOM)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a002978fc889cc011d143185f2377eca2">SetUserData</a>(void *userData)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a09dd68cf9eae137579f6e50f36487513">SetValue</a>(const char *val, bool staticMem=false)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aa37cc1709d7e1e988bc17dcfb24a69b8">ShallowClone</a>(XMLDocument *) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a6fe5ef18699091844fcf64b56ffa5bf9">ShallowEqual</a>(const XMLNode *) const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#aff47671055aa99840a1c1ebd661e63e3">ToComment</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a174fd4c22c010b58138c1b84a0dfbd51">ToDeclaration</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a3e185f880882bd978367bb55937735ec">ToDocument</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#aab516e699567f75cc9ab2ef2eee501e8">ToElement</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a41c55dab9162d1eb62db2008430e376b">ToText</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a8675a74aa0ada6eccab0c77ef3e5b9bd">ToUnknown</a>()</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a66344989a4b436155bcda72bd6b07b82">Value</a>() const</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_node.html">tinyxml2::XMLNode</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a57ddf17b6e054dda10af98991b1b8f70">XMLDocument</a>(bool processEntities=true, Whitespace whitespaceMode=PRESERVE_WHITESPACE)</td><td class="entry"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">tinyxml2::XMLDocument</a></td><td class="entry"></td></tr>
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -132,28 +132,22 @@ bool </td><td class="memItemRight" valign="bottom"><a class="el" href="clas
|
||||
XMLError </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#afa3ed33b3107f920ec2b301f805ac17d">ErrorID</a> () const</td></tr>
|
||||
<tr class="memdesc:afa3ed33b3107f920ec2b301f805ac17d"><td class="mdescLeft"> </td><td class="mdescRight">Return the errorID. <br /></td></tr>
|
||||
<tr class="separator:afa3ed33b3107f920ec2b301f805ac17d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a229494e30e5473237f3fa547eee4c43f"><td class="memItemLeft" align="right" valign="top"><a id="a229494e30e5473237f3fa547eee4c43f"></a>
|
||||
const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a229494e30e5473237f3fa547eee4c43f">GetErrorStr1</a> () const</td></tr>
|
||||
<tr class="memdesc:a229494e30e5473237f3fa547eee4c43f"><td class="mdescLeft"> </td><td class="mdescRight">Return a possibly helpful diagnostic location or string. <br /></td></tr>
|
||||
<tr class="separator:a229494e30e5473237f3fa547eee4c43f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a2d952f49c761bffd2903250680a8716b"><td class="memItemLeft" align="right" valign="top"><a id="a2d952f49c761bffd2903250680a8716b"></a>
|
||||
const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a2d952f49c761bffd2903250680a8716b">GetErrorStr2</a> () const</td></tr>
|
||||
<tr class="memdesc:a2d952f49c761bffd2903250680a8716b"><td class="mdescLeft"> </td><td class="mdescRight">Return a possibly helpful secondary diagnostic location or string. <br /></td></tr>
|
||||
<tr class="separator:a2d952f49c761bffd2903250680a8716b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ad82d07e43e096e834dbdfd06312398c1"><td class="memItemLeft" align="right" valign="top"><a id="ad82d07e43e096e834dbdfd06312398c1"></a>
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad82d07e43e096e834dbdfd06312398c1">GetErrorLineNum</a> () const</td></tr>
|
||||
<tr class="memdesc:ad82d07e43e096e834dbdfd06312398c1"><td class="mdescLeft"> </td><td class="mdescRight">Return the line where the error occured, or zero if unknown. <br /></td></tr>
|
||||
<tr class="separator:ad82d07e43e096e834dbdfd06312398c1"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ad75aa9d32c4e8b300655186808aa9abf"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad75aa9d32c4e8b300655186808aa9abf">ErrorStr</a> () const</td></tr>
|
||||
<tr class="separator:ad75aa9d32c4e8b300655186808aa9abf"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a1d033945b42e125d933d6231e4571552"><td class="memItemLeft" align="right" valign="top"><a id="a1d033945b42e125d933d6231e4571552"></a>
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a1d033945b42e125d933d6231e4571552">PrintError</a> () const</td></tr>
|
||||
<tr class="memdesc:a1d033945b42e125d933d6231e4571552"><td class="mdescLeft"> </td><td class="mdescRight">If there is an error, print it to stdout. <br /></td></tr>
|
||||
<tr class="memdesc:a1d033945b42e125d933d6231e4571552"><td class="mdescLeft"> </td><td class="mdescRight">A (trivial) utility function that prints the <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad75aa9d32c4e8b300655186808aa9abf">ErrorStr()</a> to stdout. <br /></td></tr>
|
||||
<tr class="separator:a1d033945b42e125d933d6231e4571552"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a57400f816dbe7799ece33615ead9ab76"><td class="memItemLeft" align="right" valign="top"><a id="a57400f816dbe7799ece33615ead9ab76"></a>
|
||||
int </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a57400f816dbe7799ece33615ead9ab76">ErrorLineNum</a> () const</td></tr>
|
||||
<tr class="memdesc:a57400f816dbe7799ece33615ead9ab76"><td class="mdescLeft"> </td><td class="mdescRight">Return the line where the error occured, or zero if unknown. <br /></td></tr>
|
||||
<tr class="separator:a57400f816dbe7799ece33615ead9ab76"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a65656b0b2cbc822708eb351504178aaf"><td class="memItemLeft" align="right" valign="top"><a id="a65656b0b2cbc822708eb351504178aaf"></a>
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a65656b0b2cbc822708eb351504178aaf">Clear</a> ()</td></tr>
|
||||
<tr class="memdesc:a65656b0b2cbc822708eb351504178aaf"><td class="mdescLeft"> </td><td class="mdescRight">Clear the document, resetting it to the initial state. <br /></td></tr>
|
||||
<tr class="separator:a65656b0b2cbc822708eb351504178aaf"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aab792e90adc38cdc5446616573b8b01b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aab792e90adc38cdc5446616573b8b01b">DeepCopy</a> (<a class="el" href="classtinyxml2_1_1_x_m_l_document.html">XMLDocument</a> *target)</td></tr>
|
||||
<tr class="separator:aab792e90adc38cdc5446616573b8b01b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:af592ffc91514e25a39664521ac83db45"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#af592ffc91514e25a39664521ac83db45">DeepCopy</a> (<a class="el" href="classtinyxml2_1_1_x_m_l_document.html">XMLDocument</a> *target) const</td></tr>
|
||||
<tr class="separator:af592ffc91514e25a39664521ac83db45"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aa37cc1709d7e1e988bc17dcfb24a69b8"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classtinyxml2_1_1_x_m_l_node.html">XMLNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aa37cc1709d7e1e988bc17dcfb24a69b8">ShallowClone</a> (<a class="el" href="classtinyxml2_1_1_x_m_l_document.html">XMLDocument</a> *) const</td></tr>
|
||||
<tr class="separator:aa37cc1709d7e1e988bc17dcfb24a69b8"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6fe5ef18699091844fcf64b56ffa5bf9"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a6fe5ef18699091844fcf64b56ffa5bf9">ShallowEqual</a> (const <a class="el" href="classtinyxml2_1_1_x_m_l_node.html">XMLNode</a> *) const</td></tr>
|
||||
@@ -290,8 +284,8 @@ const char* xmlcstr = printer.CStr();
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="aab792e90adc38cdc5446616573b8b01b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aab792e90adc38cdc5446616573b8b01b">◆ </a></span>DeepCopy()</h2>
|
||||
<a id="af592ffc91514e25a39664521ac83db45"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#af592ffc91514e25a39664521ac83db45">◆ </a></span>DeepCopy()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@@ -301,7 +295,7 @@ const char* xmlcstr = printer.CStr();
|
||||
<td>(</td>
|
||||
<td class="paramtype"><a class="el" href="classtinyxml2_1_1_x_m_l_document.html">XMLDocument</a> * </td>
|
||||
<td class="paramname"><em>target</em></td><td>)</td>
|
||||
<td></td>
|
||||
<td> const</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
@@ -327,6 +321,24 @@ const char* xmlcstr = printer.CStr();
|
||||
</div><div class="memdoc">
|
||||
<p>Delete a node associated with this document. It will be unlinked from the DOM. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ad75aa9d32c4e8b300655186808aa9abf"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad75aa9d32c4e8b300655186808aa9abf">◆ </a></span>ErrorStr()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">const char* tinyxml2::XMLDocument::ErrorStr </td>
|
||||
<td>(</td>
|
||||
<td class="paramname"></td><td>)</td>
|
||||
<td> const</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Returns a "long form" error description. A hopefully helpful diagnostic with location, line number, and/or additional info. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a33fc5d159db873a179fa26338adb05bd"></a>
|
||||
@@ -722,7 +734,7 @@ doc.Print( &printer );
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -150,7 +150,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -700,7 +700,7 @@ QueryIntAttribute( "foo", &value ); // if "foo" isn't found, value will
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -90,7 +90,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -181,7 +181,7 @@ if ( child2 )
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -105,7 +105,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -257,7 +257,7 @@ const char* xmlcstr = printer.CStr();
|
||||
</div><div class="memdoc">
|
||||
<p>Make a copy of this node and all its children.</p>
|
||||
<p>If the 'target' is null, then the nodes will be allocated in the current document. If 'target' is specified, the memory will be allocated is the specified <a class="el" href="classtinyxml2_1_1_x_m_l_document.html">XMLDocument</a>.</p>
|
||||
<p>NOTE: This is probably not the correct tool to copy a document, since XMLDocuments can have multiple top level XMLNodes. You probably want to use <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aab792e90adc38cdc5446616573b8b01b">XMLDocument::DeepCopy()</a> </p>
|
||||
<p>NOTE: This is probably not the correct tool to copy a document, since XMLDocuments can have multiple top level XMLNodes. You probably want to use <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#af592ffc91514e25a39664521ac83db45">XMLDocument::DeepCopy()</a> </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@@ -573,7 +573,7 @@ Text: the text string
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -98,7 +98,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -402,7 +402,7 @@ printer.CloseElement();
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -107,7 +107,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -302,7 +302,7 @@ const char* xmlcstr = printer.CStr();
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -105,7 +105,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -293,7 +293,7 @@ const char* xmlcstr = printer.CStr();
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -81,7 +81,7 @@ $(function() {
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -130,7 +130,7 @@ virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" hr
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -71,7 +71,7 @@ $(function() {
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -117,7 +117,7 @@ $(function() {
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a62c71b6bf8734b5424063b8d9a61c266">tinyxml2::XMLNode</a>
|
||||
</li>
|
||||
<li>DeepCopy()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aab792e90adc38cdc5446616573b8b01b">tinyxml2::XMLDocument</a>
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#af592ffc91514e25a39664521ac83db45">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>DeleteAttribute()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_element.html#aebd45aa7118964c30b32fe12e944628a">tinyxml2::XMLElement</a>
|
||||
@@ -150,6 +150,12 @@ $(function() {
|
||||
<li>ErrorID()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#afa3ed33b3107f920ec2b301f805ac17d">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>ErrorLineNum()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a57400f816dbe7799ece33615ead9ab76">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>ErrorStr()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad75aa9d32c4e8b300655186808aa9abf">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -184,15 +190,6 @@ $(function() {
|
||||
<li>GetDocument()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a2de84cfa4ec3fe249bad745069d145f1">tinyxml2::XMLNode</a>
|
||||
</li>
|
||||
<li>GetErrorLineNum()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad82d07e43e096e834dbdfd06312398c1">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>GetErrorStr1()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a229494e30e5473237f3fa547eee4c43f">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>GetErrorStr2()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a2d952f49c761bffd2903250680a8716b">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>GetLineNum()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_attribute.html#a02d5ea924586e35f9c13857d1671b765">tinyxml2::XMLAttribute</a>
|
||||
, <a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a9b5fc636646fda761d342c72e91cb286">tinyxml2::XMLNode</a>
|
||||
@@ -536,7 +533,7 @@ $(function() {
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -117,7 +117,7 @@ $(function() {
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a62c71b6bf8734b5424063b8d9a61c266">tinyxml2::XMLNode</a>
|
||||
</li>
|
||||
<li>DeepCopy()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#aab792e90adc38cdc5446616573b8b01b">tinyxml2::XMLDocument</a>
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#af592ffc91514e25a39664521ac83db45">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>DeleteAttribute()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_element.html#aebd45aa7118964c30b32fe12e944628a">tinyxml2::XMLElement</a>
|
||||
@@ -150,6 +150,12 @@ $(function() {
|
||||
<li>ErrorID()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#afa3ed33b3107f920ec2b301f805ac17d">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>ErrorLineNum()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a57400f816dbe7799ece33615ead9ab76">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>ErrorStr()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad75aa9d32c4e8b300655186808aa9abf">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
@@ -184,15 +190,6 @@ $(function() {
|
||||
<li>GetDocument()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a2de84cfa4ec3fe249bad745069d145f1">tinyxml2::XMLNode</a>
|
||||
</li>
|
||||
<li>GetErrorLineNum()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#ad82d07e43e096e834dbdfd06312398c1">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>GetErrorStr1()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a229494e30e5473237f3fa547eee4c43f">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>GetErrorStr2()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_document.html#a2d952f49c761bffd2903250680a8716b">tinyxml2::XMLDocument</a>
|
||||
</li>
|
||||
<li>GetLineNum()
|
||||
: <a class="el" href="classtinyxml2_1_1_x_m_l_attribute.html#a02d5ea924586e35f9c13857d1671b765">tinyxml2::XMLAttribute</a>
|
||||
, <a class="el" href="classtinyxml2_1_1_x_m_l_node.html#a9b5fc636646fda761d342c72e91cb286">tinyxml2::XMLNode</a>
|
||||
@@ -536,7 +533,7 @@ $(function() {
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -82,7 +82,7 @@ $(function() {
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -222,7 +222,7 @@ printer.CloseElement();
|
||||
</div></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">TinyXML-2
|
||||
 <span id="projectnumber">5.0.1</span>
|
||||
 <span id="projectnumber">6.0.0</span>
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
@@ -65,16 +65,16 @@ $(function() {
|
||||
<div class="contents">
|
||||
<div class="textblock">Here is a list of all related documentation pages:</div><div class="directory">
|
||||
<table class="directory">
|
||||
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="_example-1.html" target="_self">Load an XML File</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="_example-2.html" target="_self">Parse an XML from char buffer</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="_example-3.html" target="_self">Get information out of XML</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="_example-4.html" target="_self">Read attributes and text information.</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="_example_1.html" target="_self">Load an XML File</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="_example_2.html" target="_self">Parse an XML from char buffer</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="_example_3.html" target="_self">Get information out of XML</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><a class="el" href="_example_4.html" target="_self">Read attributes and text information.</a></td><td class="desc"></td></tr>
|
||||
</table>
|
||||
</div><!-- directory -->
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated on Sat Jul 15 2017 19:39:36 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
Generated on Sun Dec 10 2017 20:04:44 for TinyXML-2 by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
var searchData=
|
||||
[
|
||||
['deepclone',['DeepClone',['../classtinyxml2_1_1_x_m_l_node.html#a62c71b6bf8734b5424063b8d9a61c266',1,'tinyxml2::XMLNode']]],
|
||||
['deepcopy',['DeepCopy',['../classtinyxml2_1_1_x_m_l_document.html#aab792e90adc38cdc5446616573b8b01b',1,'tinyxml2::XMLDocument']]],
|
||||
['deepcopy',['DeepCopy',['../classtinyxml2_1_1_x_m_l_document.html#af592ffc91514e25a39664521ac83db45',1,'tinyxml2::XMLDocument']]],
|
||||
['deleteattribute',['DeleteAttribute',['../classtinyxml2_1_1_x_m_l_element.html#aebd45aa7118964c30b32fe12e944628a',1,'tinyxml2::XMLElement']]],
|
||||
['deletechild',['DeleteChild',['../classtinyxml2_1_1_x_m_l_node.html#a363b6edbd6ebd55f8387d2b89f2b0921',1,'tinyxml2::XMLNode']]],
|
||||
['deletechildren',['DeleteChildren',['../classtinyxml2_1_1_x_m_l_node.html#a0360085cc54df5bff85d5c5da13afdce',1,'tinyxml2::XMLNode']]],
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
var searchData=
|
||||
[
|
||||
['error',['Error',['../classtinyxml2_1_1_x_m_l_document.html#a34e6318e182e40e3cc4f4ba5d59ed9ed',1,'tinyxml2::XMLDocument']]],
|
||||
['errorid',['ErrorID',['../classtinyxml2_1_1_x_m_l_document.html#afa3ed33b3107f920ec2b301f805ac17d',1,'tinyxml2::XMLDocument']]]
|
||||
['errorid',['ErrorID',['../classtinyxml2_1_1_x_m_l_document.html#afa3ed33b3107f920ec2b301f805ac17d',1,'tinyxml2::XMLDocument']]],
|
||||
['errorlinenum',['ErrorLineNum',['../classtinyxml2_1_1_x_m_l_document.html#a57400f816dbe7799ece33615ead9ab76',1,'tinyxml2::XMLDocument']]],
|
||||
['errorstr',['ErrorStr',['../classtinyxml2_1_1_x_m_l_document.html#ad75aa9d32c4e8b300655186808aa9abf',1,'tinyxml2::XMLDocument']]]
|
||||
];
|
||||
|
||||
@@ -1,10 +1,7 @@
|
||||
var searchData=
|
||||
[
|
||||
['get_20information_20out_20of_20xml',['Get information out of XML',['../_example-3.html',1,'']]],
|
||||
['get_20information_20out_20of_20xml',['Get information out of XML',['../_example_3.html',1,'']]],
|
||||
['getdocument',['GetDocument',['../classtinyxml2_1_1_x_m_l_node.html#a2de84cfa4ec3fe249bad745069d145f1',1,'tinyxml2::XMLNode::GetDocument() const'],['../classtinyxml2_1_1_x_m_l_node.html#af343d1ef0b45c0020e62d784d7e67a68',1,'tinyxml2::XMLNode::GetDocument()']]],
|
||||
['geterrorlinenum',['GetErrorLineNum',['../classtinyxml2_1_1_x_m_l_document.html#ad82d07e43e096e834dbdfd06312398c1',1,'tinyxml2::XMLDocument']]],
|
||||
['geterrorstr1',['GetErrorStr1',['../classtinyxml2_1_1_x_m_l_document.html#a229494e30e5473237f3fa547eee4c43f',1,'tinyxml2::XMLDocument']]],
|
||||
['geterrorstr2',['GetErrorStr2',['../classtinyxml2_1_1_x_m_l_document.html#a2d952f49c761bffd2903250680a8716b',1,'tinyxml2::XMLDocument']]],
|
||||
['getlinenum',['GetLineNum',['../classtinyxml2_1_1_x_m_l_node.html#a9b5fc636646fda761d342c72e91cb286',1,'tinyxml2::XMLNode::GetLineNum()'],['../classtinyxml2_1_1_x_m_l_attribute.html#a02d5ea924586e35f9c13857d1671b765',1,'tinyxml2::XMLAttribute::GetLineNum()']]],
|
||||
['gettext',['GetText',['../classtinyxml2_1_1_x_m_l_element.html#a6d5c8d115561ade4e4456b71d91b6f51',1,'tinyxml2::XMLElement']]],
|
||||
['getuserdata',['GetUserData',['../classtinyxml2_1_1_x_m_l_node.html#a7f0687574afa03bc479dc44f29db0afe',1,'tinyxml2::XMLNode']]]
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
var searchData=
|
||||
[
|
||||
['load_20an_20xml_20file',['Load an XML File',['../_example-1.html',1,'']]],
|
||||
['load_20an_20xml_20file',['Load an XML File',['../_example_1.html',1,'']]],
|
||||
['lastchild',['LastChild',['../classtinyxml2_1_1_x_m_l_node.html#a9b8583a277e8e26f4cbbb5492786778e',1,'tinyxml2::XMLNode::LastChild()'],['../classtinyxml2_1_1_x_m_l_handle.html#a9d09f04435f0f2f7d0816b0198d0517b',1,'tinyxml2::XMLHandle::LastChild()']]],
|
||||
['lastchildelement',['LastChildElement',['../classtinyxml2_1_1_x_m_l_node.html#a173e9d1341bc56992e2d320a35936551',1,'tinyxml2::XMLNode::LastChildElement()'],['../classtinyxml2_1_1_x_m_l_handle.html#a42cccd0ce8b1ce704f431025e9f19e0c',1,'tinyxml2::XMLHandle::LastChildElement()']]],
|
||||
['loadfile',['LoadFile',['../classtinyxml2_1_1_x_m_l_document.html#a2ebd4647a8af5fc6831b294ac26a150a',1,'tinyxml2::XMLDocument::LoadFile(const char *filename)'],['../classtinyxml2_1_1_x_m_l_document.html#a5f1d330fad44c52f3d265338dd2a6dc2',1,'tinyxml2::XMLDocument::LoadFile(FILE *)']]]
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
var searchData=
|
||||
[
|
||||
['parse_20an_20xml_20from_20char_20buffer',['Parse an XML from char buffer',['../_example-2.html',1,'']]],
|
||||
['parse_20an_20xml_20from_20char_20buffer',['Parse an XML from char buffer',['../_example_2.html',1,'']]],
|
||||
['parent',['Parent',['../classtinyxml2_1_1_x_m_l_node.html#ae0f62bc186c56c2e0483ebd52dbfbe34',1,'tinyxml2::XMLNode']]],
|
||||
['parse',['Parse',['../classtinyxml2_1_1_x_m_l_document.html#a1819bd34f540a7304c105a6232d25a1f',1,'tinyxml2::XMLDocument']]],
|
||||
['previoussibling',['PreviousSibling',['../classtinyxml2_1_1_x_m_l_node.html#aac667c513d445f8b783e1e15ef9d3551',1,'tinyxml2::XMLNode::PreviousSibling()'],['../classtinyxml2_1_1_x_m_l_handle.html#a428374e756f4db4cbc287fec64eae02c',1,'tinyxml2::XMLHandle::PreviousSibling()']]],
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
var searchData=
|
||||
[
|
||||
['read_20attributes_20and_20text_20information_2e',['Read attributes and text information.',['../_example-4.html',1,'']]],
|
||||
['read_20attributes_20and_20text_20information_2e',['Read attributes and text information.',['../_example_4.html',1,'']]],
|
||||
['rootelement',['RootElement',['../classtinyxml2_1_1_x_m_l_document.html#ad2b70320d3c2a071c2f36928edff3e1c',1,'tinyxml2::XMLDocument']]]
|
||||
];
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
var searchData=
|
||||
[
|
||||
['deepclone',['DeepClone',['../classtinyxml2_1_1_x_m_l_node.html#a62c71b6bf8734b5424063b8d9a61c266',1,'tinyxml2::XMLNode']]],
|
||||
['deepcopy',['DeepCopy',['../classtinyxml2_1_1_x_m_l_document.html#aab792e90adc38cdc5446616573b8b01b',1,'tinyxml2::XMLDocument']]],
|
||||
['deepcopy',['DeepCopy',['../classtinyxml2_1_1_x_m_l_document.html#af592ffc91514e25a39664521ac83db45',1,'tinyxml2::XMLDocument']]],
|
||||
['deleteattribute',['DeleteAttribute',['../classtinyxml2_1_1_x_m_l_element.html#aebd45aa7118964c30b32fe12e944628a',1,'tinyxml2::XMLElement']]],
|
||||
['deletechild',['DeleteChild',['../classtinyxml2_1_1_x_m_l_node.html#a363b6edbd6ebd55f8387d2b89f2b0921',1,'tinyxml2::XMLNode']]],
|
||||
['deletechildren',['DeleteChildren',['../classtinyxml2_1_1_x_m_l_node.html#a0360085cc54df5bff85d5c5da13afdce',1,'tinyxml2::XMLNode']]],
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
var searchData=
|
||||
[
|
||||
['error',['Error',['../classtinyxml2_1_1_x_m_l_document.html#a34e6318e182e40e3cc4f4ba5d59ed9ed',1,'tinyxml2::XMLDocument']]],
|
||||
['errorid',['ErrorID',['../classtinyxml2_1_1_x_m_l_document.html#afa3ed33b3107f920ec2b301f805ac17d',1,'tinyxml2::XMLDocument']]]
|
||||
['errorid',['ErrorID',['../classtinyxml2_1_1_x_m_l_document.html#afa3ed33b3107f920ec2b301f805ac17d',1,'tinyxml2::XMLDocument']]],
|
||||
['errorlinenum',['ErrorLineNum',['../classtinyxml2_1_1_x_m_l_document.html#a57400f816dbe7799ece33615ead9ab76',1,'tinyxml2::XMLDocument']]],
|
||||
['errorstr',['ErrorStr',['../classtinyxml2_1_1_x_m_l_document.html#ad75aa9d32c4e8b300655186808aa9abf',1,'tinyxml2::XMLDocument']]]
|
||||
];
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
var searchData=
|
||||
[
|
||||
['getdocument',['GetDocument',['../classtinyxml2_1_1_x_m_l_node.html#a2de84cfa4ec3fe249bad745069d145f1',1,'tinyxml2::XMLNode::GetDocument() const'],['../classtinyxml2_1_1_x_m_l_node.html#af343d1ef0b45c0020e62d784d7e67a68',1,'tinyxml2::XMLNode::GetDocument()']]],
|
||||
['geterrorlinenum',['GetErrorLineNum',['../classtinyxml2_1_1_x_m_l_document.html#ad82d07e43e096e834dbdfd06312398c1',1,'tinyxml2::XMLDocument']]],
|
||||
['geterrorstr1',['GetErrorStr1',['../classtinyxml2_1_1_x_m_l_document.html#a229494e30e5473237f3fa547eee4c43f',1,'tinyxml2::XMLDocument']]],
|
||||
['geterrorstr2',['GetErrorStr2',['../classtinyxml2_1_1_x_m_l_document.html#a2d952f49c761bffd2903250680a8716b',1,'tinyxml2::XMLDocument']]],
|
||||
['getlinenum',['GetLineNum',['../classtinyxml2_1_1_x_m_l_node.html#a9b5fc636646fda761d342c72e91cb286',1,'tinyxml2::XMLNode::GetLineNum()'],['../classtinyxml2_1_1_x_m_l_attribute.html#a02d5ea924586e35f9c13857d1671b765',1,'tinyxml2::XMLAttribute::GetLineNum()']]],
|
||||
['gettext',['GetText',['../classtinyxml2_1_1_x_m_l_element.html#a6d5c8d115561ade4e4456b71d91b6f51',1,'tinyxml2::XMLElement']]],
|
||||
['getuserdata',['GetUserData',['../classtinyxml2_1_1_x_m_l_node.html#a7f0687574afa03bc479dc44f29db0afe',1,'tinyxml2::XMLNode']]]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
var searchData=
|
||||
[
|
||||
['get_20information_20out_20of_20xml',['Get information out of XML',['../_example-3.html',1,'']]]
|
||||
['get_20information_20out_20of_20xml',['Get information out of XML',['../_example_3.html',1,'']]]
|
||||
];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
var searchData=
|
||||
[
|
||||
['load_20an_20xml_20file',['Load an XML File',['../_example-1.html',1,'']]]
|
||||
['load_20an_20xml_20file',['Load an XML File',['../_example_1.html',1,'']]]
|
||||
];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
var searchData=
|
||||
[
|
||||
['parse_20an_20xml_20from_20char_20buffer',['Parse an XML from char buffer',['../_example-2.html',1,'']]]
|
||||
['parse_20an_20xml_20from_20char_20buffer',['Parse an XML from char buffer',['../_example_2.html',1,'']]]
|
||||
];
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
var searchData=
|
||||
[
|
||||
['read_20attributes_20and_20text_20information_2e',['Read attributes and text information.',['../_example-4.html',1,'']]]
|
||||
['read_20attributes_20and_20text_20information_2e',['Read attributes and text information.',['../_example_4.html',1,'']]]
|
||||
];
|
||||
|
||||
File diff suppressed because one or more lines are too long
6
dox
6
dox
@@ -38,7 +38,11 @@ PROJECT_NAME = "TinyXML-2"
|
||||
# could be handy for archiving the generated documentation or if some version
|
||||
# control system is used.
|
||||
|
||||
PROJECT_NUMBER = 6.0.0
|
||||
<<<<<<< HEAD
|
||||
PROJECT_NUMBER = 6.2.0
|
||||
=======
|
||||
PROJECT_NUMBER = 6.2.0
|
||||
>>>>>>> master
|
||||
|
||||
# Using the PROJECT_BRIEF tag one can provide an optional one line description
|
||||
# for a project that appears at the top of each page and should give viewer a
|
||||
|
||||
95
premake5.lua
Normal file
95
premake5.lua
Normal file
@@ -0,0 +1,95 @@
|
||||
--
|
||||
-- Requires: Premake 5 (https://premake.github.io/)
|
||||
-- Usage: premake5 --file=premake5.lua [project / makefile format, refer to premake5 --help] --target=[target from below]
|
||||
--
|
||||
|
||||
-- target option
|
||||
tbl_target_values =
|
||||
{
|
||||
{ "windows", "VS2015 projects targeting Windows 32/64 bits" },
|
||||
{ "macosx", "Xcode4 projects targeting OS X" },
|
||||
}
|
||||
|
||||
newoption
|
||||
{
|
||||
trigger = "target",
|
||||
description = "Build environment and target to generate projects for.",
|
||||
allowed = tbl_target_values
|
||||
}
|
||||
|
||||
-- validation
|
||||
target_env = _OPTIONS["target"]
|
||||
if not target_env then
|
||||
print "Command-line option --target is required with one of the following values:"
|
||||
for _, v in ipairs(tbl_target_values) do
|
||||
print(v[1])
|
||||
end
|
||||
os.exit(1)
|
||||
end
|
||||
|
||||
-- solution
|
||||
workspace "tinyxml2"
|
||||
|
||||
tbl_platforms = {}
|
||||
if target_env == "windows" then
|
||||
tbl_platforms = {
|
||||
"x86",
|
||||
"x64",
|
||||
}
|
||||
elseif target_env == "macosx" then
|
||||
tbl_platforms = {
|
||||
"Universal64"
|
||||
}
|
||||
end
|
||||
platforms(tbl_platforms)
|
||||
|
||||
tbl_configurations = {
|
||||
"Debug",
|
||||
"Release",
|
||||
}
|
||||
configurations(tbl_configurations)
|
||||
|
||||
sln_location = ".projects/"..target_env
|
||||
location(sln_location)
|
||||
|
||||
bin_location = ".artifacts/"..target_env
|
||||
obj_location = ".intermediate/"..target_env
|
||||
|
||||
for _, p in ipairs(tbl_platforms) do
|
||||
for _, c in ipairs(tbl_configurations) do
|
||||
local pc = p.."-"..c
|
||||
filter{ "platforms:"..p, c }
|
||||
targetdir(bin_location.."/"..pc)
|
||||
libdirs(bin_location.."/"..pc)
|
||||
objdir(obj_location.."/"..pc)
|
||||
end
|
||||
end
|
||||
|
||||
filter("not Release")
|
||||
optimize "Debug"
|
||||
symbols "On"
|
||||
filter{ "Release" }
|
||||
optimize "Full"
|
||||
filter{}
|
||||
|
||||
-- projects
|
||||
project "tinyxml2"
|
||||
|
||||
kind "staticlib"
|
||||
|
||||
files {
|
||||
"tinyxml2.h",
|
||||
"tinyxml2.cpp"
|
||||
}
|
||||
|
||||
project "xmltest"
|
||||
|
||||
kind "consoleapp"
|
||||
|
||||
links {
|
||||
"tinyxml2"
|
||||
}
|
||||
|
||||
files {
|
||||
"xmltest.cpp"
|
||||
}
|
||||
1
resources/xmltest-4636783552757760.xml
Normal file
1
resources/xmltest-4636783552757760.xml
Normal file
File diff suppressed because one or more lines are too long
1
resources/xmltest-5330.xml
Normal file
1
resources/xmltest-5330.xml
Normal file
File diff suppressed because one or more lines are too long
1
resources/xmltest-5720541257269248.xml
Normal file
1
resources/xmltest-5720541257269248.xml
Normal file
File diff suppressed because one or more lines are too long
@@ -67,6 +67,28 @@ def engineRule( line ):
|
||||
|
||||
fileProcess( "tinyxml2.h", engineRule )
|
||||
|
||||
def macroVersionRule( line ):
|
||||
|
||||
matchMajor = "#define TINYXML2_MAJOR_VERSION"
|
||||
matchMinor = "#define TINYXML2_MINOR_VERSION"
|
||||
matchBuild = "#define TINYXML2_PATCH_VERSION"
|
||||
|
||||
if line[0:len(matchMajor)] == matchMajor:
|
||||
print( "1)macro Major found" )
|
||||
return matchMajor + " " + major + "\n"
|
||||
|
||||
elif line[0:len(matchMinor)] == matchMinor:
|
||||
print( "2)macro Minor found" )
|
||||
return matchMinor + " " + minor + "\n"
|
||||
|
||||
elif line[0:len(matchBuild)] == matchBuild:
|
||||
print( "3)macro Build found" )
|
||||
return matchBuild + " " + build + "\n"
|
||||
|
||||
else:
|
||||
return line;
|
||||
|
||||
fileProcess("tinyxml2.h", macroVersionRule)
|
||||
|
||||
#### Write the dox ####
|
||||
|
||||
@@ -113,7 +135,7 @@ def cmakeRule2( line ):
|
||||
fileProcess( "CMakeLists.txt", cmakeRule2 )
|
||||
|
||||
print( "Release note:" )
|
||||
print( '1. Build. g++ -Wall -DDEBUG tinyxml2.cpp xmltest.cpp -o gccxmltest.exe' )
|
||||
print( '1. Build. g++ -Wall -DTINYXML2_DEBUG tinyxml2.cpp xmltest.cpp -o gccxmltest.exe' )
|
||||
print( '2. Commit. git commit -am"setting the version to ' + versionStr + '"' )
|
||||
print( '3. Tag. git tag ' + versionStr )
|
||||
print( ' OR git tag -a ' + versionStr + ' -m [tag message]' )
|
||||
|
||||
105
tinyxml2.cpp
105
tinyxml2.cpp
@@ -760,7 +760,7 @@ XMLNode::~XMLNode()
|
||||
}
|
||||
}
|
||||
|
||||
const char* XMLNode::Value() const
|
||||
const char* XMLNode::Value() const
|
||||
{
|
||||
// Edge case: XMLDocuments don't have a Value. Return null.
|
||||
if ( this->ToDocument() )
|
||||
@@ -1004,7 +1004,11 @@ char* XMLNode::ParseDeep( char* p, StrPair* parentEndTag, int* curLineNumPtr )
|
||||
// 'endTag' is the end tag for this node, it is returned by a call to a child.
|
||||
// 'parentEnd' is the end tag for the parent, which is filled in and returned.
|
||||
|
||||
while( p && *p ) {
|
||||
XMLDocument::DepthTracker tracker(_document);
|
||||
if (_document->Error())
|
||||
return 0;
|
||||
|
||||
while( p && *p ) {
|
||||
XMLNode* node = 0;
|
||||
|
||||
p = _document->Identify( p, &node );
|
||||
@@ -1329,12 +1333,12 @@ bool XMLUnknown::Accept( XMLVisitor* visitor ) const
|
||||
|
||||
// --------- XMLAttribute ---------- //
|
||||
|
||||
const char* XMLAttribute::Name() const
|
||||
const char* XMLAttribute::Name() const
|
||||
{
|
||||
return _name.GetStr();
|
||||
}
|
||||
|
||||
const char* XMLAttribute::Value() const
|
||||
const char* XMLAttribute::Value() const
|
||||
{
|
||||
return _value.GetStr();
|
||||
}
|
||||
@@ -1521,42 +1525,42 @@ const char* XMLElement::Attribute( const char* name, const char* value ) const
|
||||
return 0;
|
||||
}
|
||||
|
||||
int XMLElement::IntAttribute(const char* name, int defaultValue) const
|
||||
int XMLElement::IntAttribute(const char* name, int defaultValue) const
|
||||
{
|
||||
int i = defaultValue;
|
||||
QueryIntAttribute(name, &i);
|
||||
return i;
|
||||
}
|
||||
|
||||
unsigned XMLElement::UnsignedAttribute(const char* name, unsigned defaultValue) const
|
||||
unsigned XMLElement::UnsignedAttribute(const char* name, unsigned defaultValue) const
|
||||
{
|
||||
unsigned i = defaultValue;
|
||||
QueryUnsignedAttribute(name, &i);
|
||||
return i;
|
||||
}
|
||||
|
||||
int64_t XMLElement::Int64Attribute(const char* name, int64_t defaultValue) const
|
||||
int64_t XMLElement::Int64Attribute(const char* name, int64_t defaultValue) const
|
||||
{
|
||||
int64_t i = defaultValue;
|
||||
QueryInt64Attribute(name, &i);
|
||||
return i;
|
||||
}
|
||||
|
||||
bool XMLElement::BoolAttribute(const char* name, bool defaultValue) const
|
||||
bool XMLElement::BoolAttribute(const char* name, bool defaultValue) const
|
||||
{
|
||||
bool b = defaultValue;
|
||||
QueryBoolAttribute(name, &b);
|
||||
return b;
|
||||
}
|
||||
|
||||
double XMLElement::DoubleAttribute(const char* name, double defaultValue) const
|
||||
double XMLElement::DoubleAttribute(const char* name, double defaultValue) const
|
||||
{
|
||||
double d = defaultValue;
|
||||
QueryDoubleAttribute(name, &d);
|
||||
return d;
|
||||
}
|
||||
|
||||
float XMLElement::FloatAttribute(const char* name, float defaultValue) const
|
||||
float XMLElement::FloatAttribute(const char* name, float defaultValue) const
|
||||
{
|
||||
float f = defaultValue;
|
||||
QueryFloatAttribute(name, &f);
|
||||
@@ -1583,7 +1587,7 @@ void XMLElement::SetText( const char* inText )
|
||||
}
|
||||
|
||||
|
||||
void XMLElement::SetText( int v )
|
||||
void XMLElement::SetText( int v )
|
||||
{
|
||||
char buf[BUF_SIZE];
|
||||
XMLUtil::ToStr( v, buf, BUF_SIZE );
|
||||
@@ -1591,7 +1595,7 @@ void XMLElement::SetText( int v )
|
||||
}
|
||||
|
||||
|
||||
void XMLElement::SetText( unsigned v )
|
||||
void XMLElement::SetText( unsigned v )
|
||||
{
|
||||
char buf[BUF_SIZE];
|
||||
XMLUtil::ToStr( v, buf, BUF_SIZE );
|
||||
@@ -1615,7 +1619,7 @@ void XMLElement::SetText( bool v )
|
||||
}
|
||||
|
||||
|
||||
void XMLElement::SetText( float v )
|
||||
void XMLElement::SetText( float v )
|
||||
{
|
||||
char buf[BUF_SIZE];
|
||||
XMLUtil::ToStr( v, buf, BUF_SIZE );
|
||||
@@ -1623,7 +1627,7 @@ void XMLElement::SetText( float v )
|
||||
}
|
||||
|
||||
|
||||
void XMLElement::SetText( double v )
|
||||
void XMLElement::SetText( double v )
|
||||
{
|
||||
char buf[BUF_SIZE];
|
||||
XMLUtil::ToStr( v, buf, BUF_SIZE );
|
||||
@@ -1986,7 +1990,8 @@ const char* XMLDocument::_errorNames[XML_ERROR_COUNT] = {
|
||||
"XML_ERROR_MISMATCHED_ELEMENT",
|
||||
"XML_ERROR_PARSING",
|
||||
"XML_CAN_NOT_CONVERT_TEXT",
|
||||
"XML_NO_TEXT_NODE"
|
||||
"XML_NO_TEXT_NODE",
|
||||
"XML_ELEMENT_DEPTH_EXCEEDED"
|
||||
};
|
||||
|
||||
|
||||
@@ -2000,6 +2005,7 @@ XMLDocument::XMLDocument( bool processEntities, Whitespace whitespaceMode ) :
|
||||
_errorLineNum( 0 ),
|
||||
_charBuffer( 0 ),
|
||||
_parseCurLineNum( 0 ),
|
||||
_parsingDepth(0),
|
||||
_unlinked(),
|
||||
_elementPool(),
|
||||
_attributePool(),
|
||||
@@ -2037,13 +2043,14 @@ void XMLDocument::Clear()
|
||||
DeleteNode(_unlinked[0]); // Will remove from _unlinked as part of delete.
|
||||
}
|
||||
|
||||
#ifdef DEBUG
|
||||
#ifdef TINYXML2_DEBUG
|
||||
const bool hadError = Error();
|
||||
#endif
|
||||
ClearError();
|
||||
|
||||
delete [] _charBuffer;
|
||||
_charBuffer = 0;
|
||||
_parsingDepth = 0;
|
||||
|
||||
#if 0
|
||||
_textPool.Trace( "text" );
|
||||
@@ -2051,8 +2058,8 @@ void XMLDocument::Clear()
|
||||
_commentPool.Trace( "comment" );
|
||||
_attributePool.Trace( "attribute" );
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG
|
||||
|
||||
#ifdef TINYXML2_DEBUG
|
||||
if ( !hadError ) {
|
||||
TIXMLASSERT( _elementPool.CurrentAllocs() == _elementPool.Untracked() );
|
||||
TIXMLASSERT( _attributePool.CurrentAllocs() == _attributePool.Untracked() );
|
||||
@@ -2130,7 +2137,7 @@ static FILE* callfopen( const char* filepath, const char* mode )
|
||||
#endif
|
||||
return fp;
|
||||
}
|
||||
|
||||
|
||||
void XMLDocument::DeleteNode( XMLNode* node ) {
|
||||
TIXMLASSERT( node );
|
||||
TIXMLASSERT(node->_document == this );
|
||||
@@ -2151,10 +2158,16 @@ void XMLDocument::DeleteNode( XMLNode* node ) {
|
||||
|
||||
XMLError XMLDocument::LoadFile( const char* filename )
|
||||
{
|
||||
if ( !filename ) {
|
||||
TIXMLASSERT( false );
|
||||
SetError( XML_ERROR_FILE_COULD_NOT_BE_OPENED, 0, "filename=<null>" );
|
||||
return _errorID;
|
||||
}
|
||||
|
||||
Clear();
|
||||
FILE* fp = callfopen( filename, "rb" );
|
||||
if ( !fp ) {
|
||||
SetError( XML_ERROR_FILE_NOT_FOUND, 0, "filename=%s", filename ? filename : "<null>");
|
||||
SetError( XML_ERROR_FILE_NOT_FOUND, 0, "filename=%s", filename );
|
||||
return _errorID;
|
||||
}
|
||||
LoadFile( fp );
|
||||
@@ -2233,9 +2246,15 @@ XMLError XMLDocument::LoadFile( FILE* fp )
|
||||
|
||||
XMLError XMLDocument::SaveFile( const char* filename, bool compact )
|
||||
{
|
||||
if ( !filename ) {
|
||||
TIXMLASSERT( false );
|
||||
SetError( XML_ERROR_FILE_COULD_NOT_BE_OPENED, 0, "filename=<null>" );
|
||||
return _errorID;
|
||||
}
|
||||
|
||||
FILE* fp = callfopen( filename, "w" );
|
||||
if ( !fp ) {
|
||||
SetError( XML_ERROR_FILE_COULD_NOT_BE_OPENED, 0, "filename=%s", filename ? filename : "<null>");
|
||||
SetError( XML_ERROR_FILE_COULD_NOT_BE_OPENED, 0, "filename=%s", filename );
|
||||
return _errorID;
|
||||
}
|
||||
SaveFile(fp, compact);
|
||||
@@ -2305,20 +2324,23 @@ void XMLDocument::SetError( XMLError error, int lineNum, const char* format, ...
|
||||
_errorLineNum = lineNum;
|
||||
_errorStr.Reset();
|
||||
|
||||
if (format) {
|
||||
size_t BUFFER_SIZE = 1000;
|
||||
char* buffer = new char[BUFFER_SIZE];
|
||||
TIXML_SNPRINTF(buffer, BUFFER_SIZE, "Error=%s ErrorID=%d (0x%x) Line number=%d: ", ErrorIDToName(error), int(error), int(error), lineNum);
|
||||
size_t len = strlen(buffer);
|
||||
size_t BUFFER_SIZE = 1000;
|
||||
char* buffer = new char[BUFFER_SIZE];
|
||||
|
||||
va_list va;
|
||||
va_start( va, format );
|
||||
TIXML_VSNPRINTF( buffer + len, BUFFER_SIZE - len, format, va );
|
||||
va_end( va );
|
||||
TIXML_SNPRINTF(buffer, BUFFER_SIZE, "Error=%s ErrorID=%d (0x%x) Line number=%d", ErrorIDToName(error), int(error), int(error), lineNum);
|
||||
|
||||
_errorStr.SetStr(buffer);
|
||||
delete [] buffer;
|
||||
}
|
||||
if (format) {
|
||||
size_t len = strlen(buffer);
|
||||
TIXML_SNPRINTF(buffer + len, BUFFER_SIZE - len, ": ");
|
||||
len = strlen(buffer);
|
||||
|
||||
va_list va;
|
||||
va_start(va, format);
|
||||
TIXML_VSNPRINTF(buffer + len, BUFFER_SIZE - len, format, va);
|
||||
va_end(va);
|
||||
}
|
||||
_errorStr.SetStr(buffer);
|
||||
delete[] buffer;
|
||||
}
|
||||
|
||||
|
||||
@@ -2330,7 +2352,7 @@ void XMLDocument::SetError( XMLError error, int lineNum, const char* format, ...
|
||||
return errorName;
|
||||
}
|
||||
|
||||
const char* XMLDocument::ErrorStr() const
|
||||
const char* XMLDocument::ErrorStr() const
|
||||
{
|
||||
return _errorStr.Empty() ? "" : _errorStr.GetStr();
|
||||
}
|
||||
@@ -2362,6 +2384,20 @@ void XMLDocument::Parse()
|
||||
ParseDeep(p, 0, &_parseCurLineNum );
|
||||
}
|
||||
|
||||
void XMLDocument::PushDepth()
|
||||
{
|
||||
_parsingDepth++;
|
||||
if (_parsingDepth == TINYXML2_MAX_ELEMENT_DEPTH) {
|
||||
SetError(XML_ELEMENT_DEPTH_EXCEEDED, _parseCurLineNum, "Element nesting is too deep." );
|
||||
}
|
||||
}
|
||||
|
||||
void XMLDocument::PopDepth()
|
||||
{
|
||||
TIXMLASSERT(_parsingDepth > 0);
|
||||
--_parsingDepth;
|
||||
}
|
||||
|
||||
XMLPrinter::XMLPrinter( FILE* file, bool compact, int depth ) :
|
||||
_elementJustOpened( false ),
|
||||
_stack(),
|
||||
@@ -2788,4 +2824,3 @@ bool XMLPrinter::Visit( const XMLUnknown& unknown )
|
||||
}
|
||||
|
||||
} // namespace tinyxml2
|
||||
|
||||
|
||||
56
tinyxml2.h
56
tinyxml2.h
@@ -47,15 +47,15 @@ distribution.
|
||||
*/
|
||||
/*
|
||||
gcc:
|
||||
g++ -Wall -DDEBUG tinyxml2.cpp xmltest.cpp -o gccxmltest.exe
|
||||
g++ -Wall -DTINYXML2_DEBUG tinyxml2.cpp xmltest.cpp -o gccxmltest.exe
|
||||
|
||||
Formatting, Artistic Style:
|
||||
AStyle.exe --style=1tbs --indent-switches --break-closing-brackets --indent-preprocessor tinyxml2.cpp tinyxml2.h
|
||||
*/
|
||||
|
||||
#if defined( _DEBUG ) || defined (__DEBUG__)
|
||||
# ifndef DEBUG
|
||||
# define DEBUG
|
||||
# ifndef TINYXML2_DEBUG
|
||||
# define TINYXML2_DEBUG
|
||||
# endif
|
||||
#endif
|
||||
|
||||
@@ -79,7 +79,7 @@ distribution.
|
||||
#endif
|
||||
|
||||
|
||||
#if defined(DEBUG)
|
||||
#if defined(TINYXML2_DEBUG)
|
||||
# if defined(_MSC_VER)
|
||||
# // "(void)0," is for suppressing C4127 warning in "assert(false)", "assert(true)" and the like
|
||||
# define TIXMLASSERT( x ) if ( !((void)0,(x))) { __debugbreak(); }
|
||||
@@ -99,9 +99,20 @@ distribution.
|
||||
http://semver.org/
|
||||
*/
|
||||
static const int TIXML2_MAJOR_VERSION = 6;
|
||||
static const int TIXML2_MINOR_VERSION = 0;
|
||||
static const int TIXML2_MINOR_VERSION = 2;
|
||||
static const int TIXML2_PATCH_VERSION = 0;
|
||||
|
||||
#define TINYXML2_MAJOR_VERSION 6
|
||||
#define TINYXML2_MINOR_VERSION 2
|
||||
#define TINYXML2_PATCH_VERSION 0
|
||||
|
||||
// A fixed element depth limit is problematic. There needs to be a
|
||||
// limit to avoid a stack overflow. However, that limit varies per
|
||||
// system, and the capacity of the stack. On the other hand, it's a trivial
|
||||
// attack that can result from ill, malicious, or even correctly formed XML,
|
||||
// so there needs to be a limit in place.
|
||||
static const int TINYXML2_MAX_ELEMENT_DEPTH = 100;
|
||||
|
||||
namespace tinyxml2
|
||||
{
|
||||
class XMLDocument;
|
||||
@@ -391,7 +402,7 @@ public:
|
||||
}
|
||||
--_currentAllocs;
|
||||
Item* item = static_cast<Item*>( mem );
|
||||
#ifdef DEBUG
|
||||
#ifdef TINYXML2_DEBUG
|
||||
memset( item, 0xfe, sizeof( *item ) );
|
||||
#endif
|
||||
item->next = _root;
|
||||
@@ -528,6 +539,7 @@ enum XMLError {
|
||||
XML_ERROR_PARSING,
|
||||
XML_CAN_NOT_CONVERT_TEXT,
|
||||
XML_NO_TEXT_NODE,
|
||||
XML_ELEMENT_DEPTH_EXCEEDED,
|
||||
|
||||
XML_ERROR_COUNT
|
||||
};
|
||||
@@ -1361,6 +1373,17 @@ public:
|
||||
return a->QueryFloatValue( value );
|
||||
}
|
||||
|
||||
/// See QueryIntAttribute()
|
||||
XMLError QueryStringAttribute(const char* name, const char** value) const {
|
||||
const XMLAttribute* a = FindAttribute(name);
|
||||
if (!a) {
|
||||
return XML_NO_ATTRIBUTE;
|
||||
}
|
||||
*value = a->Value();
|
||||
return XML_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/** Given an attribute name, QueryAttribute() returns
|
||||
XML_SUCCESS, XML_WRONG_ATTRIBUTE_TYPE if the conversion
|
||||
@@ -1635,7 +1658,7 @@ enum Whitespace {
|
||||
class TINYXML2_LIB XMLDocument : public XMLNode
|
||||
{
|
||||
friend class XMLElement;
|
||||
// Gives access to SetError, but over-access for everything else.
|
||||
// Gives access to SetError and Push/PopDepth, but over-access for everything else.
|
||||
// Wishing C++ had "internal" scope.
|
||||
friend class XMLNode;
|
||||
friend class XMLText;
|
||||
@@ -1859,6 +1882,7 @@ private:
|
||||
int _errorLineNum;
|
||||
char* _charBuffer;
|
||||
int _parseCurLineNum;
|
||||
int _parsingDepth;
|
||||
// Memory tracking does add some overhead.
|
||||
// However, the code assumes that you don't
|
||||
// have a bunch of unlinked nodes around.
|
||||
@@ -1878,6 +1902,24 @@ private:
|
||||
|
||||
void SetError( XMLError error, int lineNum, const char* format, ... );
|
||||
|
||||
// Something of an obvious security hole, once it was discovered.
|
||||
// Either an ill-formed XML or an excessively deep one can overflow
|
||||
// the stack. Track stack depth, and error out if needed.
|
||||
class DepthTracker {
|
||||
public:
|
||||
DepthTracker(XMLDocument * document) {
|
||||
this->_document = document;
|
||||
document->PushDepth();
|
||||
}
|
||||
~DepthTracker() {
|
||||
_document->PopDepth();
|
||||
}
|
||||
private:
|
||||
XMLDocument * _document;
|
||||
};
|
||||
void PushDepth();
|
||||
void PopDepth();
|
||||
|
||||
template<class NodeType, int PoolElementSize>
|
||||
NodeType* CreateUnlinkedNode( MemPoolT<PoolElementSize>& pool );
|
||||
};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug-Dll|Win32">
|
||||
<Configuration>Debug-Dll</Configuration>
|
||||
@@ -37,60 +37,60 @@
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{E8FB2712-8666-4662-A5B8-2B5B0FB1A260}</ProjectGuid>
|
||||
<RootNamespace>test</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-Lib|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-Lib|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-Dll|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-Dll|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Lib|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Lib|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Dll|Win32'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Dll|x64'" Label="Configuration">
|
||||
<ConfigurationType>Application</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug-Dll|Win32">
|
||||
<Configuration>Debug-Dll</Configuration>
|
||||
@@ -38,60 +38,60 @@
|
||||
<ProjectGuid>{D1C528B6-AA02-4D29-9D61-DC08E317A70D}</ProjectGuid>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
<RootNamespace>tinyxml2</RootNamespace>
|
||||
<WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
|
||||
<WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-Lib|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-Dll|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-Lib|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-Dll|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>true</UseDebugLibraries>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Lib|Win32'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Dll|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Lib|x64'" Label="Configuration">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-Dll|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<UseDebugLibraries>false</UseDebugLibraries>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<CharacterSet>Unicode</CharacterSet>
|
||||
<PlatformToolset>v140</PlatformToolset>
|
||||
<PlatformToolset>v141</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Label="Configuration" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
|
||||
@@ -137,7 +137,7 @@
|
||||
buildSettings = {
|
||||
CONFIGURATION_BUILD_DIR = "$(SYMROOT)/Debug";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
"GCC_PREPROCESSOR_DEFINITIONS[arch=*]" = DEBUG;
|
||||
"GCC_PREPROCESSOR_DEFINITIONS[arch=*]" = TINYXML2_DEBUG;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SYMROOT = build;
|
||||
};
|
||||
|
||||
115
xmltest.cpp
115
xmltest.cpp
@@ -112,7 +112,7 @@ int example_1()
|
||||
|
||||
return doc.ErrorID();
|
||||
}
|
||||
/** @page Example-1 Load an XML File
|
||||
/** @page Example_1 Load an XML File
|
||||
* @dontinclude ./xmltest.cpp
|
||||
* Basic XML file loading.
|
||||
* The basic syntax to load an XML file from
|
||||
@@ -131,7 +131,7 @@ int example_2()
|
||||
|
||||
return doc.ErrorID();
|
||||
}
|
||||
/** @page Example-2 Parse an XML from char buffer
|
||||
/** @page Example_2 Parse an XML from char buffer
|
||||
* @dontinclude ./xmltest.cpp
|
||||
* Basic XML string parsing.
|
||||
* The basic syntax to parse an XML for
|
||||
@@ -164,7 +164,7 @@ int example_3()
|
||||
|
||||
return doc.ErrorID();
|
||||
}
|
||||
/** @page Example-3 Get information out of XML
|
||||
/** @page Example_3 Get information out of XML
|
||||
@dontinclude ./xmltest.cpp
|
||||
In this example, we navigate a simple XML
|
||||
file, and read some interesting text. Note
|
||||
@@ -255,7 +255,7 @@ bool example_4()
|
||||
|
||||
return !doc.Error() && ( v0 == v1 );
|
||||
}
|
||||
/** @page Example-4 Read attributes and text information.
|
||||
/** @page Example_4 Read attributes and text information.
|
||||
@dontinclude ./xmltest.cpp
|
||||
|
||||
There are fundamentally 2 ways of writing a key-value
|
||||
@@ -292,7 +292,7 @@ bool example_4()
|
||||
|
||||
int main( int argc, const char ** argv )
|
||||
{
|
||||
#if defined( _MSC_VER ) && defined( DEBUG )
|
||||
#if defined( _MSC_VER ) && defined( TINYXML2_DEBUG )
|
||||
_CrtMemCheckpoint( &startMemState );
|
||||
// Enable MS Visual C++ debug heap memory leaks dump on exit
|
||||
_CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF);
|
||||
@@ -338,10 +338,10 @@ int main( int argc, const char ** argv )
|
||||
}
|
||||
fclose( fp );
|
||||
|
||||
XMLTest( "Example-1", 0, example_1() );
|
||||
XMLTest( "Example-2", 0, example_2() );
|
||||
XMLTest( "Example-3", 0, example_3() );
|
||||
XMLTest( "Example-4", true, example_4() );
|
||||
XMLTest( "Example_1", 0, example_1() );
|
||||
XMLTest( "Example_2", 0, example_2() );
|
||||
XMLTest( "Example_3", 0, example_3() );
|
||||
XMLTest( "Example_4", true, example_4() );
|
||||
|
||||
/* ------ Example 2: Lookup information. ---- */
|
||||
|
||||
@@ -535,7 +535,7 @@ int main( int argc, const char ** argv )
|
||||
|
||||
XMLTest( "Dream", "xml version=\"1.0\"",
|
||||
doc.FirstChild()->ToDeclaration()->Value() );
|
||||
XMLTest( "Dream", true, doc.FirstChild()->NextSibling()->ToUnknown() ? true : false );
|
||||
XMLTest( "Dream", true, doc.FirstChild()->NextSibling()->ToUnknown() != 0 );
|
||||
XMLTest( "Dream", "DOCTYPE PLAY SYSTEM \"play.dtd\"",
|
||||
doc.FirstChild()->NextSibling()->ToUnknown()->Value() );
|
||||
XMLTest( "Dream", "And Robin shall restore amends.",
|
||||
@@ -548,7 +548,7 @@ int main( int argc, const char ** argv )
|
||||
XMLTest( "Load dreamout.xml", false, doc2.Error() );
|
||||
XMLTest( "Dream-out", "xml version=\"1.0\"",
|
||||
doc2.FirstChild()->ToDeclaration()->Value() );
|
||||
XMLTest( "Dream-out", true, doc2.FirstChild()->NextSibling()->ToUnknown() ? true : false );
|
||||
XMLTest( "Dream-out", true, doc2.FirstChild()->NextSibling()->ToUnknown() != 0 );
|
||||
XMLTest( "Dream-out", "DOCTYPE PLAY SYSTEM \"play.dtd\"",
|
||||
doc2.FirstChild()->NextSibling()->ToUnknown()->Value() );
|
||||
XMLTest( "Dream-out", "And Robin shall restore amends.",
|
||||
@@ -567,6 +567,10 @@ int main( int argc, const char ** argv )
|
||||
XMLDocument doc;
|
||||
doc.Parse( error );
|
||||
XMLTest( "Bad XML", XML_ERROR_PARSING_ATTRIBUTE, doc.ErrorID() );
|
||||
const char* errorStr = doc.ErrorStr();
|
||||
XMLTest("Formatted error string",
|
||||
"Error=XML_ERROR_PARSING_ATTRIBUTE ErrorID=8 (0x8) Line number=3: XMLElement name=wrong",
|
||||
errorStr);
|
||||
}
|
||||
|
||||
{
|
||||
@@ -827,6 +831,14 @@ int main( int argc, const char ** argv )
|
||||
XMLTest("Attribute: unsigned", (int)XML_SUCCESS, queryResult, true);
|
||||
XMLTest("Attribute: unsigned", unsigned(100), v, true);
|
||||
}
|
||||
{
|
||||
const char* v = "failed";
|
||||
XMLError queryResult = element->QueryStringAttribute("not-attrib", &v);
|
||||
XMLTest("Attribute: string default", false, queryResult == XML_SUCCESS);
|
||||
queryResult = element->QueryStringAttribute("attrib", &v);
|
||||
XMLTest("Attribute: string", XML_SUCCESS, queryResult, true);
|
||||
XMLTest("Attribute: string", "100", v);
|
||||
}
|
||||
XMLTest("Attribute: unsigned", unsigned(100), element->UnsignedAttribute("attrib"), true);
|
||||
}
|
||||
{
|
||||
@@ -1160,6 +1172,12 @@ int main( int argc, const char ** argv )
|
||||
XMLDocument doc;
|
||||
doc.Parse( str );
|
||||
XMLTest( "Empty document error", XML_ERROR_EMPTY_DOCUMENT, doc.ErrorID() );
|
||||
|
||||
// But be sure there is an error string!
|
||||
const char* errorStr = doc.ErrorStr();
|
||||
XMLTest("Error string should be set",
|
||||
"Error=XML_ERROR_EMPTY_DOCUMENT ErrorID=15 (0xf) Line number=0",
|
||||
errorStr);
|
||||
}
|
||||
|
||||
{
|
||||
@@ -1452,28 +1470,31 @@ int main( int argc, const char ** argv )
|
||||
static const char* xml = "<element attrib='bar'><sub>Text</sub></element>";
|
||||
XMLDocument doc;
|
||||
doc.Parse( xml );
|
||||
XMLTest( "Parse element with attribute and nested element round 1", false, doc.Error() );
|
||||
XMLTest( "Handle, parse element with attribute and nested element", false, doc.Error() );
|
||||
|
||||
XMLElement* ele = XMLHandle( doc ).FirstChildElement( "element" ).FirstChild().ToElement();
|
||||
XMLTest( "Handle, success, mutable", "sub", ele->Value() );
|
||||
{
|
||||
XMLElement* ele = XMLHandle( doc ).FirstChildElement( "element" ).FirstChild().ToElement();
|
||||
XMLTest( "Handle, non-const, element is found", true, ele != 0 );
|
||||
XMLTest( "Handle, non-const, element name matches", "sub", ele->Value() );
|
||||
}
|
||||
|
||||
XMLHandle docH( doc );
|
||||
ele = docH.FirstChildElement( "none" ).FirstChildElement( "element" ).ToElement();
|
||||
XMLTest( "Handle, dne, mutable", true, ele == 0 );
|
||||
}
|
||||
{
|
||||
XMLHandle docH( doc );
|
||||
XMLElement* ele = docH.FirstChildElement( "noSuchElement" ).FirstChildElement( "element" ).ToElement();
|
||||
XMLTest( "Handle, non-const, element not found", true, ele == 0 );
|
||||
}
|
||||
|
||||
{
|
||||
static const char* xml = "<element attrib='bar'><sub>Text</sub></element>";
|
||||
XMLDocument doc;
|
||||
doc.Parse( xml );
|
||||
XMLTest( "Parse element with attribute and nested element round 2", false, doc.Error() );
|
||||
XMLConstHandle docH( doc );
|
||||
{
|
||||
const XMLElement* ele = XMLConstHandle( doc ).FirstChildElement( "element" ).FirstChild().ToElement();
|
||||
XMLTest( "Handle, const, element is found", true, ele != 0 );
|
||||
XMLTest( "Handle, const, element name matches", "sub", ele->Value() );
|
||||
}
|
||||
|
||||
const XMLElement* ele = docH.FirstChildElement( "element" ).FirstChild().ToElement();
|
||||
XMLTest( "Handle, success, const", "sub", ele->Value() );
|
||||
|
||||
ele = docH.FirstChildElement( "none" ).FirstChildElement( "element" ).ToElement();
|
||||
XMLTest( "Handle, dne, const", true, ele == 0 );
|
||||
{
|
||||
XMLConstHandle docH( doc );
|
||||
const XMLElement* ele = docH.FirstChildElement( "noSuchElement" ).FirstChildElement( "element" ).ToElement();
|
||||
XMLTest( "Handle, const, element not found", true, ele == 0 );
|
||||
}
|
||||
}
|
||||
{
|
||||
// Default Declaration & BOM
|
||||
@@ -1843,7 +1864,7 @@ int main( int argc, const char ** argv )
|
||||
}
|
||||
|
||||
{
|
||||
// If this doesn't assert in DEBUG, all is well.
|
||||
// If this doesn't assert in TINYXML2_DEBUG, all is well.
|
||||
tinyxml2::XMLDocument doc;
|
||||
tinyxml2::XMLElement *pRoot = doc.NewElement("Root");
|
||||
doc.DeleteNode(pRoot);
|
||||
@@ -1858,7 +1879,7 @@ int main( int argc, const char ** argv )
|
||||
}
|
||||
|
||||
{
|
||||
// If this doesn't assert in DEBUG, all is well.
|
||||
// If this doesn't assert in TINYXML2_DEBUG, all is well.
|
||||
XMLDocument doc;
|
||||
XMLElement* unlinkedRoot = doc.NewElement( "Root" );
|
||||
XMLElement* linkedRoot = doc.NewElement( "Root" );
|
||||
@@ -1868,7 +1889,7 @@ int main( int argc, const char ** argv )
|
||||
}
|
||||
|
||||
{
|
||||
// Should not assert in DEBUG
|
||||
// Should not assert in TINYXML2_DEBUG
|
||||
XMLPrinter printer;
|
||||
}
|
||||
|
||||
@@ -1936,7 +1957,7 @@ int main( int argc, const char ** argv )
|
||||
doc.Parse(xml1);
|
||||
XMLTest("Test that the second declaration is allowed", false, doc.Error() );
|
||||
doc.Parse(xml2);
|
||||
XMLTest("Test that declaration after a child is not allowed", XML_ERROR_PARSING_DECLARATION, doc.ErrorID() );
|
||||
XMLTest("Test that declaration after self-closed child is not allowed", XML_ERROR_PARSING_DECLARATION, doc.ErrorID() );
|
||||
doc.Parse(xml3);
|
||||
XMLTest("Test that declaration after a child is not allowed", XML_ERROR_PARSING_DECLARATION, doc.ErrorID() );
|
||||
doc.Parse(xml4);
|
||||
@@ -1963,8 +1984,14 @@ int main( int argc, const char ** argv )
|
||||
for( int i = 0; i < XML_ERROR_COUNT; i++ ) {
|
||||
const XMLError error = static_cast<XMLError>(i);
|
||||
const char* name = XMLDocument::ErrorIDToName(error);
|
||||
XMLTest( "ErrorName() after ClearError()", true, name != 0 );
|
||||
XMLTest( "ErrorName() after ClearError()", true, strlen(name) > 0 );
|
||||
XMLTest( "ErrorName() not null after ClearError()", true, name != 0 );
|
||||
if( name == 0 ) {
|
||||
// passing null pointer into strlen() is undefined behavior, so
|
||||
// compiler is allowed to optimise away the null test above if it's
|
||||
// as reachable as the strlen() call
|
||||
continue;
|
||||
}
|
||||
XMLTest( "ErrorName() not empty after ClearError()", true, strlen(name) > 0 );
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1998,6 +2025,20 @@ int main( int argc, const char ** argv )
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
// Bad bad crash. Parsing error results in stack overflow, if uncaught.
|
||||
const char* TESTS[] = {
|
||||
"./resources/xmltest-5330.xml",
|
||||
"./resources/xmltest-4636783552757760.xml",
|
||||
"./resources/xmltest-5720541257269248.xml",
|
||||
0
|
||||
};
|
||||
for (int i=0; TESTS[i]; ++i) {
|
||||
XMLDocument doc;
|
||||
doc.LoadFile(TESTS[i]);
|
||||
XMLTest("Stack overflow prevented.", XML_ELEMENT_DEPTH_EXCEEDED, doc.ErrorID());
|
||||
}
|
||||
}
|
||||
{
|
||||
// Crashing reported via email.
|
||||
const char* xml =
|
||||
@@ -2248,7 +2289,7 @@ int main( int argc, const char ** argv )
|
||||
delete[] mem;
|
||||
|
||||
static const char* note =
|
||||
#ifdef DEBUG
|
||||
#ifdef TINYXML2_DEBUG
|
||||
"DEBUG";
|
||||
#else
|
||||
"Release";
|
||||
@@ -2262,7 +2303,7 @@ int main( int argc, const char ** argv )
|
||||
printf("\nParsing dream.xml (%s): %.3f milli-seconds\n", note, duration);
|
||||
}
|
||||
|
||||
#if defined( _MSC_VER ) && defined( DEBUG )
|
||||
#if defined( _MSC_VER ) && defined( TINYXML2_DEBUG )
|
||||
{
|
||||
_CrtMemCheckpoint( &endMemState );
|
||||
|
||||
|
||||
Reference in New Issue
Block a user