Hi Mike, I pushed the changes which are ready to be reviewed.
Note: The jasmine-2.0.js is not committed as it should be downloaded with the unpack-externs target of the download.xml, I followed the model. Thanks, Frédéric THOMAS ---------------------------------------- > Date: Sat, 27 Jun 2015 05:31:50 -0400 > Subject: Re: [Externs] jasmine-2.0.js > From: teotigraphix...@gmail.com > To: dev@flex.apache.org > > I just noticed you said today or tomorrow, whatever man. doesn't matter. > > Mike > > On Sat, Jun 27, 2015 at 5:17 AM, Michael Schmalle <teotigraphix...@gmail.com >> wrote: > >> Well its the practice. I know the pattern I am using so if I have to >> adjust it to fit I will. You can tell that with AST type stuff, it has to >> follow a specific pattern or everything turns to crap when trying to add >> stuff down the road. >> >> Commit it sooner than later as I have a couple hours to check it out this >> morning. >> >> Mike >> >> On Sat, Jun 27, 2015 at 3:15 AM, Frédéric THOMAS <webdoubl...@hotmail.com> >> wrote: >> >>> Hi Mike, >>> >>> I can now compile jasmine, I'm not sure my fix is very clean but it >>> works, I've been able to compile all the externs with. >>> I will commit it later today or tomorrow as I need to clean a bit before >>> and it would be nice if you can review it. >>> >>> Thanks, >>> Frédéric THOMAS >>> >>> >>> ---------------------------------------- >>>> From: webdoubl...@hotmail.com >>>> To: dev@flex.apache.org >>>> Subject: RE: [Externs] jasmine-2.0.js >>>> Date: Fri, 26 Jun 2015 22:43:30 +0100 >>>> >>>> Hey Mike, it looks like "import jasmine.Clock;" is missing in the >>> generated jasmine.as, that's it ! >>>> >>>> Frédéric THOMAS >>>> >>>> >>>> ---------------------------------------- >>>>> From: webdoubl...@hotmail.com >>>>> To: dev@flex.apache.org >>>>> Subject: RE: [Externs] jasmine-2.0.js >>>>> Date: Fri, 26 Jun 2015 22:26:32 +0100 >>>>> >>>>>> HAHA, ah that is a hard one man, thanks for the offer but I think I am >>>>>> going to need to get this one. There are a couple places it could be >>> though >>>>>> if you are curious. >>>>>> >>>>>> First you really need to understand the problem, I am typing this >>> stuff in >>>>>> between installing a bathroom vanity and sink, so I haven't looked at >>> the >>>>>> code yet. :) >>>>>> >>>>>> So I can't really give you an answer since I don't quite know the >>> problem >>>>>> yet. >>>>> >>>>> Ok, I will check your solution :-) >>>>> >>>>> Frédéric THOMAS >>>>> >>>>> >>>>> ---------------------------------------- >>>>>> Date: Fri, 26 Jun 2015 16:59:58 -0400 >>>>>> Subject: Re: [Externs] jasmine-2.0.js >>>>>> From: teotigraphix...@gmail.com >>>>>> To: dev@flex.apache.org >>>>>> >>>>>> On Fri, Jun 26, 2015 at 4:39 PM, Frédéric THOMAS < >>> webdoubl...@hotmail.com> >>>>>> wrote: >>>>>> >>>>>>>> Yeah, this "jasmine.Clock" >>>>>>>> >>>>>>>> The error means that the Falcon compiler is trying to resolve a >>> member >>>>>>>> expression and it can't resolve it. >>>>>>>> >>>>>>>> So this means there is a bug in the AST resolver. You are using the >>>>>>> extern >>>>>>>> in the GCC project correct? >>>>>>> >>>>>>> Yes, >>>>>>> >>> https://raw.githubusercontent.com/google/closure-compiler/master/contrib/externs/jasmine-2.0.js >>>>>>> >>>>>>>> If so, I need to take a look at it. >>>>>>>> >>>>>>>> Everyone, I did one pass and tests on packages and class creation, >>> so >>>>>>> these >>>>>>>> types of bugs are to be expected as the AST/Type resolver is >>> "asked" to >>>>>>> do >>>>>>>> more work then my initial implementation. >>>>>>>> >>>>>>>> Make sense? >>>>>>> >>>>>>> Well, kind of :-) >>>>>>> What classes would you check for this ? >>>>>>> >>>>>> >>>>>> HAHA, ah that is a hard one man, thanks for the offer but I think I am >>>>>> going to need to get this one. There are a couple places it could be >>> though >>>>>> if you are curious. >>>>>> >>>>>> First you really need to understand the problem, I am typing this >>> stuff in >>>>>> between installing a bathroom vanity and sink, so I haven't looked at >>> the >>>>>> code yet. :) >>>>>> >>>>>> So I can't really give you an answer since I don't quite know the >>> problem >>>>>> yet. >>>>>> >>>>>> Mike >>>>>> >>>>>> >>>>>> >>>>>>> >>>>>>> Thanks, >>>>>>> Frédéric THOMAS >>>>>>> >>>>>>> >>>>>>> ---------------------------------------- >>>>>>>> Date: Fri, 26 Jun 2015 16:32:16 -0400 >>>>>>>> Subject: Re: [Externs] jasmine-2.0.js >>>>>>>> From: teotigraphix...@gmail.com >>>>>>>> To: dev@flex.apache.org >>>>>>>> >>>>>>>> Yeah, this "jasmine.Clock" >>>>>>>> >>>>>>>> The error means that the Falcon compiler is trying to resolve a >>> member >>>>>>>> expression and it can't resolve it. >>>>>>>> >>>>>>>> So this means there is a bug in the AST resolver. You are using the >>>>>>> extern >>>>>>>> in the GCC project correct? >>>>>>>> >>>>>>>> If so, I need to take a look at it. >>>>>>>> >>>>>>>> Everyone, I did one pass and tests on packages and class creation, >>> so >>>>>>> these >>>>>>>> types of bugs are to be expected as the AST/Type resolver is >>> "asked" to >>>>>>> do >>>>>>>> more work then my initial implementation. >>>>>>>> >>>>>>>> Make sense? >>>>>>>> >>>>>>>> Mike >>>>>>>> >>>>>>>> On Fri, Jun 26, 2015 at 3:27 PM, Frédéric THOMAS < >>>>>>> webdoubl...@hotmail.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi Mike, >>>>>>>>> >>>>>>>>> Any idea why ? >>>>>>>>> >>>>>>>>> U:\sources\asf\flex\falcon\externs\jasmine\out\as\classes\ >>> jasmine.as:26 >>>>>>>>> Erreur interne : java.lang.NullPointerException >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.scopes.TypeScope.getPropertyForMemberAccess(TypeScope.java:344) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.scopes.ScopeView.getPropertyForMemberAccess(ScopeView.java:81) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.scopes.ASScope.getPropertyFromDef(ASScope.java:879) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.scopes.ASScope.getPropertyFromDef(ASScope.java:841) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.scopes.ASScope.getPropertyFromDef(ASScope.java:760) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.tree.as.IdentifierNode.resolveMemberRef(IdentifierNode.java:829) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.tree.as.IdentifierNode.resolve(IdentifierNode.java:377) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.tree.as.IdentifierNode.getMName(IdentifierNode.java:432) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.tree.as.MemberAccessExpressionNode.getMName(MemberAccessExpressionNode.java:158) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.as.codegen.ABCGeneratingReducer.dottedName(ABCGeneratingReducer.java:840) >>>>>>>>> at >>>>>>>>> >>>>>>> >>> org.apache.flex.compiler.internal.as.codegen.CmcEmitter.action_321(CmcEmitter.java:5236) >>>>>>>>> ... >>>>>>>>> >>>>>>>>> public static function clock():jasmine.Clock { return null; } >>>>>>>>> ^ >>>>>>>>> >>>>>>>>> ----------------------------- >>>>>>>>> In the jasmine extern file >>>>>>>>> ----------------------------- >>>>>>>>> >>>>>>>>> /** >>>>>>>>> * @return {!jasmine.Clock} >>>>>>>>> */ >>>>>>>>> jasmine.clock = function() {}; >>>>>>>>> >>>>>>>>> >>>>>>>>> /** @constructor */ >>>>>>>>> jasmine.Clock = function() {}; >>>>>>>>> >>>>>>>>> >>>>>>>>> /** */ >>>>>>>>> jasmine.Clock.prototype.install = function() {}; >>>>>>>>> >>>>>>>>> >>>>>>>>> /** */ >>>>>>>>> jasmine.Clock.prototype.uninstall = function() {}; >>>>>>>>> >>>>>>>>> >>>>>>>>> /** @param {number} ms */ >>>>>>>>> jasmine.Clock.prototype.tick = function(ms) {}; >>>>>>>>> >>>>>>>>> >>>>>>>>> /** @param {!Date} date */ >>>>>>>>> jasmine.Clock.prototype.mockDate = function(date) {}; >>>>>>>>> >>>>>>>>> ----------------------------- >>>>>>>>> In jasmine.as >>>>>>>>> ----------------------------- >>>>>>>>> >>>>>>>>> /** >>>>>>>>> * @see [jasmine-2.0] >>>>>>>>> * @returns {jasmine.Clock} >>>>>>>>> */ >>>>>>>>> public static function clock():jasmine.Clock { return null; } >>>>>>>>> >>>>>>>>> ----------------------------- >>>>>>>>> clock.as >>>>>>>>> ----------------------------- >>>>>>>>> package jasmine { >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> /** >>>>>>>>> * @see [jasmine-2.0] >>>>>>>>> */ >>>>>>>>> public class Clock { >>>>>>>>> >>>>>>>>> /** >>>>>>>>> * @see [jasmine-2.0] >>>>>>>>> */ >>>>>>>>> public function Clock() { >>>>>>>>> super(); >>>>>>>>> } >>>>>>>>> >>>>>>>>> /** >>>>>>>>> * Generated doc for missing method JSDoc. >>>>>>>>> * >>>>>>>>> * @see [jasmine-2.0] >>>>>>>>> */ >>>>>>>>> public function install():void { } >>>>>>>>> >>>>>>>>> /** >>>>>>>>> * @param ms [number] >>>>>>>>> * @see [jasmine-2.0] >>>>>>>>> */ >>>>>>>>> public function tick(ms:Number):void { } >>>>>>>>> >>>>>>>>> /** >>>>>>>>> * Generated doc for missing method JSDoc. >>>>>>>>> * >>>>>>>>> * @see [jasmine-2.0] >>>>>>>>> */ >>>>>>>>> public function uninstall():void { } >>>>>>>>> >>>>>>>>> /** >>>>>>>>> * @param date [Date] >>>>>>>>> * @see [jasmine-2.0] >>>>>>>>> */ >>>>>>>>> public function mockDate(date:Date):void { } >>>>>>>>> >>>>>>>>> } >>>>>>>>> } >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Frédéric THOMAS >>>>>>> >>>>>>> >>>>> >>>> >>> >>> >> >>