Skip to content

Instantly share code, notes, and snippets.

@xeno-by
Created July 12, 2012 09:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save xeno-by/3097064 to your computer and use it in GitHub Desktop.
Save xeno-by/3097064 to your computer and use it in GitHub Desktop.
// inner: class B { ... }
class B
List(constructor B, class B1, class B2, object B3, object B4, object B5, object B6)
class B1
actual name = B$B1, javaSimpleName = B1, javaBinaryName = B/B1, javaClassName = B.B1, signature = B$B1
class B2
actual name = B$B2, javaSimpleName = B2, javaBinaryName = B/B2, javaClassName = B.B2, signature = B$B2
object B3
actual name = B$B3$, javaSimpleName = B3$, javaBinaryName = B/B3$, javaClassName = B.B3$, signature = B$B3
object B4
actual name = B$B4$, javaSimpleName = B4$, javaBinaryName = B/B4$, javaClassName = B.B4$, signature = B$B4
object B5
actual name = B$B5$, javaSimpleName = B5$, javaBinaryName = B/B5$, javaClassName = B.B5$, signature = B$B5
object B6
actual name = B$B6$, javaSimpleName = B6$, javaBinaryName = B/B6$, javaClassName = B.B6$, signature = B$B6
// inner inner: class B { class BB { ... } }
class BB
List(constructor BB, class B1, class B2, object B3, object B4, object B5, object B6)
class B1
actual name = B$BB$B1, javaSimpleName = B1, javaBinaryName = B/BB/B1, javaClassName = B.BB.B1, signature = B$BB$B1
class B2
actual name = B$BB$B2, javaSimpleName = B2, javaBinaryName = B/BB/B2, javaClassName = B.BB.B2, signature = B$BB$B2
object B3
actual name = B$BB$B3$, javaSimpleName = B3$, javaBinaryName = B/BB/B3$, javaClassName = B.BB.B3$, signature = B$BB$B3
object B4
actual name = B$BB$B4$, javaSimpleName = B4$, javaBinaryName = B/BB/B4$, javaClassName = B.BB.B4$, signature = B$BB$B4
object B5
actual name = B$BB$B5$, javaSimpleName = B5$, javaBinaryName = B/BB/B5$, javaClassName = B.BB.B5$, signature = B$BB$B5
object B6
actual name = B$BB$B6$, javaSimpleName = B6$, javaBinaryName = B/BB/B6$, javaClassName = B.BB.B6$, signature = B$BB$B6
// inner nested: class B { object BB { ... } }
object BB
List(constructor BB, class B1, class B2, object B3, object B4, object B5, object B6)
class B1
actual name = B$BB$B1, javaSimpleName = B1, javaBinaryName = B/BB/B1, javaClassName = B.BB.B1, signature = B$BB$B1
class B2
actual name = B$BB$B2, javaSimpleName = B2, javaBinaryName = B/BB/B2, javaClassName = B.BB.B2, signature = B$BB$B2
object B3
actual name = B$BB$B3$, javaSimpleName = B3$, javaBinaryName = B/BB/B3$, javaClassName = B.BB.B3$, signature = B$BB$B3
object B4
actual name = B$BB$B4$, javaSimpleName = B4$, javaBinaryName = B/BB/B4$, javaClassName = B.BB.B4$, signature = B$BB$B4
object B5
actual name = B$BB$B5$, javaSimpleName = B5$, javaBinaryName = B/BB/B5$, javaClassName = B.BB.B5$, signature = B$BB$B5
object B6
actual name = B$BB$B6$, javaSimpleName = B6$, javaBinaryName = B/BB/B6$, javaClassName = B.BB.B6$, signature = B$BB$B6
// nested: object B { ... }
object B
List(constructor B, class B1, class B2, object B3, object B4, object B5, object B6)
class B1
actual name = B$B1, javaSimpleName = B1, javaBinaryName = B/B1, javaClassName = B.B1, signature = B$$B1
class B2
actual name = B$B2, javaSimpleName = B2, javaBinaryName = B/B2, javaClassName = B.B2, signature = B$$B2
object B3
actual name = B$B3$, javaSimpleName = B3$, javaBinaryName = B/B3$, javaClassName = B.B3$, signature = B$$B3
object B4
actual name = B$B4$, javaSimpleName = B4$, javaBinaryName = B/B4$, javaClassName = B.B4$, signature = B$$B4
object B5
actual name = B$B5$, javaSimpleName = B5$, javaBinaryName = B/B5$, javaClassName = B.B5$, signature = B$$B5
object B6
actual name = B$B6$, javaSimpleName = B6$, javaBinaryName = B/B6$, javaClassName = B.B6$, signature = B$$B6
// nested inner: object B { class BB { ... } }
class BB
List(constructor BB, class B1, class B2, object B3, object B4, object B5, object B6)
class B1
actual name = B$BB$B1, javaSimpleName = B1, javaBinaryName = B/BB/B1, javaClassName = B.BB.B1, signature = B$$BB$B1
class B2
actual name = B$BB$B2, javaSimpleName = B2, javaBinaryName = B/BB/B2, javaClassName = B.BB.B2, signature = B$$BB$B2
object B3
actual name = B$BB$B3$, javaSimpleName = B3$, javaBinaryName = B/BB/B3$, javaClassName = B.BB.B3$, signature = B$$BB$B3
object B4
actual name = B$BB$B4$, javaSimpleName = B4$, javaBinaryName = B/BB/B4$, javaClassName = B.BB.B4$, signature = B$$BB$B4
object B5
actual name = B$BB$B5$, javaSimpleName = B5$, javaBinaryName = B/BB/B5$, javaClassName = B.BB.B5$, signature = B$$BB$B5
object B6
actual name = B$BB$B6$, javaSimpleName = B6$, javaBinaryName = B/BB/B6$, javaClassName = B.BB.B6$, signature = B$$BB$B6
// nested nested: object B { object BB { ... } }
object BB
List(constructor BB, class B1, class B2, object B3, object B4, object B5, object B6)
class B1
actual name = B$BB$B1, javaSimpleName = B1, javaBinaryName = B/BB/B1, javaClassName = B.BB.B1, signature = B$$BB$B1
class B2
actual name = B$BB$B2, javaSimpleName = B2, javaBinaryName = B/BB/B2, javaClassName = B.BB.B2, signature = B$$BB$B2
object B3
actual name = B$BB$B3$, javaSimpleName = B3$, javaBinaryName = B/BB/B3$, javaClassName = B.BB.B3$, signature = B$$BB$B3
object B4
actual name = B$BB$B4$, javaSimpleName = B4$, javaBinaryName = B/BB/B4$, javaClassName = B.BB.B4$, signature = B$$BB$B4
object B5
actual name = B$BB$B5$, javaSimpleName = B5$, javaBinaryName = B/BB/B5$, javaClassName = B.BB.B5$, signature = B$$BB$B5
object B6
actual name = B$BB$B6$, javaSimpleName = B6$, javaBinaryName = B/BB/B6$, javaClassName = B.BB.B6$, signature = B$$BB$B6
@xeno-by
Copy link
Author

