[Ironruby-core] Code Review: MoreSites4
Martin.Maly at microsoft.com
Tue Dec 9 21:23:28 EST 2008
DLR looks good
From: Tomas Matousek
Sent: Tuesday, December 09, 2008 6:16 PM
To: IronRuby External Code Reviewers; DLR Code Reviews
Cc: ironruby-core at rubyforge.org
Subject: Code Review: MoreSites4
tfpt review "/shelveset:MoreSites4;REDMOND\tomat"
Inherits SiteLocalStorage<T> from SiteLocalStorage class and enables any subclass of SiteLocalStorage to be created as a storage for data in a rule.
Implements multiple SiteLocalStorage subclasses for the most frequent site storage types: CallSiteStorage, BinaryOpStorage, UnaryOpStorage, ConversionStorage.
Implements ConvertToHashAction, fixes implementation of ConvertToSAction.
Conversion actions now use RubyContext not RubyScope. This simplifies their calls from libraries yet causes a minor incompatibility with MRI: if a parameter-less method that works with a local scope, such as "private", is aliased and given the name of a conversion method ("to_s", e.g.) and a conversion of an object with such aliased method is attempted, the scope-manipulating method fails to update the scope properly. This is not a real world scenario so it should be fine to ignore it. The fix would require to define 2 instances of each protocol conversion action - one HasScope flag and the other without it.
Removes more static sites.
More information about the Ironruby-core