[Ironruby-core] Code Review: EventsAndSites5

Tomas Matousek Tomas.Matousek at microsoft.com
Tue Feb 24 19:12:49 EST 2009

tfpt review "/shelveset:EventsAndSites5;REDMOND\tomat"

DLR, Python:

-          Refactors Python's RelfectedEvent and moves the language independent part to DLR EventTracker.

-          Fixes CompilerHelpers.GetCallableMethod - it didn't throw for non-visible methods since TryGetCallableMethod never returns null.

-          Passes "run 0".


-          Implements events using EventTracker - an event can be hooked and unhooked in 2 ways now:


class C { public event Action<string, string> OnFoo; }

def handler a,b
    puts ""handler: #{a} #{b}""

c = C.new

# using a block:
h = c.on_foo { |a,b| ... }

# using a method object:
h = method(:handler)

-          Reimplements Enumerable::Enumerator, implements missing features and fixes bugs.

-          Changes default protocol for CLR string to allow nil unless NotNull attribute is specificed.

-          Removes static sites from builtins and YAML.

-          Refactors reflection cache generator to produce merge-friendly source code.

-          Disables protected method test - we relied on the above bug in DLR. We need to implement protected visibility check correctly.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20090224/d924ad47/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: EventsAndSites5.diff
Type: application/octet-stream
Size: 290649 bytes
Desc: EventsAndSites5.diff
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20090224/d924ad47/attachment-0001.obj>

More information about the Ironruby-core mailing list