{"action":"opened","issue":{"url":"https://api.github.com/repos/Raphine/Raph_Library/issues/52","repository_url":"https://api.github.com/repos/Raphine/Raph_Library","labels_url":"https://api.github.com/repos/Raphine/Raph_Library/issues/52/labels{/name}","comments_url":"https://api.github.com/repos/Raphine/Raph_Library/issues/52/comments","events_url":"https://api.github.com/repos/Raphine/Raph_Library/issues/52/events","html_url":"https://github.com/Raphine/Raph_Library/issues/52","id":166338106,"number":52,"title":"do not ignore error value","user":{"login":"liva","id":536883,"avatar_url":"https://avatars.githubusercontent.com/u/536883?v=3","gravatar_id":"","url":"https://api.github.com/users/liva","html_url":"https://github.com/liva","followers_url":"https://api.github.com/users/liva/followers","following_url":"https://api.github.com/users/liva/following{/other_user}","gists_url":"https://api.github.com/users/liva/gists{/gist_id}","starred_url":"https://api.github.com/users/liva/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liva/subscriptions","organizations_url":"https://api.github.com/users/liva/orgs","repos_url":"https://api.github.com/users/liva/repos","events_url":"https://api.github.com/users/liva/events{/privacy}","received_events_url":"https://api.github.com/users/liva/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Raphine/Raph_Library/labels/design%20modification(%E8%A8%AD%E8%A8%88%E4%BF%AE%E6%AD%A3)","name":"design modification(設計修正)","color":"fbca04"},{"url":"https://api.github.com/repos/Raphine/Raph_Library/labels/enhancement(%E6%A9%9F%E8%83%BD%E8%BF%BD%E5%8A%A0)","name":"enhancement(機能追加)","color":"84b6eb"}],"state":"open","locked":false,"assignee":{"login":"liva","id":536883,"avatar_url":"https://avatars.githubusercontent.com/u/536883?v=3","gravatar_id":"","url":"https://api.github.com/users/liva","html_url":"https://github.com/liva","followers_url":"https://api.github.com/users/liva/followers","following_url":"https://api.github.com/users/liva/following{/other_user}","gists_url":"https://api.github.com/users/liva/gists{/gist_id}","starred_url":"https://api.github.com/users/liva/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liva/subscriptions","organizations_url":"https://api.github.com/users/liva/orgs","repos_url":"https://api.github.com/users/liva/repos","events_url":"https://api.github.com/users/liva/events{/privacy}","received_events_url":"https://api.github.com/users/liva/received_events","type":"User","site_admin":false},"assignees":[{"login":"liva","id":536883,"avatar_url":"https://avatars.githubusercontent.com/u/536883?v=3","gravatar_id":"","url":"https://api.github.com/users/liva","html_url":"https://github.com/liva","followers_url":"https://api.github.com/users/liva/followers","following_url":"https://api.github.com/users/liva/following{/other_user}","gists_url":"https://api.github.com/users/liva/gists{/gist_id}","starred_url":"https://api.github.com/users/liva/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liva/subscriptions","organizations_url":"https://api.github.com/users/liva/orgs","repos_url":"https://api.github.com/users/liva/repos","events_url":"https://api.github.com/users/liva/events{/privacy}","received_events_url":"https://api.github.com/users/liva/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2016-07-19T13:57:38Z","updated_at":"2016-07-19T13:57:38Z","closed_at":null,"body":"we should force developers not to ignore error value.\r\nthere are some solutions.\r\n\r\n1. use tuple to return value\r\nlike golang, we can add \"error value\" to return value.\r\nit should be much better than return nullptr or something.\r\n\r\n2. use exception\r\nexception will be a smart solution to avoid invalid state.\r\nhowever,  implementing exception is not recommended, and difficult.\r\n\r\n3. define Error container class & return it\r\nimpl method GetValue.\r\nif it calls in spite of error occured, system will be crashed.\r\n\r\nI think No.3 is the best way to solve this problem."}}
{"actor":{"display_login":"liva"}}