Age | Commit message (Collapse) | Author |
|
template definition that just calls getKey() in the object, if the object
doesn't support a getKey() method, then you can write your own, but now you
don't have to.
|
|
key just belongs first, that's all there is to it.
|
|
probably document some of that...if you do an == with Bu::Cache::Ptr objects it
will compare them to see if they are the same pointer, not if the data contained
is compatible.
i.e. to see if two pointers are the same data, you can do:
a == b
but to see if a and b contain compatible data, do:
*a == *b
:)
|
|
a reference to the list, so you can chain appends and whatnot.
|
|
also made sure the copyright is at the top of all the files, it's been too long.
Anyway, this may effect some code, but not much, and it's an easy enough fix.
|
|
there's no way to find out how many are in memory now, I may add something for
that later, but it seems more or less unimportant (except maybe for fine-tuning
and making interesting looking displays).
|
|
bool to see if they're bound, you still have to use isValid to see if they're
valid or not. Also, fixed a bug in libbu++ that's been around for a while,
apparently, in the Bu::Socket code. Non-blocking reading wasn't working
correctly, when data wasn't waiting on the line, it would return immediately
with zero bytes read. That was sure stupid. This should fix a lot of things.
|
|
|
|
adding some more helpers. Hopefully this won't affect anything, but if it
complains about any functions not working the way they used to, see if they're
returning an int or an iterator. I made several functions handle iterators
instead of ints, the int versions have an "Idx" suffix added now. I'm trying
to switch entirely to iterators to reduce flattening and increase performance
and stability.
Also...something must have changed in the cache code...
|
|
some day, but I'm not in much of a rush, I just wanted to do a quick survey.
Also added the Formatter::flush special stream value, so now you can do a:
sio << "hello" << sio.flush; and it'll flush output immediately.
I also tweaked a few things in the cachestore and cache so that they actually
throw exceptions and the like instead of just printing out some garbage.
|
|
about each object that it has and weather or not to sync it. This will probably
be made optional in the future.
|
|
cachestorenids all support synchronizing now. Url is pretty much done.
|
|
BitString is...not so good...I may have to rewrite big chunks.
|
|
all should, but they don't really haaave to.
|
|
one to a Calc and one to a Store. It takes ownership of the two objects, and
deletes them when it gets cleaned up.
|
|
me, is much less messy, and makes the syntax work a little better for me as
well. What the hell was a CPtr? Who knows, but a Cache::Ptr, that makes sense.
Also, fewer includes to deal with now, just need Cache and you're set.
Oh, also, made Cache::Ptr behave much more like a regular pointer, they can be
assigned now, as well as created empty (NULL).
|
|
added some more tests and whatnot. A lot happened, but I can't remember
everything.
Also, Bu::File reports errors in more error cases.
|
|
Bu::CacheCalc still needs to reference the Bu::Cache so that it can make the
changes it needs to.
|
|
keytypes. It doesn't yet use the stackable CacheStore concept, but the code
is all in place to make it easy to switch to. There also needs to be some more
accounting code in place, so that we can actually use the Schedulers, whatever
they happen to be called in the future.
A whacky side note, it turns out that we totally need to ensure an object is
loaded from the cache in order to delete it, we can't ensure that any
references to other objects that are in the cache will be loaded otherwise.
|
|
can be hashed. And we're about to test actually loading and saving persistant
cache items. Fun.
|
|
do a few more tests, and hopefully get something loading/saving.
|
|
just fine, since they can do it any way they want. The Congo CacheHandlers
will all have to be specialized versions of the generic ones, but they'll use
all the general functionality, just make up IDs differently. It'll rock.
|
|
functors. I like template functions a little more, but functors can be at
least as fast. It won't be much of a change.
|
|
|