xeno-by commented Jul 12, 2012

This is how it works when packages enter the mix:

// nested inner with packages: package foo { object B { class BB { ... } } }
class BB
List(constructor BB, class B1, class B2, object B3, object B4, object B5, object B6)
class B1
actual name = foo.B$BB$B1, javaSimpleName = B1, javaBinaryName = foo/B/BB/B1, javaClassName = foo.B.BB.B1, signature = foo.B$$BB$B1
class B2
actual name = foo.B$BB$B2, javaSimpleName = B2, javaBinaryName = foo/B/BB/B2, javaClassName = foo.B.BB.B2, signature = foo.B$$BB$B2
object B3
actual name = foo.B$BB$B3$, javaSimpleName = B3$, javaBinaryName = foo/B/BB/B3$, javaClassName = foo.B.BB.B3$, signature = foo.B$$BB$B3
object B4
actual name = foo.B$BB$B4$, javaSimpleName = B4$, javaBinaryName = foo/B/BB/B4$, javaClassName = foo.B.BB.B4$, signature = foo.B$$BB$B4
object B5
actual name = foo.B$BB$B5$, javaSimpleName = B5$, javaBinaryName = foo/B/BB/B5$, javaClassName = foo.B.BB.B5$, signature = foo.B$$BB$B5
object B6
actual name = foo.B$BB$B6$, javaSimpleName = B6$, javaBinaryName = foo/B/BB/B6$, javaClassName = foo.B.BB.B6$, signature = foo.B$$BB$B6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment