FYI, I was able to use the unit test to look at the JS output, by uncommenting the assert and looking at it fail ;-)
Is there a more convenient way to do this? Mind you, I'm not complaining! Just askin' ;-) EdB On Sat, Dec 22, 2012 at 9:37 AM, Erik de Bruin <e...@ixsoftware.nl> wrote: > Awesome, Mike! > > Now you've gone and created a reason for me to waste a considerable > amount of the holidays on getting to know this code and "finish" the > conversion table ;-) > > Have a very merry Xmas, > > EdB > > > > On Sat, Dec 22, 2012 at 1:00 AM, Michael Schmalle > <apa...@teotigraphix.com> wrote: >> >> Hi, >> >> Well I busted my A$$ before I hit vacation, Erik you can look at >> TestGoogEmiter and the JSGoogEmitter to see the black majik I whipped up >> today. >> >> Basically with the NEW FalconJx (BTW I'm starting to like this name now, the >> "x" with Fle"X"), cross compiler is doing this all. I know there are missing >> "this, super" etc etc etc, but this things is working! >> >> And all that little stuff is easy to add now. Like I said in my commits, I >> have package down to expressions working and it creates valid AS3 source >> code from the AST. >> >> Now it's just work filling in all the holes you have listed in the as->js >> conversion table. >> >> Frank, I'm sure you could look at my code and take the JSGoogEmitter as an >> example and create a prototype JSRequireEmitter with the pattern I have >> setup. >> >> I'm still refactoring but it's looking good. >> >> Peace and happy new year, >> Mike >> >> >> ---------------------------------------------------------------------------- >> AS Code >> >> package com.example.components >> { >> >> import org.apache.flex.html.staticControls.TextButton; >> >> public class MyTextButton extends TextButton >> { >> public function MyTextButton() >> { >> if (foo() != 42) { >> bar(); >> } >> } >> >> private var _privateVar:String = "do "; >> >> public var publicProperty:Number = 100; >> >> public function myFunction(value: String): String >> { >> return "Don't " + _privateVar + value; >> } >> } >> } >> >> >> >> ---------------------------------------------------------------------------- >> JS Code >> >> >> >> goog.provide('com.example.components.MyTextButton'); >> >> goog.require('org.apache.flex.html.staticControls.TextButton'); >> >> /** >> * @constructor >> */ >> com.example.components.MyTextButton = function() { >> if (foo() != 42) { >> bar(); >> } >> } >> >> /** >> * @type {String} >> */ >> com.example.components.MyTextButton.prototype._privateVar = "do "; >> >> /** >> * @type {Number} >> */ >> com.example.components.MyTextButton.prototype.publicProperty = 100; >> >> /** >> * @this {com.example.components.MyTextButton} >> * @param {String} value >> * @return {String} >> */ >> com.example.components.MyTextButton = function(value:String) { >> return "Don't " + _privateVar + value; >> } >> >> >> >> -- >> Michael Schmalle - Teoti Graphix, LLC >> http://www.teotigraphix.com >> http://blog.teotigraphix.com >> > > > > -- > Ix Multimedia Software > > Jan Luykenstraat 27 > 3521 VB Utrecht > > T. 06-51952295 > I. www.ixsoftware.nl -- Ix Multimedia Software Jan Luykenstraat 27 3521 VB Utrecht T. 06-51952295 I. www.ixsoftware.nl