NativeScript / android-dts-generator

A tool that generates TypeScript declaration files (.d.ts) from Jars
90 stars 22 forks source link

Update DtsApi.java to filter `^` return signatures #33

Closed roblav96 closed 5 years ago

roblav96 commented 5 years ago

Currently when I tried to run this against com.google.android.exoplayer:exoplayer:+ the following error occurs:

java.lang.IllegalStateException: Invalid method signature: '(V^TE;)V' : V^TE;)V 
    at edu.umd.cs.findbugs.ba.generic.GenericSignatureParser$ParameterSignatureIterator.next(GenericSignatureParser.java:119)
    at edu.umd.cs.findbugs.ba.generic.GenericSignatureParser$ParameterSignatureIterator.next(GenericSignatureParser.java:45)
    at edu.umd.cs.findbugs.ba.generic.GenericSignatureParser.getNumParameters(GenericSignatureParser.java:184)
    at edu.umd.cs.findbugs.ba.generic.GenericUtilities.getType(GenericUtilities.java:263)
    at com.telerik.dts.DtsApi.getReturnType(DtsApi.java:768)
    at com.telerik.dts.DtsApi.generateInterfaceConstructorContent(DtsApi.java:513)
    at com.telerik.dts.DtsApi.processInterfaceConstructor(DtsApi.java:501)
    at com.telerik.dts.DtsApi.generateDtsContent(DtsApi.java:139)
    at com.telerik.dts.Generator.generateDts(Generator.java:57)
    at com.telerik.dts.Generator.start(Generator.java:42)
    at com.telerik.Main.main(Main.java:37)
Exception in thread "main" java.lang.NullPointerException
    at com.telerik.dts.DtsApi.getReturnType(DtsApi.java:769)
    at com.telerik.dts.DtsApi.generateInterfaceConstructorContent(DtsApi.java:513)
    at com.telerik.dts.DtsApi.processInterfaceConstructor(DtsApi.java:501)
    at com.telerik.dts.DtsApi.generateDtsContent(DtsApi.java:139)
    at com.telerik.dts.Generator.generateDts(Generator.java:57)
    at com.telerik.dts.Generator.start(Generator.java:42)
    at com.telerik.Main.main(Main.java:37)

By adding a filter returnSignature.contains("^") the library is able to run successfully.