Thanks Jens, I didn't know about that document. Do you happen to have links in any other documents like that?
Thanks On Wed, Aug 16, 2017 at 1:17 PM, Jens <[email protected]> wrote: > > > Am Mittwoch, 16. August 2017 09:24:49 UTC+2 schrieb Bill Tang: >> >> I am working on a Jsinterop wrapper for the GSAP javascript library, and >> I am quite new to GWT, so I have come across a few problems I am not sure >> how to solve. >> >> My main issue revolves around trying to wrap javascript functions into >> Java objects. >> >> For example, if I have a native javascript function that has a function >> as one of its parameters, how can I go about wrapping this function >> in java? >> > > The parameter that is a JS Function should be modeled using a Java > functional interface, e.g. JsFunction<In, Out> { Out exec(In input); }. > Then you can use Java method references or lambdas. > > > >> And if a javascript class has a function has one of its properties, how >> can I go about wrapping this property? >> > > Similar as above. In Java the property type would be a @JsFunction > annotated interface. > > > I've had some success using the @JsFunction annotation along with >> functional interfaces, but I am faced with the problem >> where I have to declare return types, parameters, and paramater types in >> the java interface, when I want to be able to supply >> any arbitrary function, just like I would in native javascript. Is there >> any way to mimic this functionality? >> > > Java is strongly typed, so some JS things are not possible in Java. Do you > have a concrete example? Usually JS libs have some rules to functions and > which parameters they expect. If you have trouble with so called "union > types" you can take a look at https://docs.google.com/ > document/d/14mQeAGQ9M_5uTTUbzRQzCYETA887dTO-xFLtQhgUXXk/edit to see how > the jsinterop generator handles it. > > -- J. > > -- > You received this message because you are subscribed to the Google Groups > "GWT Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/google-web-toolkit. > For more options, visit https://groups.google.com/d/optout. > -- Vassilis Virvilis -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
