We just created a new branch on the development tree for TinyXML without STL.
A preliminary version exists on CVS.
In order to get it, use the following commands :
cvs -d:pserver:anonymous@cvs.TinyXml.sourceforge.net:/cvsroot/tinyxml login
cvs -z3 -d:pserver:anonymous@cvs.TinyXml.sourceforge.net:/cvsroot/tinyxml co -r "OptionalSTL-branch" tinyxml
Note that the gnu make has not been updated yet.
std::string has been replaced by an emulation class
TiXmlString. The same happens with std::istream and
std::ostream (TiXmlInStream and TiXmlOutStream).
The plan is to have a conditional directive (ON by default) for users of STL, which adds to this code
some conversion functions for std::string and std::stream
The TiXmlString clearly needs some optimizations.
The test program xmltest.cpp has both styles in it, in order to show the usage difference.
Any feedback / proposal / objection welcome.
Yves Berquin
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yves,
This looks very interesting and I'm supportive. I've been doing some reading on STL, and am not so phobic about using STL as I was when we corresponded earlier.
I was skeptical about the use of stl because the std::string seemed to be the only part being used. This limited usage didn't seem to justify the potential hassle and learning curve. I would have thought there were all kinds of opportunities to use stl for some of the data structures TinyXml uses.
I'm using a Windows computer, and am not familiar with using cvs commands. I tried getting files one at a time directly from cvs, and it was error prone (for me) and a hassle. I'd like to see a full download from the 'Files' section.
Are there freeware String emulation classes from sites such as CodeGuru, CodeProject, PlanetSourceCode, etc. so you don't have to reinvent the wheel?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Actually, I fully agree about the CVS implementation being a pain. However, once it's set up its useful all over sourceforge. I recommend using the command line. The GUI doesn't integrate as easily with SSH.
That said, I don't think we want to do a release until its been poked at a bit more. Once released, people use it...which can be good and bad :). Getting a beta up soon makes sense though.
I shy away from the freeware string stuff simple because we don't want to expose the string class to the API. It's very internal, and needs to compile time switch the the STL stuff. Yves suggested the "STL emulation" and its a good solution -- my earlier exeperiments hadn't worked out as well.
lee
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
You can now download the 2.1.0 beta straight from the download pages.
You will see that the .DSP project contains the 4 flavors : with or without STL, debug or release.
Tell us what you think !
Yves
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
We just created a new branch on the development tree for TinyXML without STL.
A preliminary version exists on CVS.
In order to get it, use the following commands :
cvs -d:pserver:anonymous@cvs.TinyXml.sourceforge.net:/cvsroot/tinyxml login
cvs -z3 -d:pserver:anonymous@cvs.TinyXml.sourceforge.net:/cvsroot/tinyxml co -r "OptionalSTL-branch" tinyxml
Note that the gnu make has not been updated yet.
std::string has been replaced by an emulation class
TiXmlString. The same happens with std::istream and
std::ostream (TiXmlInStream and TiXmlOutStream).
The plan is to have a conditional directive (ON by default) for users of STL, which adds to this code
some conversion functions for std::string and std::stream
The TiXmlString clearly needs some optimizations.
The test program xmltest.cpp has both styles in it, in order to show the usage difference.
Any feedback / proposal / objection welcome.
Yves Berquin
Yves,
This looks very interesting and I'm supportive. I've been doing some reading on STL, and am not so phobic about using STL as I was when we corresponded earlier.
I was skeptical about the use of stl because the std::string seemed to be the only part being used. This limited usage didn't seem to justify the potential hassle and learning curve. I would have thought there were all kinds of opportunities to use stl for some of the data structures TinyXml uses.
I'm using a Windows computer, and am not familiar with using cvs commands. I tried getting files one at a time directly from cvs, and it was error prone (for me) and a hassle. I'd like to see a full download from the 'Files' section.
Are there freeware String emulation classes from sites such as CodeGuru, CodeProject, PlanetSourceCode, etc. so you don't have to reinvent the wheel?
Actually, I fully agree about the CVS implementation being a pain. However, once it's set up its useful all over sourceforge. I recommend using the command line. The GUI doesn't integrate as easily with SSH.
That said, I don't think we want to do a release until its been poked at a bit more. Once released, people use it...which can be good and bad :). Getting a beta up soon makes sense though.
I shy away from the freeware string stuff simple because we don't want to expose the string class to the API. It's very internal, and needs to compile time switch the the STL stuff. Yves suggested the "STL emulation" and its a good solution -- my earlier exeperiments hadn't worked out as well.
lee
Lynn,
You can now download the 2.1.0 beta straight from the download pages.
You will see that the .DSP project contains the 4 flavors : with or without STL, debug or release.
Tell us what you think !
Yves