{"action":"created","issue":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/6559","repository_url":"https://api.github.com/repos/dotnet/roslyn","labels_url":"https://api.github.com/repos/dotnet/roslyn/issues/6559/labels{/name}","comments_url":"https://api.github.com/repos/dotnet/roslyn/issues/6559/comments","events_url":"https://api.github.com/repos/dotnet/roslyn/issues/6559/events","html_url":"https://github.com/dotnet/roslyn/issues/6559","id":115146874,"number":6559,"title":"Allow implementing properties from getter and setter declared in separate interfaces","user":{"login":"OJacot-Descombes","id":12754787,"avatar_url":"https://avatars.githubusercontent.com/u/12754787?v=3","gravatar_id":"","url":"https://api.github.com/users/OJacot-Descombes","html_url":"https://github.com/OJacot-Descombes","followers_url":"https://api.github.com/users/OJacot-Descombes/followers","following_url":"https://api.github.com/users/OJacot-Descombes/following{/other_user}","gists_url":"https://api.github.com/users/OJacot-Descombes/gists{/gist_id}","starred_url":"https://api.github.com/users/OJacot-Descombes/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/OJacot-Descombes/subscriptions","organizations_url":"https://api.github.com/users/OJacot-Descombes/orgs","repos_url":"https://api.github.com/users/OJacot-Descombes/repos","events_url":"https://api.github.com/users/OJacot-Descombes/events{/privacy}","received_events_url":"https://api.github.com/users/OJacot-Descombes/received_events","type":"User","site_admin":false},"labels":[{"id":171544541,"url":"https://api.github.com/repos/dotnet/roslyn/labels/1%20-%20Planning","name":"1 - Planning","color":"cccccc","default":false},{"id":169838071,"url":"https://api.github.com/repos/dotnet/roslyn/labels/Area-Language%20Design","name":"Area-Language Design","color":"5319e7","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2015-11-04T21:01:10Z","updated_at":"2017-01-18T02:00:43Z","closed_at":null,"body":"Being able to declare separate readonly and writeonly interfaces that could be \"joined\" into a common read-write interface including **properties** and **indexers** would allow great interface designs.\n\n``` C#\npublic interface IReadOnlyFoo<out T> {\n    T Value { get; }\n}\n\npublic interface IWriteOnlyFoo<in T> {\n    T Value { set; }\n}\n\n// If you program against this interface, currently you get an \"ambiguity\" compiler error.\npublic interface IReadWriteFoo<T> : IReadOnlyFoo<T>, IWriteOnlyFoo<T> {\n}\n\n// This, however works:\npublic class ReadWriteFoo<T> : IReadOnlyFoo<T>, IWriteOnlyFoo<T> {\n    T Value { get; set; } // Implements IReadOnlyFoo<T>.Value and IWriteOnlyFoo<T>.Value\n}\n```\n"},"comment":{"url":"https://api.github.com/repos/dotnet/roslyn/issues/comments/273360698","html_url":"https://github.com/dotnet/roslyn/issues/6559#issuecomment-273360698","issue_url":"https://api.github.com/repos/dotnet/roslyn/issues/6559","id":273360698,"user":{"login":"iskiselev","id":5084964,"avatar_url":"https://avatars.githubusercontent.com/u/5084964?v=3","gravatar_id":"","url":"https://api.github.com/users/iskiselev","html_url":"https://github.com/iskiselev","followers_url":"https://api.github.com/users/iskiselev/followers","following_url":"https://api.github.com/users/iskiselev/following{/other_user}","gists_url":"https://api.github.com/users/iskiselev/gists{/gist_id}","starred_url":"https://api.github.com/users/iskiselev/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iskiselev/subscriptions","organizations_url":"https://api.github.com/users/iskiselev/orgs","repos_url":"https://api.github.com/users/iskiselev/repos","events_url":"https://api.github.com/users/iskiselev/events{/privacy}","received_events_url":"https://api.github.com/users/iskiselev/received_events","type":"User","site_admin":false},"created_at":"2017-01-18T02:00:43Z","updated_at":"2017-01-18T02:00:43Z","body":"Looks like #14164 is duplicate of it, but this one is still in planning state, other one was closed with \"Resolution-By Design\" label."}}
{"actor":{"display_login":"iskiselev"}}