{"action":"created","issue":{"url":"https://api.github.com/repos/kohesive/klutter/issues/36","repository_url":"https://api.github.com/repos/kohesive/klutter","labels_url":"https://api.github.com/repos/kohesive/klutter/issues/36/labels{/name}","comments_url":"https://api.github.com/repos/kohesive/klutter/issues/36/comments","events_url":"https://api.github.com/repos/kohesive/klutter/issues/36/events","html_url":"https://github.com/kohesive/klutter/issues/36","id":162066657,"number":36,"title":"Do not call read-only collections immutable","user":{"login":"ilya-g","id":4257577,"avatar_url":"https://avatars.githubusercontent.com/u/4257577?v=3","gravatar_id":"","url":"https://api.github.com/users/ilya-g","html_url":"https://github.com/ilya-g","followers_url":"https://api.github.com/users/ilya-g/followers","following_url":"https://api.github.com/users/ilya-g/following{/other_user}","gists_url":"https://api.github.com/users/ilya-g/gists{/gist_id}","starred_url":"https://api.github.com/users/ilya-g/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ilya-g/subscriptions","organizations_url":"https://api.github.com/users/ilya-g/orgs","repos_url":"https://api.github.com/users/ilya-g/repos","events_url":"https://api.github.com/users/ilya-g/events{/privacy}","received_events_url":"https://api.github.com/users/ilya-g/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2016-06-24T02:59:29Z","updated_at":"2016-06-24T13:38:06Z","closed_at":null,"body":"\"Immutable\" means that collection won't change its contents by any means. Current implementation allows them to be changed when the delegate's content changes. \r\nTherefore the implementations provide true read-only view of delegate collections, so I propose to call them read-only:\r\n- `ReadOnlyList`,\r\n- `ReadOnlySet`,\r\n- etc"},"comment":{"url":"https://api.github.com/repos/kohesive/klutter/issues/comments/228347702","html_url":"https://github.com/kohesive/klutter/issues/36#issuecomment-228347702","issue_url":"https://api.github.com/repos/kohesive/klutter/issues/36","id":228347702,"user":{"login":"apatrida","id":182340,"avatar_url":"https://avatars.githubusercontent.com/u/182340?v=3","gravatar_id":"","url":"https://api.github.com/users/apatrida","html_url":"https://github.com/apatrida","followers_url":"https://api.github.com/users/apatrida/followers","following_url":"https://api.github.com/users/apatrida/following{/other_user}","gists_url":"https://api.github.com/users/apatrida/gists{/gist_id}","starred_url":"https://api.github.com/users/apatrida/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/apatrida/subscriptions","organizations_url":"https://api.github.com/users/apatrida/orgs","repos_url":"https://api.github.com/users/apatrida/repos","events_url":"https://api.github.com/users/apatrida/events{/privacy}","received_events_url":"https://api.github.com/users/apatrida/received_events","type":"User","site_admin":false},"created_at":"2016-06-24T13:38:06Z","updated_at":"2016-06-24T13:38:06Z","body":"They are already `ReadOnly` so it is odd to call `list.asReadOnly()` because people might think \"it is already read only\"\r\n\r\nSo I agree, but not sure the right naming.\r\n\r\nIf I have `toImmutable()` then that would copy the list then make it readonly which is in effect immutable because there is no way to change it without some evil reflection trick to get to the delegated list.\r\n\r\nwith `asProtected()` or `asReadOnly()` or `asFenced()` or `asWriteBlocked()` or `asRealReadOnly()` they have the issue you describe.  \r\n\r\nSo need other naming ideas for the method calls, the classes I can easily rename to `ProtectedReadOnly*`\r\n"}}
{"actor":{"display_login":"apatrida"}}