changelog

来自「c语言编写的xml解析器可以方便的遍历插入删除节点等操作的」· 代码 · 共 1,078 行 · 第 1/3 页

TXT
1,078
字号
	* NEWS: updated with changes since 0.16 version.	2002-12-10  Christophe de Vienne <cdevienne@alphacent.com>	* libxml++/node.cc: fixed write() which was using the accessors content()	and has_content(). Since they return something for both the text	node and the parent node, the output was weird.2002-12-09  Murray Cumming  <murrayc@usa.net>	* libxml++/node.cc: content(): If the cached content string is empty, 	try to get the content of a child "text" node. This makes content()	work as expected after creating a document with set_content() and 	later reparsing it.2002-12-09  Murray Cumming  <murrayc@usa.net>	* libxml++/parsers/dom_parser.cc (release_underlying): Set pointers	to 0 so that the get_*() methods generate new instances instead of	returning invalid pointers.2002-12-09  Murray Cumming  <murrayc@usa.net>	* libxml++/node.cc: Node::remove_child() and Node::remove_attribute:	delete the objects when forgetting about them.	* libxml++/node.h: Added reference docs explaining the above.2002-12-07  Murray Cumming  <murrayc@usa.net>	* libxml++/parsers/domparser.cc, saxparser.cc: Added comments about 	the use of xmlKeepBlanksDefault() and xmlLineNumbersDefault().	* libxml++/parsers/saxparser.[h|cc]: Change exception & to exception&.2002-12-06  Christophe de Vienne <cdevienne@alphacent.com>	* libxml++/parsers/domparser.cc: Enabled xml option LineNumbers	and disabled KeepBlanks before each parsing.	* libxml++/parsers/sax_parser.cc: Enabled xml option KeepBlanks	before each parsing.	* example/dom_parser/main.cc: Added line number display for each	non-content node. Changed a bit content display	* Note: in a near future I may change these options settings to	let the user choose which options he wants/wants not.	2002-12-03  Jone Marius Vignes <jmvignes@broadpark.no>	* libxml++/parsers/domparser.cc: Changed the exception in	write_to_string() to "write_to_string() failed."	* libxml++/parsers/domparser.h: Corrected documentation of	write_to_string() and write_to_file() to clarify that these methods	doesn't return booleans2002-12-02  Christophe de Vienne <cdevienne@alphacent.com>	* libxml++/exceptions/*.[h|cc]: Added and implemented virtual 	methods Raise() and	Clone.	* libxml++/parser/sax_parser.[h|cc]: Each callback method can now	throw some exceptions as long as they herit from xmlpp::exception	AND implement Raise() and Clone().	* libxml++/examples/sax_exception/: Added an example which demonstrate	the use of exceptions inside a SaxParser.2002-11-29  Murray Cumming  <murrayc@usa.net>	* autogen.sh: Added libtoolize to generate files such as ltmain.sh.2002-11-28  Christophe de Vienne <cdevienne@alphacent.com>	* acinclude.m4: The AM_LIBXML macro now checks for a libxml2	version >= 2.4.1.2002-11-21  Christophe de Vienne <cdevienne@alphacent.com>	* libxml++/parsers/*.[h|cc]: added Parser::parse_stream method	and implemented it in both DomParser and SaxParser. Tests based	on the examples (not commited in the cvs) worked perfectly.2002-11-20  Christophe de Vienne <cdevienne@alphacent.com>	* libxml++/parsers/saxparser.cc: fixed a memory leak (thanks	to Chris Leishman <masklin@debian.org> who reported it.	2002-11-20  Murray Cumming  <murrayc@usa.net>	* Changed use of the term properties to attributes in the API,	because that is the correct terminology.0.16:	2002-11-19  Christophe de Vienne <cdevienne@alphacent.com>	* configure.in: updated version numbers for next release.	version is set to 0.16, library version to 2:0:02002-11-19  Murray Cumming  <murrayc@usa.net>	* docs: Added index.html, which can be a main website page.	* docs/Makefile.am: Added rsync command to upload the html,	including the reference documentation.2002-11-19  Murray Cumming  <murrayc@usa.net>	* Added Dtd class, which is just a collection of std::strings.	* libxml++/parsers/domparser.[h|cc]: Added set_internal_subset() and	get_internal_subset() to set the DTD declaration. This is set in the 	underlying C xmlDoc during write_to_file() and write_to_disk().2002-11-18  Murray Cumming  <murrayc@usa.net>	* libxml++/node.[h|cc]:	- Rename is_content() to has_content(), because that's what it tells 	us. Removed _is_content member bool - we can check _content.empty() 	instead.	- write(): Do not manually set the xmlNode's type field to TEXT. This	corrupted the tree. Tested content nodes in example/dom_build.2002-11-18  Murray Cumming <murrayc@usa.net>	* libxml++/parsers/domparser.cc (write_to_*): Corrected no-root-node	check.2002-11-18  Murray Cumming  <murrayc@usa.net>	* libxml++/exceptions/exception.[h|cc]: Corrected signature of what()	method, adding const throw().2002-11-18  Murray Cumming  <murrayc@usa.net>	* libxml++/parsers/domparser.[h|cc]: Added DomParser::set_root_node().	* examples: Added dom_build, to show runtime construction of an XML 	tree.2002-11-18  Murray Cumming  <murrayc@usa.net>	* Parser, DomParser, SaxParser: parse_file() and parse_memory() now 	throw exceptions.	* DomParser::write_to_file(): throws exception instead of using a bool	return value.	* examples/domparser/: Catches exceptions.2002-11-18  Christophe de Vienne <cdevienne@alphacent.com>	* libxml++/exceptions: splitted exception.[h|cc] in this directory.	The libxml_error has been removed for now, and a parse_error added.2002-11-17  Christophe de Vienne <cdevienne@alphacent.com>	* libxml++/attribute.h: Changed macro __LIBXMLPP_PROPERTY_H to __LIBXMLPP_ATTRIBUTE_H	* libxml++/exception.[h|cc]: Added xmlpp::exception, xmlpp::libxml_error and   	xmlpp::internal_error classes. It's very basic for now.	2002-11-17  Murray Cumming  <murrayc@usa.net>	* Node, Attribute: set_*() method now have void return types.	* DomParser: Now has an empty underlying in-memory document when the	default constructor is used. This means that get_root_node() should	always return something, so we can build XML documents in memory 	without loading any XML first.2002-11-16  Murray Cumming  <murrayc@usa.net>	* libxml++/attribute.h: Added explicit to constructor.2002-11-16  Murray CUmming  <murrayc@usa.net>	* libxml++/parsers/domparser: Renamed write() method to write_to_file()	and added write_to_string().2002-11-16  Murray Cumming  <murrayc@usa.net>	* libxml++-1.0.pc.in: More corrections. This was hopelessly broken	before.	2002-11-16  Murray Cumming  <murrayc@usa.net>	* libxml++-1.0.pc.in: Corrected typo.2002-11-16  Murray Cumming  <murrayc@usa.net>	* docs/reference/Doxyfile: Used doxywizard to mark the Recursive	option, so it reads the libxml++/parsers directory too.2002-11-16  Murray Cumming  <murrayc@usa.net>	* Attribute, Node: Added Doxygen class comment block. Changed some 	something * to something*.2002-11-16  Murray Cumming  <murrayc@usa.net>	* libxml++/node.[h|cc]: Added parameter names. Made const and non-const	overloads of children() method.	* libxml++/parsers/domparser.[h|cc]: Added const get_root_node() const	overload.2002-11-16  Christophe de Vienne <cdevienne@alphacent>	* libxml++/parsers/*: renamed method Parser::parse to 	Parser::parse_file2002-11-16  Christophe de Vienne <cdevienne@alphacent>	* libxml++/parsers/saxparser.[h|cc]: rewritten 	SaxParser::parse(filename) and SaxParser::parse_memory(string). 	They both use a SaxParser::parse()	method. The parse_chunk and finish methods has been removed.	* example/sax_parser/parser.cc: minor bugfix: the Attribute pointer	was printed instead of the value.	2002-11-16  Christophe de Vienne <cdevienne@alphacent.com>	* Property: has been renamed to Attribute. However, the "properties"	token has been kept when speaking of all the attributes of a node,	as in the libxml library.	* node.cc: rewritten a few loops so they have a more 'c++' looking.	rewritten some portions of code where an attribute is searched by name.2002-11-15  Murray Cumming  <murrayc@usa.net>	* Changed e.g. std::string &something to std::string& something,	using regexxer.2002-11-15  Christophe de Vienne <cdevienne@alphacent>	* example/sax_parser/parser.cc: #included <iostream>2002-11-15  Christophe de Vienne <cdevienne@alphacent>	* libxml++/parsers/saxparser.cc: #included cstdarg instead of stdarg.h	to follow the c++ standard. #included <iostream> to have std::cerr - it's	needed on strict c++ compiler (g++ 3.2 for instance).	* example/dom_parser/main.cc: #included <iostream>2002-11-15  Murray Cumming  <murrayc@usa.net>	* libxml++/parsers/saxparser.cc: #included stdarg.h - it seems to 	be necessary with some compilers.2002-11-15  Murray Cumming  <murrayc@usa.net>	* DomParser:: Added get_encoding() and write() methods.	* Removed Tree - Use DomParser instead.2002-11-15  Murray Cumming  <murrayc@usa.net>	* SaxParser now inherits from Parser, with parse() and parse_memory()	methods.	* Added example/sax_parser example, but the start_element callback 	doesn't seem to be called.2002-11-15  Murray Cumming  <murrayc@usa.net>	* Parser, DomParser: Added parse_memory() method.	* Node::children(): Removed bad early-optimisation hack - it returned	a static function variable instead of returning by value. This meant 	that >1 results of children() could not be used simultaneously. 	For instance, this meant that it could not be called recursively. 2002-11-12  Murray Cumming  <murrayc@usa.net>	* Node, Property: Used explicit keyword on constructors.2002-11-12  Murray Cumming  <murrayc@usa.net>	* Added parsers directory.	* Renamed Parser to SaxParser.	* Added DomParser, intended as a replacement for Tree, but that has	not yet been removed. I don't intend to implement the libxml-1 	compatibility stuff.	* Added examples directory structure, with one tiny dom_parser example.2002-11-12  Christophe de Vienne <cdevienne@alphacent.com>	* node.[h|cc]: name() method now return a reference.	* Tree/Node: The readnode and writenode functions have been removed 	and transfered somehow into Node as a new constructor and write(). 	The libxml++-private.[h|cc] has been removed.2002-11-12  Murray Cumming  <murrayc@usa.net>	* Parser: It's no longer a templated type - to provide your own 	callback implementations you can now just derive your own parser and 	override the on_*() methods.	2002-11-12  Murray Cumming  <murrayc@usa.net>	* Moved implementation into the .cc files.        * Changed n, v and p parameter names to name, value and properties.2002-11-12  Murray Cumming  <murrayc@usa.net>	* Split the single xml.[h|cc] files into node, property, tree and 	parser files, with a libxml++.h header file that includes them all.	* Removed the XML prefixes from type names - we don't need it because	we use a namespace now.	* Placed typedefed lists and map inside their classes. For instance,	XMLNodeList is now xmlpp::Node::NodeList.	* Node::children(): Use !(n.empty()) instead of (n.length() == 0), for	perfomance.	* Tree: changed fn parameter names to filename.2002-11-12  Christophe de Vienne <cdevienne@alphacent.com>	* AUTHORS: Added Murray Cumming to the contributors2002-11-08  Christophe de Vienne <cdevienne@alphacent.com>	* libxml++/xml.cc: corrected _line initialisation in XMLNode::XMLNode(const XMLNode *from)2002-11-08  Christophe de Vienne <cdevienne@alphacent.com>		* libxml++/xml.cc: Test if doc encoding is not null before	reading it (thanks to Marcel Bosc).	2002-11-05  Murray Cumming  <murrayc@usa.net>	* Added docs/reference/. Run make in this directory to generate 	reference documentation with doxygen.	* libxml++/xml.h: Removed macros around namespace - all compilers 	must now support namespaces.	* libxml++/xml.[h|cc]: Replaced (void) with () - it's not necessary	in C++.2002-11-05  Murray Cumming  <murrayc@usa.net>	* libxml++/Makefile.am and configure.in: Implemented shared library	interface versioning.2002-11-05  Murray Cumming  <murrayc@usa.net>	* Put source code in libxml++ directory, ready for it to be split up	into separate files. Client code should now include	libxml++/xml++.h rather than just xml++.h.2002-11-05  Murray Cumming  <murrayc@usa.net>	* Headers are now installed in a versioned directory, to allow 	coexistence with future major versions of libxml++. You may need to	remove the previously installed xml++.h file.	* Library name changed to libxml++-0.1, to be changed to libxml++-1.0 	when libxml++ stabilizes its API. This is also to allow future versions	to be parallel installed.	* Added pkg-config file as a simpler and more maintainable alternative	to the -config file and m4 script.Version 0.14	* Ported to g++ 3.2. The code should now also compile on compilers which are a bit more strict about c++ than previous versions of g++ 	* Added method XMLNode::line() wich returns the line number of a non content node in the source file. 	* Added encoding file support through XMLTree::encoding() and XMLTree::set_encoding() methods 	* Replacement of hash_map by map for node properties lists, since it has been reported to be faster, and to simplify porting to other plarfoms. 	* libxml++ classes has been put in a separated namespace, libxmlpp. If you don't want namespace, just undefine the LIBXMLPP_USE_NAMESPACE	* encoding and compression settings are now loaded at parsing of file/buffer.Version O.12 to 0.13	No Changelog.Version O.11	* Modified interface to allow for more complete coverage of possible uses of XML files.Version O.10	* Added SAX parser.Version O.2 to 0.9	No Changelog.Version O.1	* Original release.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?