Age | Commit message (Collapse) | Author |
|
binary data much better, actually escaping it properly and not stopping on null.
Bu::FString has an iterator, it's actually just a raw datatype, but it may have
more function later, so careful assuming that it's a char and using it in any
non-iterator like way.
Also augmented the taf unit test, and added the Bu::CacheCalc base class, the
rest of the simple develpment cycle will happen between here and project hhp.
|
|
tests to test it
|
|
goes into an infinite loop while doing certain kinds of read. Also, it zeros
out new blocks to make things easier to cope with in the hex editor, it'll
probably also compress better.
I also fixed Bu::MemBuf so that you can now write to arbitrary places
mid-stream.
|
|
writing...so...what more do you need? It was ignoring the open flags you gave
it anyway.
|
|
What changed API-Wise:
- I deleted a constructor in Bu::File that shouldn't have been used anyway.
- I changed it from using fopen style mode strings to using libbu++ style
mode flags. Check the docs for the complete list, but basically instead of
"wb" you do Bu::File::Write, and so on, you can or any of the libbu++ flags
together. There is no binary/text mode, it just writes whatever you tell it
to verbatim (binary mode). Lots of extras are supported. Nothing else
should have changed (except now the file stream is unbuffered, like all the
other streams).
Sorry if this breaks anything, if it's too annoying, use the last revision for
a while longer.
|
|
exception related code that's been annoying me. You should no longer have to
include any exception header explicitly for normal operations, every class that
has it's own exception to throw defines it in it's own headers.
This may break some code that uses libbu++, but it's an easy fix, just delete
the include for exceptions.h. Sometime soon I would also like to move from
Bu::ExceptionBase to Bu::Exception, but that will affect a lot more code than
this change did.
|
|
|
|
wrote it, it's pretty feature complete, index, append, iterators. You can't
delete anything yet, exactly, but that's tricky in an array anyway, basically
you just want to be able to remove elements from the end, and that's halfway
there.
Also, fixed some documentation and minor issues in Bu::Set, and made the
Bu::Archive include fewer other classes while still defining archive oprators
for them. I think I may yet move those into the headers for the classes that
are being stored instead, makes a little more sense.
I also would like to move the Exception classes out of the exceptions.h file
and into the appropriate class' files'. There still should probably be a
couple of general ones in there, or maybe just in exceptionbase.h, we'll see.
|
|
test.
|
|
hell out of it. Good times, everyone. This is a major chunk for congo, and
the new optimizations should be good.
|
|
expected operators now, like plus. It was annoying without them.
|
|
|
|
inconsistancies when archiving compared to their STL counterparts, they are now
compatible on every system I can imagine. Also, List now uses a long instead
of an int for sizing, and the other containers should as well. I'll check on
that later.
That means that the files will all be larger on a 64 bit system, but such is
life. The same thing happens when you use STL classes. There may be other
inconsistancies down the road, we'll see.
|
|
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.
|
|
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.
|
|
|
|
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.
|
|
|
|
|
|
compile error I introduced last commit.
|
|
|
|
|
|
Also added more tests to the FString unit tests and switched the ParamProc to
using FString instead of std::string, this will break a few programs in very
minor ways, a few seconds each to fix, I'd say.
|
|
compile under OSX. So far, no problems with anything else, it looks like build
and nango both build without problems, libbu++ is truly becoming a full cross-
platform toolkit.
|
|
the right way.
|
|
comment blocks, and it retains the order of all nodes.
|
|
buffer.
|
|
|
|
|
|
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.
|
|
Also fixed the stream system to use void * pointers instead of char *.
|
|
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.
|
|
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.
|
|
and the old Makefile may soon fall into disrepair. To use the old one, which
should almost always be able to build at least thi library, call:
make -f Makefile.legacy
The new Makefile just calls pymake
|
|
own, use the 5 builtin ones (gt, lt, apos, quot, amp), and even create your own.
The parser now skips any text definition at the top, which is fine for most xml
that you get these days. I think if we ever make the break to full compliance
we'll need to make a new parser from scratch.
|
|
everything else in the all target of the makefile, which is fine, but relies on
CppTest, which can be found at http://cpptest.sf.net
Also fixed some things I've been meaning to get to for a while in the xml
system, including a few bugs that will make coping with malformed data not hang
other programs, and do the error reporting in a nice way.
|