aboutsummaryrefslogtreecommitdiff
path: root/src/old/sbuffer.cpp (unfollow)
AgeCommit message (Collapse)Author
2007-05-17As evidenced by my latest test, the Bu::FString copy is actually slower thanMike Buland
the std::string copy by a rather large margin. This seems very odd, so I'm going to do a few tests, the first one is stripping out the FString shared pointer stuff and seeing if that makes an appreciable difference.
2007-05-17Lots of cool new stuff, the Server class actually works for everything exceptMike Buland
actually interacting with clients, and the Client class is almost there, except that it doesn't really do anything yet.
2007-05-15SPtr is now Bu::ified, and the List class now acts the way we think const listsMike Buland
should act, you can't change anything in there. I'm still debating changing the const_iterator to a constIterator, or something else that's more Bu::worthy. Heh, the namespaces are funny...ok...I'm really tired.
2007-05-11Added a list template class, seems to work pretty well for now, I may haveMike Buland
forgotten proper cleanup in the deconstructor, but besides that you can do almost everything you need. I'll make a slist/stack next, probably with the same basic code, just a different structure (not doubley-linked). The xml system from old-libbu++ is almost completely converted, I was going to re-write it, but this seemed easier at first, it may not have been, we'll see. It almost parses everything again, and almost outputs again, and it does use streams now. The FString is partway to doing minimum chunk allocations, so that adding single-characters will be really fast up to the minimum chunk size. I also figured out how to add this optimization without any extra variables taking up space, and it's optional in the template, which is cool. You can specify the size of the blocks (default 256 bytes), if it's 0 then they'll be like the old FString, 1 chunk per operation. The next FString update should be allowing efficient removal from the begining of the string by faking it, and simply moving a secondary base pointer ahead, and then optimizing appends after that fact to simply move the existing data around if you shouldn't have to re-allocate (alla FlexBuf). The final fun addition that I'm planning is a simple switch in the template (boolean) that will switch an FString into a thread-safe mode without changing the interface or anything that you can do with them at all. It may increasing memory usage, but they should still be better than std::strings, and totally thread-safe. The best part of that is that if it's done with a boolean template parameter and if statements that only test that parameter controlling flow, the code that you don't want (threadsafe/non-threadsafe) won't be included at all post-optimization.
2007-05-09Just a few things re-arranged, moved the new taf/xml systems to the inprogressMike Buland
directory, and moved the old xml system in, so it will require heavy changes.
2007-05-09Minor changes to both the taf and xml readers. I'm thinking I'm going toMike Buland
archive these for now and resurect/fix the old xml reader, just to have something working.
2007-05-08Now they all read "taf" not "tsf" :)Mike Buland
2007-05-08Added the TAF format structures and XML format structures, I'm making up TAFMike Buland
(textual archive format), but named it wrong, this seemed easier than redoing it all.
2007-05-07Added some more helpers to FString, now contemplating a cast operator to aMike Buland
const pointer version of the raw data.
2007-04-26Merged Ito and put it in the BU namespace. I should probably clean up theMike Buland
formatting on the comments, some of the lines wrap, but I'm not too worried about it right now. I also fixed up the doxygen config and build.conf files so that everything is building nice and smooth now.
2007-04-20Fixed some goo in socket.Mike Buland
2007-04-10Added more comments, help, and socket actually reads and writes some, but it'sMike Buland
not done. I need to decide how I want to do the buffering...
2007-04-10I did it, the streams don't start with an S now.Mike Buland
2007-04-10Fixed a warning in the SFile test, and added std::list support to the archive.Mike Buland
I guess I should write a test for it too... I'm also thinking of removing the S from the front of the stream children.
2007-04-10Wrote some cute file unit tests, and added some more error reporting to SFile.Mike Buland
Also fixed the stream system to use void * pointers instead of char *.
2007-04-10Well, we've got the basis of a workable unit test harness thing. There shouldMike Buland
be a few more add-ons to it, but it works just fine, and eventually it should cover command line options and creating logs, and possibly even provide output functionality so that output from tests can be logged and kept track of well.
2007-04-10Woo, changed the name of Achable to Archival, I dig that, and added the ground-Mike Buland
work for the SSocket, that should be cool.
2007-04-03Just deleted a few things from old that definately have to go.Mike Buland
2007-04-03The file stream is imported and works, as does our first test, and the newMike Buland
tweaks to archive. The && operator is now a template function, and as such requires no special handling. It could be worth it to check this out for other types, yet dangerous, since it would let you archive anything, even a class, without writing the proper functions for it...we shall see what happens...
2007-04-03The first batch seem to have made it alright. Unfortunately the Archive classMike Buland
isn't done yet, I'm going to make it rely on streams, so those will be next, then we can make it work all sortsa' well.
2007-04-03Ok, no code is left in src, it's all in src/old. We'll gradually move code backMike Buland
into src as it's fixed and re-org'd. This includes tests, which, I may write a unit test system into libbu++ just to make my life easier.
2007-04-03Deleted the egg example...it was annoying me.Mike Buland
2007-04-02Ok...now you can specify a timeout on the open function, 30 seconds is theMike Buland
default so no programs need to be changed, it seemed like a good default to me... Still needs testing, but it should work just fine, and shouldn't effect any of our servers.
2007-04-02This constitutes a test version...there's a chance this should have been aMike Buland
branch, but it's so small...I'll just see if bugs arise, and if they do, then we'll fix 'em.
2007-03-27Added a new helper to the flexbuf, and likewise to the connection class, sinceMike Buland
it uses it heavily.
2007-03-27Fixed a const issue in the fstring.Mike Buland
2007-03-25Some more updates to Hash and FString.Mike Buland
2007-03-23Added another function to FString.Mike Buland
2007-03-21Fixed another random bug in the string compare for raw strings.Mike Buland
2007-03-21Fixed an infinite loop rehashing in the has function...whackyMike Buland
2007-03-21Fixed it so it'd compile...Mike Buland
2007-03-20Minor updates to the Hash and FString, Hash got a getKeys function, and FStringMike Buland
got the more normal getStr and getSize functions.
2007-03-19Fixed some bugs and added some new goo. You can serialize FStrings and HeshesMike Buland
now.
2007-03-15Fixed a constness issue. It's pretty good to go.Mike Buland
2007-03-15This version may break hashing of strings, but at least you can hash FStrings...Mike Buland
templates are confusing.
2007-03-15Looks like FString is ready for general consumption, not too shabby.Mike Buland
2007-03-15FString is totally usable, a few more helpers must be written before it surpasesMike Buland
the other classes in functionality. It's already rather fast.
2007-03-14The param proc now actually uses the extra field.Mike Buland
2007-03-14Now fixed the xml escaping...sigh.Mike Buland
2007-03-14Characters way up there were being escaped as negative numbers...seems whacky.Mike Buland
2007-03-09The string thing compiles.Mike Buland
2007-03-07Started the fstring class, could be good.Mike Buland
2007-03-07david - yep, forgot to commitMike Buland
2007-03-02Removed annoying debugging from SPtrMike Buland
2007-03-02Removed debugging from the HashMike Buland
2007-02-28Made updates to the staticstring, it works better with const situations now...Mike Buland
2007-02-27This may require slightly more testing, but basically I made ConnectionManagerMike Buland
more general, you can now listen to all local addresses (the old way), or individual addressses.
2007-02-19The formula system works just fine, just no functions yet, but I don't need themMike Buland
for quite a while.
2007-02-17Tweaked the stream classes, added an example, and the begining of a formulaMike Buland
parser.
2007-01-31Added an extra line because svn is all confused.Mike Buland