This allows equals to be overridden by a closure field method attached to the expando object. @see java.lang.Object#equals(java.lang.Object)
(Object obj)
| 162 | * @see java.lang.Object#equals(java.lang.Object) |
| 163 | */ |
| 164 | @Override |
| 165 | public boolean equals(Object obj) { |
| 166 | Object method = getProperties().get("equals"); |
| 167 | if (method instanceof Closure closure) { |
| 168 | // invoke overridden equals closure method |
| 169 | closure.setDelegate(this); |
| 170 | Boolean ret = (Boolean) closure.call(obj); |
| 171 | return ret; |
| 172 | } else { |
| 173 | return super.equals(obj); |
| 174 | } |
| 175 | } |
| 176 | |
| 177 | /** |
| 178 | * This allows hashCode to be overridden by a closure <i>field</i> method attached |
nothing calls this directly
no test coverage detected