{"action":"opened","issue":{"url":"https://api.github.com/repos/c2nes/javalang/issues/19","labels_url":"https://api.github.com/repos/c2nes/javalang/issues/19/labels{/name}","comments_url":"https://api.github.com/repos/c2nes/javalang/issues/19/comments","events_url":"https://api.github.com/repos/c2nes/javalang/issues/19/events","html_url":"https://github.com/c2nes/javalang/issues/19","id":110511464,"number":19,"title":"Node __equals__ not reflexive","user":{"login":"sdjespersen","id":3210603,"avatar_url":"https://avatars.githubusercontent.com/u/3210603?v=3","gravatar_id":"","url":"https://api.github.com/users/sdjespersen","html_url":"https://github.com/sdjespersen","followers_url":"https://api.github.com/users/sdjespersen/followers","following_url":"https://api.github.com/users/sdjespersen/following{/other_user}","gists_url":"https://api.github.com/users/sdjespersen/gists{/gist_id}","starred_url":"https://api.github.com/users/sdjespersen/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sdjespersen/subscriptions","organizations_url":"https://api.github.com/users/sdjespersen/orgs","repos_url":"https://api.github.com/users/sdjespersen/repos","events_url":"https://api.github.com/users/sdjespersen/events{/privacy}","received_events_url":"https://api.github.com/users/sdjespersen/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2015-10-08T18:14:35Z","updated_at":"2015-10-08T18:14:35Z","closed_at":null,"body":"I'm a bit confused by [these two lines](https://github.com/c2nes/javalang/blob/master/javalang/ast.py#L35-L36). Shouldn't this instead read\r\n```python\r\nif type(other) is not type(self):\r\n    return False\r\n```\r\nwith a `not` in there? Consider the following:\r\n```python\r\ntree = javalang.parse.parse('')\r\ntree.__equals__(tree) # returns False\r\n```"}}