{"action":"created","issue":{"url":"https://api.github.com/repos/eclipse/omr/issues/3349","repository_url":"https://api.github.com/repos/eclipse/omr","labels_url":"https://api.github.com/repos/eclipse/omr/issues/3349/labels{/name}","comments_url":"https://api.github.com/repos/eclipse/omr/issues/3349/comments","events_url":"https://api.github.com/repos/eclipse/omr/issues/3349/events","html_url":"https://github.com/eclipse/omr/pull/3349","id":391203255,"node_id":"MDExOlB1bGxSZXF1ZXN0MjM4NzkzNzU4","number":3349,"title":"Add OMR::GC::Handle<T> value type","user":{"login":"rwy0717","id":2774689,"node_id":"MDQ6VXNlcjI3NzQ2ODk=","avatar_url":"https://avatars2.githubusercontent.com/u/2774689?v=4","gravatar_id":"","url":"https://api.github.com/users/rwy0717","html_url":"https://github.com/rwy0717","followers_url":"https://api.github.com/users/rwy0717/followers","following_url":"https://api.github.com/users/rwy0717/following{/other_user}","gists_url":"https://api.github.com/users/rwy0717/gists{/gist_id}","starred_url":"https://api.github.com/users/rwy0717/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rwy0717/subscriptions","organizations_url":"https://api.github.com/users/rwy0717/orgs","repos_url":"https://api.github.com/users/rwy0717/repos","events_url":"https://api.github.com/users/rwy0717/events{/privacy}","received_events_url":"https://api.github.com/users/rwy0717/received_events","type":"User","site_admin":false},"labels":[{"id":463261367,"node_id":"MDU6TGFiZWw0NjMyNjEzNjc=","url":"https://api.github.com/repos/eclipse/omr/labels/gc","name":"gc","color":"fbca04","default":false}],"state":"open","locked":false,"assignee":{"login":"charliegracie","id":15161849,"node_id":"MDQ6VXNlcjE1MTYxODQ5","avatar_url":"https://avatars3.githubusercontent.com/u/15161849?v=4","gravatar_id":"","url":"https://api.github.com/users/charliegracie","html_url":"https://github.com/charliegracie","followers_url":"https://api.github.com/users/charliegracie/followers","following_url":"https://api.github.com/users/charliegracie/following{/other_user}","gists_url":"https://api.github.com/users/charliegracie/gists{/gist_id}","starred_url":"https://api.github.com/users/charliegracie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charliegracie/subscriptions","organizations_url":"https://api.github.com/users/charliegracie/orgs","repos_url":"https://api.github.com/users/charliegracie/repos","events_url":"https://api.github.com/users/charliegracie/events{/privacy}","received_events_url":"https://api.github.com/users/charliegracie/received_events","type":"User","site_admin":false},"assignees":[{"login":"charliegracie","id":15161849,"node_id":"MDQ6VXNlcjE1MTYxODQ5","avatar_url":"https://avatars3.githubusercontent.com/u/15161849?v=4","gravatar_id":"","url":"https://api.github.com/users/charliegracie","html_url":"https://github.com/charliegracie","followers_url":"https://api.github.com/users/charliegracie/followers","following_url":"https://api.github.com/users/charliegracie/following{/other_user}","gists_url":"https://api.github.com/users/charliegracie/gists{/gist_id}","starred_url":"https://api.github.com/users/charliegracie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charliegracie/subscriptions","organizations_url":"https://api.github.com/users/charliegracie/orgs","repos_url":"https://api.github.com/users/charliegracie/repos","events_url":"https://api.github.com/users/charliegracie/events{/privacy}","received_events_url":"https://api.github.com/users/charliegracie/received_events","type":"User","site_admin":false}],"milestone":null,"comments":10,"created_at":"2018-12-14T17:39:20Z","updated_at":"2019-01-02T14:46:26Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/eclipse/omr/pulls/3349","html_url":"https://github.com/eclipse/omr/pull/3349","diff_url":"https://github.com/eclipse/omr/pull/3349.diff","patch_url":"https://github.com/eclipse/omr/pull/3349.patch"},"body":"Handle<T> is a pointer-like value that indirects through an externally\r\nrooted slot. This allows users to pass rooted gc-references through\r\nfunction calls, independently of how the object is actually rooted.  The\r\nmain utility of this class is that it _signifies_ that the caller has\r\nrooted the parameters of a function.\r\n\r\nIt is possible for Handle<T>'s to outlive their roots, which is an\r\nextremely dangerous error. In the future, we may chose to add \"handle\r\ncounting\" to specialized root structures, to ensure there are no\r\noutstanding handles when a root dies.\r\n\r\nAnother potential future enhancement would be to parameterize the root\r\ntype, to allow for different gc-reference encodings. The value of doing\r\nthis is questionable though, since the main function of the handle is to\r\nhide the rooting mechanism, and doing this puts it right into the type.\r\n\r\nSigned-off-by: Robert Young <rwy0717@gmail.com>"},"comment":{"url":"https://api.github.com/repos/eclipse/omr/issues/comments/450881362","html_url":"https://github.com/eclipse/omr/pull/3349#issuecomment-450881362","issue_url":"https://api.github.com/repos/eclipse/omr/issues/3349","id":450881362,"node_id":"MDEyOklzc3VlQ29tbWVudDQ1MDg4MTM2Mg==","user":{"login":"charliegracie","id":15161849,"node_id":"MDQ6VXNlcjE1MTYxODQ5","avatar_url":"https://avatars3.githubusercontent.com/u/15161849?v=4","gravatar_id":"","url":"https://api.github.com/users/charliegracie","html_url":"https://github.com/charliegracie","followers_url":"https://api.github.com/users/charliegracie/followers","following_url":"https://api.github.com/users/charliegracie/following{/other_user}","gists_url":"https://api.github.com/users/charliegracie/gists{/gist_id}","starred_url":"https://api.github.com/users/charliegracie/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/charliegracie/subscriptions","organizations_url":"https://api.github.com/users/charliegracie/orgs","repos_url":"https://api.github.com/users/charliegracie/repos","events_url":"https://api.github.com/users/charliegracie/events{/privacy}","received_events_url":"https://api.github.com/users/charliegracie/received_events","type":"User","site_admin":false},"created_at":"2019-01-02T14:46:26Z","updated_at":"2019-01-02T14:46:26Z","author_association":"CONTRIBUTOR","body":"@dnakamura are you good with these changes now?"}}
{"actor":{"display_login":"charliegracie"}}