{"action":"opened","issue":{"url":"https://api.github.com/repos/io7m/jaffirm/issues/1","repository_url":"https://api.github.com/repos/io7m/jaffirm","labels_url":"https://api.github.com/repos/io7m/jaffirm/issues/1/labels{/name}","comments_url":"https://api.github.com/repos/io7m/jaffirm/issues/1/comments","events_url":"https://api.github.com/repos/io7m/jaffirm/issues/1/events","html_url":"https://github.com/io7m/jaffirm/issues/1","id":203649368,"number":1,"title":"Add pre/post/invariant checks for equality","user":{"login":"io7m","id":612494,"avatar_url":"https://avatars.githubusercontent.com/u/612494?v=3","gravatar_id":"","url":"https://api.github.com/users/io7m","html_url":"https://github.com/io7m","followers_url":"https://api.github.com/users/io7m/followers","following_url":"https://api.github.com/users/io7m/following{/other_user}","gists_url":"https://api.github.com/users/io7m/gists{/gist_id}","starred_url":"https://api.github.com/users/io7m/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/io7m/subscriptions","organizations_url":"https://api.github.com/users/io7m/orgs","repos_url":"https://api.github.com/users/io7m/repos","events_url":"https://api.github.com/users/io7m/events{/privacy}","received_events_url":"https://api.github.com/users/io7m/received_events","type":"User","site_admin":false},"labels":[{"id":420583484,"url":"https://api.github.com/repos/io7m/jaffirm/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"open","locked":false,"assignee":{"login":"io7m","id":612494,"avatar_url":"https://avatars.githubusercontent.com/u/612494?v=3","gravatar_id":"","url":"https://api.github.com/users/io7m","html_url":"https://github.com/io7m","followers_url":"https://api.github.com/users/io7m/followers","following_url":"https://api.github.com/users/io7m/following{/other_user}","gists_url":"https://api.github.com/users/io7m/gists{/gist_id}","starred_url":"https://api.github.com/users/io7m/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/io7m/subscriptions","organizations_url":"https://api.github.com/users/io7m/orgs","repos_url":"https://api.github.com/users/io7m/repos","events_url":"https://api.github.com/users/io7m/events{/privacy}","received_events_url":"https://api.github.com/users/io7m/received_events","type":"User","site_admin":false},"assignees":[{"login":"io7m","id":612494,"avatar_url":"https://avatars.githubusercontent.com/u/612494?v=3","gravatar_id":"","url":"https://api.github.com/users/io7m","html_url":"https://github.com/io7m","followers_url":"https://api.github.com/users/io7m/followers","following_url":"https://api.github.com/users/io7m/following{/other_user}","gists_url":"https://api.github.com/users/io7m/gists{/gist_id}","starred_url":"https://api.github.com/users/io7m/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/io7m/subscriptions","organizations_url":"https://api.github.com/users/io7m/orgs","repos_url":"https://api.github.com/users/io7m/repos","events_url":"https://api.github.com/users/io7m/events{/privacy}","received_events_url":"https://api.github.com/users/io7m/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2017-01-27T14:32:06Z","updated_at":"2017-01-27T14:32:06Z","closed_at":null,"body":"Experience has shown that this package gets used to write a lot of code like the following:\r\n\r\n```\r\n            Invariants.checkInvariantL(\r\n             target.capacity(),\r\n              size == target.capacity(),\r\n              x -> \"Allocated target buffer must be the correct size\");\r\n```\r\n\r\nNote that `size` cannot appear in the contract message without turning the message lambda into a capturing lambda, which entails an allocation. Some entry points should be added that allow passing in an expected value so that it can appear in any error messages.\r\n\r\n"}}
{"actor":{"display_login":"io7m"}}