aboutsummaryrefslogtreecommitdiff
path: root/src (follow)
AgeCommit message (Collapse)Author
2008-06-07This seems to have done the trick, on the 32 bit platform, anyway. Turns outMike Buland
it's a bad idea to rely on the intNN_t typedefs. I enumerated all non-pointer primitives in c++ (except void, you can't store things in a void), and it works great. I also discovered C and C++ actually have unsigned char, signed char, and char, which are all distinct types. It supports all three now. In addition, I got rid of all of the specific && operators, the general one covers it all. Also, the unit tests all pass for now. Now to try it on the 64bit system.
2008-06-07This is a testing version. Nothing should be broken, but I won't gurantee it.Mike Buland
I wouldn't update to this just yet, if you have problems, back off a rev. I'm trying to update the code to work on both 32bit, and 64bit systems, and hopefully anything else that comes along. Currently some of the archive code is broken, testing must be done on both archetectures.
2008-06-04Corrected a few macro definitions to make them more function-like and safe toMike Buland
use.
2008-06-02Added another helper to Bu::TafGroup, very handy...something happened to theMike Buland
logger...I guess.
2008-04-29Very minor, just fixed the borders on the hexdump.Mike Buland
2008-04-28Apparently there were a number of things that weren't strict ISO C++, the newMike Buland
version of gcc complained about them, none of these changes will break backward compatibility, so I fixed them. I added more docs too, it seems.
2008-04-14The Bu::TafReader parser now knows about \\, \t, and \n escape sequences. TheMike Buland
writer also knows about \\, but will not insert \t or \n for now. It just uses a tab and newline for those.
2008-03-24Removed the backtrace stuff, it had some bugs, and shouldn't be here all theMike Buland
time anyway. Recompile everything.
2008-03-20This is a preliminary test of my new server simplification subclass, don't useMike Buland
it yet, the name will change. I really, really, really want the name to change.
2008-03-07Minor updates to MiniMacroMike Buland
2008-03-04Added backtrace support to the Exception system. It's pretty simple, if it'sMike Buland
enabled, and the compiler/libc support it, then you just get backtraces, if not you get a message about it not being supported. It probably shouldn't be enabled in most production environments, since it does happen for every exception, and could be memory and time consuming.
2008-02-26Some simple getters that are const safe weren't labeled as such. Oops.Mike Buland
2008-02-26Thought this may be handy. It should have more functions and things later, butMike Buland
it's basically an uber-simple counter class that's thread-safe!
2008-02-20Applied an update from Hash to Set (they're basically the same logic/code, inMike Buland
fact, I need to get in there and change all the comments and exceptions in Set to refer to Set and not Hash). Util has the functors in it that are shared now, and List actually uses those functors for it's insertSorted function, that thing has come in so handy.
2008-02-19Oops. I made the Bu::Heap API look like a stack, not a queue, that's beenMike Buland
fixed, and the Bu::ItoHeap is working and tested. Note that when multiple items have the same sort order, they will come out in random order.
2008-02-19I believe this will do the trick. The Bu::Heap class now uses the appropriateMike Buland
allocators for all work, every data type used in a Bu::Heap must support the equals operator and <= or >=, or you need to write your own comparison functor. The heap works as both a min-heap and max-heap, just change out the functor used for camparison, kinda' cool. The print function I'll leave in for a little while, but not in the long run, it just prints a dot graph to stdout. Next up, the Ito version.
2008-02-19Bu::Heap is a real class, it works great, except it doesn't grow right now.Mike Buland
I'm thinking the heap should add one layer to the binary tree each time it grows, which means double+1 each time. The Bu::ItoHeap will be implemented as soon as the rest of Bu::Heap is done. Also, I finally added bu/util.h which is mainly handy template functions like Bu::swap, Bu::min, Bu::max, and Bu::mid. A few more may be added.
2008-02-13Oh, why the hell not? I just added the line/col readout to all the TafReaderMike Buland
exceptions.
2008-02-13There may be some slightly better error reporting in TafReader now...Mike Buland
2008-02-10Huh, forgot to commit the rest of the updates/changes/etc for the newMike Buland
sever/client-link system.
2008-02-07Just updated the copyright date.Mike Buland
2008-02-07Wowee, I think all this new stuff works, Conduit I don't need now, so it's notMike Buland
done yet. The Client class now supports a function called getLink() which returns a ClientLink object. This object may then be passed off to any other class and called to send messages to that client object. It is threadsafe if ItoServer is being used, and not for Server. Sending a message via a ClientLink calls the onMessage function on the assosiated protocol. Note that sending messages from within protocol event handlers or functions they call, while safe, may be slow and it's reccomended that you avoid this.
2008-02-07Corrected a very rare race condition in Bu::ItoServer where there was a chanceMike Buland
that the client would disconnect so quickly that it would be cleaned up before it was properly accounted for. I apparently added something to MiniMacro a while ago...probably the end tags I think...
2008-01-23Minor changes to documentation, mainly.Mike Buland
2008-01-23Added a new helper to the Stream classes, a write function that takes a singleMike Buland
Bu::FString reference as a parameter. Unfortunately you need to remember to add "using Stream::write;" to each child class so they can take advantage of it. Strange, no? Also, cleaned up a bunch of header files, I'm trying to move towards headers only including other headers that they absolutely need, otherwise just creating forward decleration sections at the top of each.
2007-12-18Corrected empty string comparrisons in Bu::ParamProc, it was checking for nullMike Buland
strings, which are no longer handed out in the Bu::FString, I think it's better this way, but the Bu::ParamProc may need a little re-working to make it just right (right now the default value of a string cannot be empty, doesn't sound too bad...)
2007-12-17I think it doesn't open or connect stderr in this version, I need to add someMike Buland
options...
2007-12-12Corrected some issues with the new trace system. It's now working fine. ↵Mike Buland
It's backword compatible, and the new features are a lot of fun. Since it uses template functions you can add any new variable types to be formatted.
2007-12-12Added the new TRACE test.Mike Buland
2007-12-12Added more tracey goodness, this is incomplete, but cool looking.Mike Buland
Also removed some debugging from Process, it needs a helper to clear a buffer, or an option to ignore stderr.
2007-12-11Fixed the bu directory, now the code should compile and be usable evenMike Buland
installed. That was odd. Anyway, also set props on the bu, unit, and test directories so that the contents won't be listed on svn status.
2007-12-11Interum commit, fixing the bu directory.Mike Buland
2007-12-06More process fixups.Mike Buland
2007-12-04Minor update to Bu::FString, it now always returns a valid C style string whenMike Buland
asked for the string, no null pointers anymore.
2007-12-03Just added the MiniMacro test, it could actually be a unit test without a lot ofMike Buland
effort.
2007-12-03Hey, Bu::MiniMacro works, that's a funny name. There's still some more to add,Mike Buland
but it does everything I need it to at the moment.
2007-12-03Fixed the broken Bu::TafReader, it was stopping the parse after the first '}',Mike Buland
not the last...
2007-11-30Fixed the overshoot in the Bu::TafReader, it was reading the lookahead characterMike Buland
from the stream even when it should have known it was at the end, and then it was reading an extra character after that anyway :-P It is now fixed, and the stream is positioned at the character immediately after the closing } of the root taf group, great for things like the svtools.
2007-11-30Added some helpers to fstring, and fixed a bug in Bu::Process, it wasn't closingMike Buland
the pipes properly, resulting in the child process going defunct and not dying, it also wasn't buffering properly, it now collects as much data as it can before returning from a read operation.
2007-11-24Alright, *now* remove works.Mike Buland
2007-11-23Ok, that was a strange bug...Mike Buland
2007-11-23Bu::FString now has insert and remove functions, yay!Mike Buland
2007-11-23Added the Process stream class, this will allow us to do some really cool stuffMike Buland
coming up...it's just like popen only cool and managed, and streamey.
2007-11-19Added the Bu::StdStream Stream class, it's just a wrapper for writing to,Mike Buland
reading from standard output/input.
2007-11-15Final changes moving to the actually liscense-ified version, plus I fixed aMike Buland
compile error I introduced last commit.
2007-11-15Added liscense info at the front of many, many files. Debating the old files.Mike Buland
2007-11-15david - adding license tag to the top of all header filesDavid
2007-11-15david - example of license notice in hash.hDavid
2007-11-14Fixed a bug in Bu::Hash::clear(), it wasn't actually changing the number ofMike Buland
deleted items, so the size was being misreported immediately after a clear.
2007-11-14Thought that a Bu::Hash::getValues() function would be nice to matchMike Buland
Bu::Hash::getKeys().