- 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
some kind of annoying fiddling to allow its dependencies to come either from
the build directory of its dependee or from lib/.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4423 542714f4-19e9-0310-aa3c-eee0fc999fb1
of LWJGL, the AWT canvas releases its OpenGL context after rendering.
Rather than redesign all event handling to take place in the update
method, I put in a hack to grab the context back.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4200 542714f4-19e9-0310-aa3c-eee0fc999fb1
used to easily plug in different methods of smoothly varying a value over time.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3834 542714f4-19e9-0310-aa3c-eee0fc999fb1
dispatching classes in Java to eliminate annoying dependency on the output
format of JDK 1.4.1's javap.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@3238 542714f4-19e9-0310-aa3c-eee0fc999fb1
different files when the source interface hasn't changed and CVS sticks a
nice little "last checked in" timestamp in there anyway.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@2311 542714f4-19e9-0310-aa3c-eee0fc999fb1
generated file is checked into CVS by the Id info for the generated file,
thus thwarting our efforts to track which version of the template from
which the generated file was generated.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1665 542714f4-19e9-0310-aa3c-eee0fc999fb1
method invocation services and converted everything to the new style.
Could this be my biggest checkin ever?
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@1642 542714f4-19e9-0310-aa3c-eee0fc999fb1
our libraries depend. We're using external libraries that are too bleeding
edge to simply have people install the publicly available versions.
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@753 542714f4-19e9-0310-aa3c-eee0fc999fb1
changed to Presents and Party changed to Crowd. Whee!
git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@431 542714f4-19e9-0310-aa3c-eee0fc999fb1