You could probably allow methods as well, as the vast majority of value
types are immutable. Even in C#, calling Set on a value type only works if
that value type happens to be a local variable. If it comes back from a
property then it just becomes a no-op.
Jonathan
On Wed, Jan 12, 2011 at 10:29 AM, Stuart Lodge <me at slodge.com> wrote:
> Hi all
>
> I''ve had some discussions offline about accessing the properties
of
> TimeSpan.
>
> The issue is that while the static methods on TimeSpan work, the instance
> properties don''t:
>
> t = System::TimeSpan.from_seconds(1.1) # works
> m = t.total_milliseconds # doesn''t work
>
>
> All my testing done on iron7 on WP7 of course!
>
> The route of this problem seems to be (from Tomas Matousek):
>
> The problem is that the interpreter doesn''t support instance
method calls
>> on value types:
>
>
>> if (!node.Method.IsStatic &&
node.Method.DeclaringType.IsValueType &&
>> !node.Method.DeclaringType.IsPrimitive)) _forceCompile = true;
>
>
>> Such method can update the value type in-place, which is difficult to
>> interpret. We don''t know that the method is only reading the
fields of the
>> value type, so we disallow interpretation even if we could do that.
I''ll
>> think about how to fix this but am not sure if we can do anything
>> reasonable.
>
>
> We''re thinking about this... one thing is that I think we could
allow this
> for Get methods - for readonly properties - I need to read the code a bit
(a
> lot!) more before I can comment on whether this is correct though...
>
>
> Stuart
>
> _______________________________________________
> Ironruby-core mailing list
> Ironruby-core at rubyforge.org
> http://rubyforge.org/mailman/listinfo/ironruby-core
>
>
--
Jonathan Allen
619-933-8527
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://rubyforge.org/pipermail/ironruby-core/attachments/20110112/b86f77d0/attachment.html>