OpenRefine / OpenRefine/OpenRefine

Extend forEachIndex to work with internal HasFields objects like Cell, Row, etc

Open
#7,880 0 comments 0 reactions 1 assignee View on GitHub

@tfmorris is already working on this.

Since Jul 31, 2026.

grel Type: Feature Request
Dominant language
Java
Stars
12k
Forks
2.2k
Avg merge
1d 14h
Merged PRs (30d)
27

Description

As a follow-on to #3147 which added support for iterating over the fields in a JSON object, extend forEachIndex to iterate over any internal OpenRefine object which implements the HasFields interface.

Proposed solution

Extend forEachIndex to work with Row, Cell, Record, Recon, ReconCandidate, WrappedRow, WrappedCell, CellTuple.

Alternatives considered

It may be desirable to also/instead add a way to get the field names directly using something like row.fieldNames() or row.keys()

Additional context

This can be used as a memory aid for field names in the following fashion:

forEachIndex(row,k,v,k) => ['flagged', 'starred', 'cells', 'record']

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.