The basic whirled stuff is here; compiling and working.
'Spot' still to come.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4133 542714f4-19e9-0310-aa3c-eee0fc999fb1
package, use those. The ResourceBundle stuff is not quite working now due
to bugs in beta3, but I'll loop back to it later.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4126 542714f4-19e9-0310-aa3c-eee0fc999fb1
- Track the size of non-simple keys separately so that we really know when
to resize the map.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4121 542714f4-19e9-0310-aa3c-eee0fc999fb1
- Renamed HashMap Hashtable, because I wanted a version without ties to
mx.* code. User-defined hashing functions may be specified.
- Created a subclass of Hashtable called HashMap which uses
functions in mx.utils.ObjectUtil to hash non-Hashable complex keys.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4120 542714f4-19e9-0310-aa3c-eee0fc999fb1
Internally, three different things may be done for storage:
- Simple keys can utilize the Dictionary class, we just use one of those
inside the map.
- If the key implements Hashable, we can hash it.
- Otherwise, use mx.utils.ObjectUtil to generate a hash for any other key and
also to compare the keys. Keys are then wrapped in a KeyWrapper object
that implements Hashable. This last case will also handle null as a key.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4117 542714f4-19e9-0310-aa3c-eee0fc999fb1
of the output.
Update code to recognize the new format and stop working around the old bugs.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4108 542714f4-19e9-0310-aa3c-eee0fc999fb1
InvocationRegistration had a constructor called Registration. I wonder if
that was causing the compile error with beta2.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4104 542714f4-19e9-0310-aa3c-eee0fc999fb1
"Still purple and bruised, sir!"
I'm working around more bugs. In theory everything should log in and join
the chat room, but the browser crashes- every single time.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3986 542714f4-19e9-0310-aa3c-eee0fc999fb1
Boy, fun.
I guess I'm embracing the 'adapter' construct for emulating anonymous
classes, but I wish I wasn't.
I have half an idea to start over from scratch and write a very
actionscripty dobj/services/receiver system that ends up looking very
different on the client but still speaks to the server in the same way.
Probably things would just get more and more complex until I was back here.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3983 542714f4-19e9-0310-aa3c-eee0fc999fb1
Use Long instead of long. I had them both (it may be useful so that we
know if we're streaming an object or just 8 bytes of value) but Windows
couldn't fucking tell them apart (case insensitivity) so I nixed one.
Reference some more marshallers in the client so that the classes will
be compiled in.. gawd.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3977 542714f4-19e9-0310-aa3c-eee0fc999fb1
I'm now pounding my head against new limitations that I'd not seen before, now
that the Client class that I'm using is not in the presents.client package.
Macromedia can go fuck themselves with a hot poker.
The .swf is already 200k and I've barely begun working on UI elements.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3972 542714f4-19e9-0310-aa3c-eee0fc999fb1
- started making chat UI stuff
- upgraded SimpleMap some to use the new Dictionary class
- Lots of experimenting with attaching functions to interface implementations.
I've upgraded to the new beta of Flex and it's giving me the pain. There's
new compiler bugs and I am working blind right now.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3966 542714f4-19e9-0310-aa3c-eee0fc999fb1
We can revert these statements when/if that bug gets fixed.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3960 542714f4-19e9-0310-aa3c-eee0fc999fb1
Setting up a prototype const doesn't work, which is possibly a compiler bug.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3959 542714f4-19e9-0310-aa3c-eee0fc999fb1
- There seems to be a compiler bug that causes classes to be
imported spuriously, or something. Classes that import only one of the Log
classes are complaining about visibility of more than one of them.
- static constants are not inherited by subclasses, which is super annoying.
I will try switching to prototype consts, but there seems to be a problem
initializing those, and we don't want to make them vars...
- The fact that there are no inner classes combined with no method overloading
is making things very inconvenient. I've been experimenting with faking
an anonymous class by instantiating a dynamic object and attaching
functions to it, but it's not working. I'll continue experimenting, because
if we can't do this then someone shoot me.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3957 542714f4-19e9-0310-aa3c-eee0fc999fb1
Made ObserverList work with a passed-in function, actionscript style.
I might reconsider some earlier decisions to go away from ObserverList.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3952 542714f4-19e9-0310-aa3c-eee0fc999fb1