Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo


#116 [Patch] Single implementation


There are some checks that prevent classes to be merged with the interface that it is the sole implementer of. The attached patch lifts some restrictions that don't make sense in this case.

The instanceof check isn't needed if the parent class is abstract.

The change in shadowsAnyMethods is required if the class has a public static method. I'm a bit uncertain if it's the best possible fix though.


  • Eric Lafortune
    Eric Lafortune

    • assigned_to: nobody --> lafortune
    • priority: 5 --> 7
  • Eric Lafortune
    Eric Lafortune

    This is a tricky area. I'll check.

  • Unfortunately, these modifications aren't enough. I also need to change the check for what classes gets initialized. Preferably it would be possible to configure which classes should be checked (only optional API:s).

    I haven't started working on this yet though, and I'm not sure I will. I will do a little bit more investigation, but it is probable that I will keep my old class merger instead as it finds more classes to merge. Your code it too correct. :-)