Commit Graph

27 Commits

Author SHA1 Message Date
Ray Greenwell 9d3ff0b44d If the server streams an array of enums, it will surely think they're final.
So we'd better do the same here.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5353 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-09-04 01:29:43 +00:00
Ray Greenwell 77e00160fd Using appDom here booched the thane build.
Work around my issue another way, which is in some ways smoother: if the
object is a normal object from a normal class, get the class right off
instead of even doing the by-name stuff.
The appDom stuff could conceivably still be desired in the future, but
this will cover just about everything and we can always re-add this extra
business when need it.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5230 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-10 21:08:47 +00:00
Ray Greenwell 8c17cb5b24 Take an optional ApplicationDomain on a few methods that create classes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5226 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-07-10 20:43:59 +00:00
Par Winzell b174219540 We now build a subset of Narya for execution on Tamarin, the server-side AS3 VM.
- We use the ASC compiler, which works quite differently from compc/mxmlc. It doesn't attempt any mapping between class hierarchy and directory structure. You feed it source, that's it. This compiler is under continuous development, and the one shipped in Flex SDK 3 is buggy, so we supply our own in lib/asc.jar for the time being.
 - Since much of Narya relies on classes that don't exist on Tamarin (e.g. DisplayObject), we have to isolate a specific subset of source. Right now that's done ridiculously explicitly as a list of class files, in etc/asc-files.txt. In the long run we will want to resolve this more elegantly, but there are no trivial solutions at hand.
 - We have not implemented the full flash.utils.describeType() for Tamarin, but rather a subset of its functionality: one method to see if one type derives from another, and another method to extract the public variable names in an object. The environment-specific code has been isolated to com.threerings.util.env.Environment, and build.xml simply copies either Environment.as-tm or Environment.as-fp into place depending on what it's targeting.
 - The ASC compilation links against lib/builtin.abc, which supplies information about core classes such as Object, Array, etc, and lib/thane.abc which is our homegrown emulation library containing e.g. flash.net.Socket and other things we need that's not part of the open-source code Adobe donated to Mozilla, but rather still in their proprietary Flash Player code.

I'm committing thane.abc and builtin.abc directly now, but they will shortly be built by the Thane project and published as maven whatnots. We could auto-publish lib/asc.jar too, but I think we may want more explicit control over how we version that.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@5045 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-05-07 15:33:07 +00:00
Ray Greenwell d0a3fa4c8e Occam's razor: presumably getDefinitionByName() returns the same class
for the same name each time it's called. :)


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4975 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-19 07:30:33 +00:00
Ray Greenwell bb5c4c224c The 'constructor' property is not to be trusted.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4974 542714f4-19e9-0310-aa3c-eee0fc999fb1
2008-03-19 07:28:05 +00:00
Ray Greenwell 2b5933015e Some documentation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4899 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-12-04 03:24:52 +00:00
Michael Bayne 09f0bee0f3 Yet more header patrol.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4602 542714f4-19e9-0310-aa3c-eee0fc999fb1
2007-02-24 00:39:27 +00:00
Ray Greenwell 2a71f0c9bc Added getTinyClassName().
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4381 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-09-27 00:31:03 +00:00
Ray Greenwell 1f204669c4 Fixed shortClassName() to not display a leading '.'.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4341 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-08-23 21:27:14 +00:00
Ray Greenwell cc4ed0b9d9 Commit comment containing information determined through experimentation.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4323 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-08-14 21:45:51 +00:00
Ray Greenwell 53aacc4bbc Added ClassUtil.isSameClass(), reimplemented another function using
the constructor property.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4322 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-08-12 01:19:30 +00:00
Ray Greenwell 2f3584adf7 Various small fixes.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4258 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-07-12 02:22:18 +00:00
Ray Greenwell 608be4557b Some changes required for the new compiler.
- Import bleeding may be fixed, as I had to import a bunch of things I
  should have had to earlier.
- NOW they make duplicate variable definitions bad (but without block
  scoping... yay).
- Another hoopjump.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4233 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-06-28 22:04:19 +00:00
Ray Greenwell fdfce50d01 Checkpoint, I've got an interactive 2d scene mostly working.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4151 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-05-26 21:54:34 +00:00
Ray Greenwell 164d746072 Turns out they did fix the describeType bugs, but also changed the format
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
2006-05-10 21:11:56 +00:00
Ray Greenwell e100ef4faf Updated to match API changes in Beta3.
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
2006-05-09 23:03:47 +00:00
Ray Greenwell 16a28de8bc Report from brown team, engaged in Operation Slam Your Dick in a Door:
"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
2006-03-28 23:17:52 +00:00
Ray Greenwell 7d3ef496fd More faffing about.
- 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
2006-03-22 02:10:37 +00:00
Ray Greenwell ccd6e2b81e Some stuff.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3962 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-03-18 00:43:45 +00:00
Ray Greenwell b82b079469 It seems that Array streaming now works.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3924 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-03-08 03:28:09 +00:00
Ray Greenwell d8276bb4a9 More crap, some new discoveries, backtracking, annoyance.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3918 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-03-07 03:49:33 +00:00
Ray Greenwell a75f496e76 Checkpoint.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3912 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-03-04 02:43:14 +00:00
Ray Greenwell 76ae4d5f5a Added Log facilities like we're used to, and discovered a host of
new wacky things (and possible compiler bugs) on the way.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3888 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-24 01:28:55 +00:00
Ray Greenwell ea0a3dce06 Well, it compiles.
It's not functional, there are still large holes in the implementation.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3868 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-20 03:53:04 +00:00
Ray Greenwell 1d36299e3c Some work on streaming.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3855 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-15 01:41:14 +00:00
Ray Greenwell 3f9c6c6081 Beginnings of the ActionScript 3.0 client: checkpoint checkin.
There's a long way to go and I think I need to rethink the way streaming
will work, but this is a start. These classes all compile under
the flex environment.


git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3842 542714f4-19e9-0310-aa3c-eee0fc999fb1
2006-02-09 03:33:58 +00:00