I guess I'm good, you can checkout add-CollectImportPass if you like to review 
it.

Thanks,
Frédéric THOMAS


----------------------------------------
> From: webdoubl...@hotmail.com
> To: dev@flex.apache.org
> Subject: RE: [Externs] jasmine-2.0.js
> Date: Tue, 7 Jul 2015 02:44:54 +0100
>
>> It's because ? means OR NULL in externs. We are using the annotation
>> resolver which passes back implicit meaning, so it's not saying it's
>> optional it's saying it CAN be null, but something MUST be passed.
>
> Thanks for the precision, actually, I forgot to check the constructors in 
> more :P
> So, better I finish to write the tests, manage the UnionType, etc.. and come 
> back to you.
>
> Happy painting ! ;-)
> Frédéric THOMAS
>
>
> ----------------------------------------
>> Date: Mon, 6 Jul 2015 18:48:03 -0400
>> Subject: Re: [Externs] jasmine-2.0.js
>> From: teotigraphix...@gmail.com
>> To: dev@flex.apache.org
>>
>> On Mon, Jul 6, 2015 at 11:44 AM, Frédéric THOMAS <webdoubl...@hotmail.com>
>> wrote:
>>
>>> Also I'm trying to write tests for this pass and I've got something that
>>> doesn't pass, why the "bar" parameter is consider as optional in the
>>> collectImport.CollectImports constructor ?
>>> see the emmitted "@param bar [(foo.Bar|null)] ", why not "@param bar
>>> {foo.Bar} " ?
>>>
>>
>>
>> It's because ? means OR NULL in externs. We are using the annotation
>> resolver which passes back implicit meaning, so it's not saying it's
>> optional it's saying it CAN be null, but something MUST be passed.
>>
>> So anything that is;
>>
>> @param bar {foo.Bar}
>>
>> is actually
>>
>> @param bar {foo.Bar?}
>>
>> If you use !, it means it cannot be null, a value must be passed that is
>> not null.
>>
>> Mike
>>
>>
>>>
>>> /**
>>> * @constructor
>>> * @extends {superClasses.Import}
>>> * @param {foo.Bar} bar
>>> * @param {number} value
>>> */
>>> collectImport.CollectImports = function(bar, value) {};
>>>
>>> EMMITTED TO:
>>>
>>> package collectImport {
>>>
>>> import superClasses.Import;
>>>
>>> /**
>>> * @see [collect_import]
>>> */
>>> public class CollectImports extends superClasses.Import {
>>>
>>> /**
>>> * @param bar [(foo.Bar|null)]
>>> * @param value [number]
>>> * @see [collect_import]
>>> */
>>> public function CollectImports(bar:foo.Bar, value:Number) {
>>> super();
>>> }
>>>
>>> Thanks,
>>> Frédéric THOMAS
>>>
>>>
>>> ----------------------------------------
>>>> From: webdoubl...@hotmail.com
>>>> To: dev@flex.apache.org
>>>> Subject: RE: [Externs] jasmine-2.0.js
>>>> Date: Mon, 6 Jul 2015 00:18:10 +0100
>>>>
>>>>> I am going to be busy most of the week remodeling my mother in laws
>>>>> bathroom starting tomorrow. So if you want to try a new custom pass like
>>>>> ResolveImportPass, go for it, I will just stay out of the way. I think
>>> it
>>>>> would be good for you. :) If not, no worries, you gave me the idea. haha
>>>>>
>>>>> If you did, look at it like this, since all imports and logic therin are
>>>>> totally dependent on what the compiler actual saves into the model,
>>> logic
>>>>> says this needs to be the last or one of the last passes, from my
>>>>> perspective, it needs to be the last.
>>>>>
>>>>> If you make it the last, then this pass is not coupled to us fixing bugs
>>>>> ahead of it. Say we find out we need to add another structure of AST
>>>>> parsing for a node structure I havn't implemented yet, well we are safe.
>>>>>
>>>>> Why safe? Because in this import pass, you are using the MODEL, so no
>>> AST.
>>>>> Instead of worrying about resolving imports during AST traversal, you
>>> are
>>>>> using what is already in the container after all that complex parsing is
>>>>> finished.
>>>>>
>>>>> So this pass, you would use your skills at knowing "what" in each
>>> subclass
>>>>> of BaseReference could contain a type. Then write your logic pass to
>>>>> traverse Classes, then into each classes members, then loop through each
>>>>> member and analyze their types and do your import testing logic there.
>>>>>
>>>>> Once you find instances of imports that need to be saves, your current
>>>>> context is already the ClassReference, so call classRef.addImport(). :)
>>>>
>>>>
>>>> You can review the add-CollectImportPass branch before I merge it when
>>> you have a chance.
>>>> Thanks,
>>>> Frédéric THOMAS
>>>>
>>>>
>>>> ----------------------------------------
>>>>> Date: Sun, 28 Jun 2015 14:23:57 -0400
>>>>> Subject: Re: [Externs] jasmine-2.0.js
>>>>> From: teotigraphix...@gmail.com
>>>>> To: dev@flex.apache.org
>>>>>
>>>>> Kewl.
>>>>>
>>>>> I am going to be busy most of the week remodeling my mother in laws
>>>>> bathroom starting tomorrow. So if you want to try a new custom pass like
>>>>> ResolveImportPass, go for it, I will just stay out of the way. I think
>>> it
>>>>> would be good for you. :) If not, no worries, you gave me the idea. haha
>>>>>
>>>>> If you did, look at it like this, since all imports and logic therin are
>>>>> totally dependent on what the compiler actual saves into the model,
>>> logic
>>>>> says this needs to be the last or one of the last passes, from my
>>>>> perspective, it needs to be the last.
>>>>>
>>>>> If you make it the last, then this pass is not coupled to us fixing bugs
>>>>> ahead of it. Say we find out we need to add another structure of AST
>>>>> parsing for a node structure I havn't implemented yet, well we are safe.
>>>>>
>>>>> Why safe? Because in this import pass, you are using the MODEL, so no
>>> AST.
>>>>> Instead of worrying about resolving imports during AST traversal, you
>>> are
>>>>> using what is already in the container after all that complex parsing is
>>>>> finished.
>>>>>
>>>>> So this pass, you would use your skills at knowing "what" in each
>>> subclass
>>>>> of BaseReference could contain a type. Then write your logic pass to
>>>>> traverse Classes, then into each classes members, then loop through each
>>>>> member and analyze their types and do your import testing logic there.
>>>>>
>>>>> Once you find instances of imports that need to be saves, your current
>>>>> context is already the ClassReference, so call classRef.addImport(). :)
>>>>>
>>>>> Mike
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Sun, Jun 28, 2015 at 2:13 PM, Frédéric THOMAS <
>>> webdoubl...@hotmail.com>
>>>>> wrote:
>>>>>
>>>>>>> All I meant is that 75% of the time we would just want to save things
>>> in
>>>>>>> the model or a reference, such that you use addImport() during the
>>>>>>> resolution. Then it keeps the emit() phase straight burn rubber and
>>> loop
>>>>>>> through all existing model structures, where imports would be just a
>>> list
>>>>>>> that emitImport() iterates through, no logic.
>>>>>>
>>>>>> Got it !
>>>>>>
>>>>>>> I AM NOT saying what you did was wrong, I am just offering a look into
>>>>>> how
>>>>>>> I set it up. You know how I got this pattern? From my massive
>>> mistakes in
>>>>>>> code generators of past. :) I realized that an emit phase needs to be
>>>>>>> stupid and not dependent on any type of intelligence, just needs to
>>>>>> create
>>>>>>> what already exists.
>>>>>>
>>>>>> I'm in a phase where I'm learning compiler things and indeed I will do
>>>>>> some mistakes
>>>>>> or I won't be as precise as you who have experience on it.
>>>>>> Therefore I can accept critics and learn from your explanations :-)
>>>>>>
>>>>>>> This can also solve many problems at once. So I haven't got back into
>>> the
>>>>>>> code BUT my intuition says we need a universal solution for any type
>>> of
>>>>>>> TYPE that is attached to a member, identifier such as a param type,
>>>>>> return
>>>>>>> type, filed type, superclass and interface(already taken care of using
>>>>>>> addImport()).
>>>>>>>
>>>>>>> See where I am coming from? We know that every type is eventually
>>> going
>>>>>> to
>>>>>>> need to be scanned for imports and validated.
>>>>>>
>>>>>> Yes, actually, I was expecting to see a specific pass for that.
>>>>>>
>>>>>>> Dude, I just don't want to come off bossy or condescending, I love you
>>>>>>> help. A lot can be added to this compiler that could be very
>>> interesting.
>>>>>>> So having you understand my design intention is really important to
>>> me.
>>>>>> :)
>>>>>>
>>>>>> Don't worry, I don't think you are bossy or condescending Mike, I'm
>>>>>> reading you
>>>>>> and try to put in parallel the new informations you give and what I've
>>>>>> seen in the code
>>>>>> for a better understanding, that's it.
>>>>>>
>>>>>> Cheers,
>>>>>> Frédéric THOMAS
>>>>>>
>>>>>>
>>>>>> ----------------------------------------
>>>>>>> Date: Sun, 28 Jun 2015 13:48:02 -0400
>>>>>>> Subject: Re: [Externs] jasmine-2.0.js
>>>>>>> From: teotigraphix...@gmail.com
>>>>>>> To: dev@flex.apache.org
>>>>>>>
>>>>>>> Fred you did an awesome job. :)
>>>>>>>
>>>>>>> All I meant is that 75% of the time we would just want to save things
>>> in
>>>>>>> the model or a reference, such that you use addImport() during the
>>>>>>> resolution. Then it keeps the emit() phase straight burn rubber and
>>> loop
>>>>>>> through all existing model structures, where imports would be just a
>>> list
>>>>>>> that emitImport() iterates through, no logic.
>>>>>>>
>>>>>>> I AM NOT saying what you did was wrong, I am just offering a look into
>>>>>> how
>>>>>>> I set it up. You know how I got this pattern? From my massive
>>> mistakes in
>>>>>>> code generators of past. :) I realized that an emit phase needs to be
>>>>>>> stupid and not dependent on any type of intelligence, just needs to
>>>>>> create
>>>>>>> what already exists.
>>>>>>>
>>>>>>> This can also solve many problems at once. So I haven't got back into
>>> the
>>>>>>> code BUT my intuition says we need a universal solution for any type
>>> of
>>>>>>> TYPE that is attached to a member, identifier such as a param type,
>>>>>> return
>>>>>>> type, filed type, superclass and interface(already taken care of using
>>>>>>> addImport()).
>>>>>>>
>>>>>>> See where I am coming from? We know that every type is eventually
>>> going
>>>>>> to
>>>>>>> need to be scanned for imports and validated.
>>>>>>>
>>>>>>> Dude, I just don't want to come off bossy or condescending, I love you
>>>>>>> help. A lot can be added to this compiler that could be very
>>> interesting.
>>>>>>> So having you understand my design intention is really important to
>>> me.
>>>>>> :)
>>>>>>>
>>>>>>> Mike
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Sun, Jun 28, 2015 at 1:37 PM, Frédéric THOMAS <
>>>>>> webdoubl...@hotmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>>> Fred pretty much iterated things correctly.
>>>>>>>>>
>>>>>>>>> The ResolvePackageNamePass I haven't to get back to. I was in the
>>>>>> middle
>>>>>>>> of
>>>>>>>>> implementing something when I got it to work in another place.
>>>>>>>>>
>>>>>>>>> There is a pattern to how things are parsed so most of the time it's
>>>>>>>> better
>>>>>>>>> to set state as nodes/references are being added to the model. In
>>> the
>>>>>>>> case
>>>>>>>>> of imports, I don't see any problems right now with checking during
>>> the
>>>>>>>>> emit phase but, if the model was more interactive during the
>>> session,
>>>>>>>> this
>>>>>>>>> type of logic should happen during the resolve phase so the model
>>> with
>>>>>>>> it's
>>>>>>>>> references has a correct state if there is any logic happening
>>> between
>>>>>>>> two
>>>>>>>>> references.
>>>>>>>>
>>>>>>>> Thanks for the explanation, I will take the time to do some debug
>>> spins
>>>>>> to
>>>>>>>> understand
>>>>>>>> when the phases are called, what they do and what classes are
>>> involved.
>>>>>>>> Given it is a fairly small transpiler and despite the recursive
>>> visitor
>>>>>>>> pattern, I guess I can do it.
>>>>>>>>
>>>>>>>>> How much are you working on right now Fred? I just ask because I
>>> don't
>>>>>>>> want
>>>>>>>>> to create any conflicts.
>>>>>>>>
>>>>>>>> Go ahead Mike, I'm done with that at the moment, I did my last
>>> cleanup
>>>>>>>> already.
>>>>>>>> Anyway, better I work on a branch and commit the branch instead for
>>>>>> review
>>>>>>>> next time.
>>>>>>>>
>>>>>>>> Frédéric THOMAS
>>>>>>>>
>>>>>>>>
>>>>>>>> ----------------------------------------
>>>>>>>>> Date: Sun, 28 Jun 2015 13:23:15 -0400
>>>>>>>>> Subject: Re: [Externs] jasmine-2.0.js
>>>>>>>>> From: teotigraphix...@gmail.com
>>>>>>>>> To: dev@flex.apache.org
>>>>>>>>>
>>>>>>>>> Fred pretty much iterated things correctly.
>>>>>>>>>
>>>>>>>>> The ResolvePackageNamePass I haven't to get back to. I was in the
>>>>>> middle
>>>>>>>> of
>>>>>>>>> implementing something when I got it to work in another place.
>>>>>>>>>
>>>>>>>>> There is a pattern to how things are parsed so most of the time it's
>>>>>>>> better
>>>>>>>>> to set state as nodes/references are being added to the model. In
>>> the
>>>>>>>> case
>>>>>>>>> of imports, I don't see any problems right now with checking during
>>> the
>>>>>>>>> emit phase but, if the model was more interactive during the
>>> session,
>>>>>>>> this
>>>>>>>>> type of logic should happen during the resolve phase so the model
>>> with
>>>>>>>> it's
>>>>>>>>> references has a correct state if there is any logic happening
>>> between
>>>>>>>> two
>>>>>>>>> references.
>>>>>>>>>
>>>>>>>>> How much are you working on right now Fred? I just ask because I
>>> don't
>>>>>>>> want
>>>>>>>>> to create any conflicts.
>>>>>>>>>
>>>>>>>>> Mike
>>>>>>>>> .
>>>>>>>>>
>>>>>>>>> On Sat, Jun 27, 2015 at 5:58 PM, Michael Schmalle <
>>>>>>>> teotigraphix...@gmail.com
>>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> Hey Fred, I was out all day. I will have some time in the morning
>>> to
>>>>>>>> look
>>>>>>>>>> at what you did and comment. :)
>>>>>>>>>>
>>>>>>>>>> Mike
>>>>>>>>>>
>>>>>>>>>> On Sat, Jun 27, 2015 at 5:27 PM, Frédéric THOMAS <
>>>>>>>> webdoubl...@hotmail.com>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> Just to explain what I did, especially to folks who would like to
>>> get
>>>>>>>>>>> their hand dirty on the compiler but like me, don't know how it
>>> works
>>>>>>>> :-)
>>>>>>>>>>>
>>>>>>>>>>> I was adding jasmine-2.0.js [1], a file that contains only jsDoc
>>>>>>>>>>> (parameters and return type descriptions) and declarations, no
>>>>>>>>>>> implementations.
>>>>>>>>>>> When I say "adding jasmine-2.0.js" I mean, transpile this .js
>>> file to
>>>>>>>> .as
>>>>>>>>>>> and then compile it to a .swc.
>>>>>>>>>>>
>>>>>>>>>>> The transpilation part is done by EXTERNC
>>>>>>>>>>>
>>>>>>>>>>> You call it like that:
>>>>>>>>>>>
>>>>>>>>>>> <java jar="${basedir}/compiler.jx/lib/externc.jar" fork="true"
>>>>>>>>>>> failonerror="false">
>>>>>>>>>>> <arg value="+flexlib=${env.ASJS_HOME}/frameworks" />
>>>>>>>>>>> <arg value="-debug" />
>>>>>>>>>>> <arg
>>>>>>>>>>>
>>>>>>>>
>>>>>>
>>> value="-load-config=${basedir}/externs/jasmine/jasmine-compile-config.xml"
>>>>>>>>>>> />
>>>>>>>>>>>
>>>>>>>>>>> In the jasmine-compile-config.xml, you can exclude classes and
>>>>>> member,
>>>>>>>>>>> for example, in the jasmine.Spec class, I excluded the variable
>>>>>>>> $injector
>>>>>>>>>>> as its type was coming from the Angular library that is not yet
>>>>>>>> transpiled.
>>>>>>>>>>>
>>>>>>>>>>> <field-exclude>
>>>>>>>>>>> <class>jasmine.Spec</class>
>>>>>>>>>>> <field>$injector</field>
>>>>>>>>>>> </field-exclude>
>>>>>>>>>>>
>>>>>>>>>>> You can also exclude classes and functions.
>>>>>>>>>>>
>>>>>>>>>>> The compile part is done by the falcon compc as follow:
>>>>>>>>>>>
>>>>>>>>>>> <java
>>>>>> jar="${basedir}/compiler/generated/dist/sdk/lib/falcon-compc.jar"
>>>>>>>>>>> fork="true"
>>>>>>>>>>> failonerror="true">
>>>>>>>>>>> <arg value="+flexlib=${env.ASJS_HOME}/frameworks" />
>>>>>>>>>>> <arg value="-debug" />
>>>>>>>>>>> <arg
>>>>>>>>>>>
>>> value="-load-config=${basedir}/externs/jasmine/compile-config.xml" />
>>>>>>>>>>> <arg
>>>>>>>>>>>
>>> value="-output=${basedir}/externs/jasmine/out/bin/jasmine-2.0.swc" />
>>>>>>>>>>> </java>
>>>>>>>>>>>
>>>>>>>>>>> The problem was that this last part was failing with an NPE a
>>> Type of
>>>>>>>>>>> something:
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>
>>>>>>
>>> org.apache.flex.compiler.internal.scopes.TypeScope.getPropertyForMemberAccess(TypeScope.java:344)
>>>>>>>>>>>
>>>>>>>>>>> Even looking closely at the code, I didn't get why it was failing
>>> but
>>>>>>>> for
>>>>>>>>>>> sure, because it was trying to compile one of the transpiled .as
>>>>>> file,
>>>>>>>> this
>>>>>>>>>>> transpiled code was wrong.
>>>>>>>>>>> Looking at those .as, it was easy to see that some import were
>>>>>> missing.
>>>>>>>>>>>
>>>>>>>>>>> So, why the 2 others externs (js and jquery) had no issues ?
>>>>>>>>>>> It is always surprising to see something working on all the things
>>>>>>>> except
>>>>>>>>>>> of yours, but it can help you too :-)
>>>>>>>>>>>
>>>>>>>>>>> So, I've been looking at those other transpiled .as files from
>>>>>> existing
>>>>>>>>>>> externs to see if they had imports and they were some.
>>>>>>>>>>> I then created a mini jasmine.js containing only the faulty case
>>>>>> only,
>>>>>>>>>>> that, from what I've been able to determinate, was that the import
>>>>>> was
>>>>>>>> not
>>>>>>>>>>> generated when a static function had a return type of a class
>>> created
>>>>>>>> via a
>>>>>>>>>>> function constructor, so, I filled this mini jasmine.js with the
>>>>>>>> equivalent
>>>>>>>>>>> of a static function like this:
>>>>>>>>>>>
>>>>>>>>>>> /**
>>>>>>>>>>> * @return {!jasmine.Clock}
>>>>>>>>>>> */
>>>>>>>>>>> jasmine.clock = function() {};
>>>>>>>>>>>
>>>>>>>>>>> Which should transpile in AS3, something like:
>>>>>>>>>>>
>>>>>>>>>>> import jasmine.Clock;
>>>>>>>>>>> public static function clock():Clock {}
>>>>>>>>>>>
>>>>>>>>>>> and a function constructor like this:
>>>>>>>>>>>
>>>>>>>>>>> /** @constructor */
>>>>>>>>>>> jasmine.Clock = function() {};
>>>>>>>>>>>
>>>>>>>>>>> which transpile:
>>>>>>>>>>>
>>>>>>>>>>> package jasmine {
>>>>>>>>>>> public class Clock {}
>>>>>>>>>>> }
>>>>>>>>>>>
>>>>>>>>>>> Created a test class based on those Mike created for the previous
>>>>>>>> externs
>>>>>>>>>>> doing:
>>>>>>>>>>>
>>>>>>>>>>> // jasmine, the main jasmine class.
>>>>>>>>>>> ClassReference jasmine = model.getClassReference("jasmine");
>>>>>>>>>>> assertNotNull(jasmine);
>>>>>>>>>>>
>>>>>>>>>>> assertTrue(jasmine.hasImport("jasmine.Clock"));
>>>>>>>>>>>
>>>>>>>>>>> The hasImport method didn't exist on ClassReference but it was a
>>>>>>>>>>> addImport(), I follow to where it was called in
>>> ResolvePackagesPass
>>>>>>>> hoping
>>>>>>>>>>> to find a missing case but after debug spin I wasn't able to do
>>> what
>>>>>> I
>>>>>>>>>>> expected, I'm not sure I understood all the logic in this class
>>> but
>>>>>> it
>>>>>>>>>>> looked like the Node of my return type was never visited and
>>>>>> therefore
>>>>>>>>>>> wasn't able to add my import here.
>>>>>>>>>>>
>>>>>>>>>>> But wait, in the ClassReference, I have a
>>>>>>>>>>>
>>>>>>>>>>> public MethodReference addMethod(Node node, String functionName,
>>>>>>>>>>> JSDocInfo comment, boolean isStatic)
>>>>>>>>>>>
>>>>>>>>>>> To me it would be enough to add the import to the list of imports
>>> to
>>>>>> be
>>>>>>>>>>> emitted when the MethodReference is to be added, I just had to
>>>>>>>> determinate
>>>>>>>>>>> if the return type given in the jsDoc was not from the current
>>>>>>>> package, the
>>>>>>>>>>> given method not excluded, the given return type neither !
>>>>>>>>>>>
>>>>>>>>>>> My test was passing was I was able to compile with this new code
>>> the
>>>>>>>> old
>>>>>>>>>>> externs.
>>>>>>>>>>>
>>>>>>>>>>> The only thing I had to do to finish to compile the jasmine extern
>>>>>> was
>>>>>>>> to
>>>>>>>>>>> emit the imports for the global functions too as they shown to be
>>>>>>>> faulty
>>>>>>>>>>> for the same reasons.
>>>>>>>>>>>
>>>>>>>>>>> Mike will probably tell me now where my logic was wrong now :-)
>>>>>>>>>>>
>>>>>>>>>>> Frédéric THOMAS
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> ----------------------------------------
>>>>>>>>>>>> From: webdoubl...@hotmail.com
>>>>>>>>>>>> To: dev@flex.apache.org
>>>>>>>>>>>> Subject: RE: [Externs] jasmine-2.0.js
>>>>>>>>>>>> Date: Sat, 27 Jun 2015 20:43:43 +0100
>>>>>>>>>>>>
>>>>>>>>>>>> Ok, done !
>>>>>>>>>>>>
>>>>>>>>>>>> I forgot to uncomment the externc build of jasmine and print the
>>>>>>>> global
>>>>>>>>>>> function imports !
>>>>>>>>>>>>
>>>>>>>>>>>> Frédéric THOMAS
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> ----------------------------------------
>>>>>>>>>>>>> From: webdoubl...@hotmail.com
>>>>>>>>>>>>> To: dev@flex.apache.org
>>>>>>>>>>>>> Subject: RE: [Externs] jasmine-2.0.js
>>>>>>>>>>>>> Date: Sat, 27 Jun 2015 20:12:16 +0100
>>>>>>>>>>>>>
>>>>>>>>>>>>>> I pushed the changes which are ready to be reviewed.
>>>>>>>>>>>>>
>>>>>>>>>>>>> oups, hold on, I had some things commented that hidden other
>>>>>>>> problems,
>>>>>>>>>>> I will continue on it.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Frédéric THOMAS
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> ----------------------------------------
>>>>>>>>>>>>>> From: webdoubl...@hotmail.com
>>>>>>>>>>>>>> To: dev@flex.apache.org
>>>>>>>>>>>>>> Subject: RE: [Externs] jasmine-2.0.js
>>>>>>>>>>>>>> Date: Sat, 27 Jun 2015 18:31:32 +0100
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> 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
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>>
>>>>
>>>
>>>
>
                                          

Reply via email to