Jonathan Coveney created PIG-2724:
-------------------------------------

             Summary: 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


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

        

Reply via email to