[Soot-list] Question for Jimple code

Alexandre alexandre.bartel at uni.lu
Fri Apr 14 03:13:28 EDT 2017


Hi Byungkwon,

The dollar sign is used to represent nested classes (inner classes and 
anonymous classes).

For instance, for the following class:

class YourClass {
  // inner class example
  class YourInnerClass {
  }

  // anonymous class example
  void m() {
   Toto anonymous = new Toto () {
   };
}

, the Java compiler generates three classes:

1) YourClass -> regular class
2) YourClass$YourInnerClass -> "$ + name" for inner classes
3) YourClass$1 -> "$ + number" for anonymous classes

Cheers,
Alexandre

On 04/14/2017 08:10 AM, Byungkwon Choi wrote:
> Dear all,
>
> I have developed a static analysis framework using Soot.
> My question is the following.
>
> */What is the meaning of the dollar sign at the end of the class name?/*
> */
> /*
> When I generated Jimple files for an app 'wish' using Soot, there are
> several classes as the following.
>
>    com.contextlogic.wish.ui.fragment.filterfeed.FilterFeedFragment
>    com.contextlogic.wish.ui.fragment.filterfeed.FilterFeedFragment$1
>    com.contextlogic.wish.ui.fragment.filterfeed.FilterFeedFragment$2
>    com.contextlogic.wish.ui.fragment.filterfeed.FilterFeedFragment$3
>    ...
>    com.contextlogic.wish.ui.fragment.filterfeed.FilterFeedFragment$10
>    com.contextlogic.wish.ui.fragment.filterfeed.FilterFeedFragment$10$1
>
> Are they kind of partial classes? What are they?
>
> Best regards,
> Yours,
> Byungkwon Choi
>
>
> _______________________________________________
> Soot-list mailing list
> Soot-list at CS.McGill.CA
> https://mailman.CS.McGill.CA/mailman/listinfo/soot-list
>


More information about the Soot-list mailing list