Xtend Traits code generation for hashcode, equls, and Immutable setters returning new instances