On Wed, May 25, 2011 at 5:51 PM, Grzegorz Kossakowski < grzegorz.kossakow...@gmail.com> wrote:
> Hi, > > Poking around a bit more I found that gwtc seems to assume internally > that whenever type name contains '$' it's in "binary form" and if it > doesn't contain dollar sign then it can be considered to be in "source > form". It's worth noting (and it's admitted in gwtc's internals) that > this condition doesn't split of all type names into disjoint union of > two respective sets. > > Anyway, my question is: how much of gwt internals rely on this > distinction? I noticed that gwtc is doing handful number of > conversions between those two forms. This is particularly problematic > for my work because jribble can have dollar sign in it's type name and > this would be extremely hard to change. > > Also, it looks like Java allows type names containing dollar sign: > > mac-grek:javajunk grek$ echo 'class A$B {}' > A\$B.java > mac-grek:javajunk grek$ javac 'A$B.java' > mac-grek:javajunk grek$ javap 'A$B' > Compiled from "A$B.java" > class A$B extends java.lang.Object{ > A$B(); > } > FYI, Java does allow '$'s in class names, but IIRC javac can get confused, for example, if you pipe in two classes into the same compile run: class A { static class B { } } class A$B { } They're two distinct classes, but happen to have identical names. That said, I think we generally try to not assign semantic information to '$'s in class names. > Is gwtc handling those cases in pure java environment properly? > > -- > Grzegorz Kossakowski > > -- > http://groups.google.com/group/Google-Web-Toolkit-Contributors > -- http://groups.google.com/group/Google-Web-Toolkit-Contributors