[
https://issues.apache.org/jira/browse/PIG-2724?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13286220#comment-13286220
]
Julien Le Dem commented on PIG-2724:
------------------------------------
* np
* You are correct but your argument for hashCode() also applies to equals().
The contract is that o1.equals(o2) => o1.hashCode() == o2.hashCode() (not the
other way around). compareTo() is separate but of course o1.compareTo(o2) == 0
<=> o1.equals(o2)
Usually hashCode and equals are implemented together
If the individual objects are not comparable it is hard to provide a default
compareTo() implementation.
Factor out what makes sense to you. Some warning about that in the javadoc?
* Sounds good
* I don't think factoring the implements statement is worth the extra
AbstractTypeAwareTuple class. It doesn't really improve readability.
> Make Tuple Iterable
> -------------------
>
> Key: PIG-2724
> URL: https://issues.apache.org/jira/browse/PIG-2724
> Project: Pig
> Issue Type: Improvement
> Reporter: Jonathan Coveney
> Assignee: Jonathan Coveney
> Fix For: 0.11
>
> Attachments: PIG-2724-0.patch, PIG-2724-1.patch, PIG-2724-1.patch,
> PIG-2724-2.patch
>
>
> Seriously, is there a more annoying pattern than the following?
> {code}
> for (int i = 0; i < t.size(); i++) {
> try {
> doStuff(t.get(i));
> } catch (ExecException e) {
> throw new RuntimeException("BUT I THOUGHT PIG WAS SINGLETHREADED", e);
> }
> }
> {code}
> I mean yeah, you can do the following:
> {code}
> for (Object o : t.getAll()) {
> doStuff(o);
> }
> {code}
> But I don't even think that should be necessary. I think the following should
> work:
> {code}
> for (Object o : t) {
> doStuff(o);
> }
> {code}
> It's a shame we can't give a default implementation (I either shake my fist
> that this won't be possible until Java 8 OR that Tuple is an interface and
> not an abstract class). Either way, I even added test! WOAH.
> Thoughts?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira