Gotcha... Thanks. I guess i've run into this myself with the occasionally mangled name some_h_t_m_l, but that makes perfect sense.
Thanks, Martin On Tue, Nov 10, 2009 at 7:00 PM, Tomas Matousek <tomas.matou...@microsoft.com> wrote: > Yes, the reason is that .NET naming guidelines says that two-letter > abbreviations are not camel-cased. That means we have names like > GetIPAddress, PI, GetILGenerator etc. These are mangled to get_ip_address, > pi, get_il_generator (not get_i_p_address, p_i, or get_i_l_generator). > Unmangling is inverse of mangling (name == unmangle(mangle(name))), thus > unmangling cannot turn "ip" into "Ip". > > Name-mangling is only heuristics. If some name doesn't follow the guidelines > or is ambiguous (let's say "IT" in ITManager vs. "It" in ItJustWorks) then > you need to use regular name. > > Tomas > > -----Original Message----- > From: ironruby-core-boun...@rubyforge.org > [mailto:ironruby-core-boun...@rubyforge.org] On Behalf Of Martin Smith > Sent: Tuesday, November 10, 2009 6:36 PM > To: ironruby-core@rubyforge.org > Subject: Re: [Ironruby-core] IronRuby and Me > > Thanks guys. Appreciate the (detailed) response. > > Actually, this explains quite a bit. I've run into times sporadically where > i'd be using the mangled name and it wouldn't be recognized and had no ready > explanation for it. > > Is there a specific reason that two letter words arent mangled? (I was > looking in the comments of RubyUtils.cs but didn't find anything :-P ). > > Thanks, > Martin > > On Tue, Nov 10, 2009 at 5:45 PM, Jimmy Schementi > <jimmy.scheme...@microsoft.com> wrote: >> Martin, >> >> Expected, but also a bug. IronRuby will not provide a mangled name if the >> method name contains a 2-letter-word that is not in this list: >> >> as >> by >> do >> id >> it >> if >> in >> is >> go >> my >> of >> ok >> on >> to >> up >> >> This list is pretty arbitrary ... so "me" can probably be added to it. FYI, >> the code is in >> Merlin\Main\Languages\Ruby\Ruby\Runtime\RubyUtils.cs#TryMangleName (approx. >> line 298). >> >> ~Jimmy >> >>> -----Original Message----- >>> From: ironruby-core-boun...@rubyforge.org [mailto:ironruby-core- >>> boun...@rubyforge.org] On Behalf Of Martin Smith >>> Sent: Tuesday, November 10, 2009 4:48 PM >>> To: ironruby-core@rubyforge.org >>> Subject: [Ironruby-core] IronRuby and Me >>> >>> Hello again (sorry for the double post), >>> >>> We've noticed some slightly odd behavior. IronRuby, it seems, won't >>> mangle methods that have the word "Me" in them, so if I have a method: >>> >>> UncheckMeAndMyChildren, uncheck_me_and_my_children won't work >>> >>> but for: >>> >>> UncheckSelfAndMyChildren, uncheck_self_and_my_children DOES work. >>> >>> Is this a bug or the expected behavior? >>> >>> Thanks, >>> Martin >>> _______________________________________________ >>> Ironruby-core mailing list >>> Ironruby-core@rubyforge.org >>> http://rubyforge.org/mailman/listinfo/ironruby-core >> >> _______________________________________________ >> Ironruby-core mailing list >> Ironruby-core@rubyforge.org >> http://rubyforge.org/mailman/listinfo/ironruby-core >> > _______________________________________________ > Ironruby-core mailing list > Ironruby-core@rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core > > _______________________________________________ > Ironruby-core mailing list > Ironruby-core@rubyforge.org > http://rubyforge.org/mailman/listinfo/ironruby-core > _______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core