Skip to content

Conversation

@oscar54321
Copy link

@oscar54321 oscar54321 commented Oct 11, 2021

Dear Joel,

#1 I took the liberty of making changes to address the issue #72 when collection item proxies created were of incorrect type. Please find PR below that addresses the issue.

#2 This is something I am not very fluent with. My gut tells me that the declaration below
public interface IChangeTrackable<T> : IChangeTrackable
should be changed to

public interface IChangeTrackable<out T> : IChangeTrackable (i.e. to to being contravariant).

This, however, causes conflicts with GetOriginalValue declaration.

TResult GetOriginalValue<TResult>(Expression<Func<T, TResult>> selector);
I am, unfortunately, not quite at arm lengths with contra- and co- variant interfaces and cannot clearly propose the best plant of action. Besides this strategical idea, my changes are quite limited and all the existing tests pass.

Vladimir Gaytanov (Developer) added 2 commits October 10, 2021 23:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant