@SuppressWarnings("unchecked")
    public <T> List<T> getAll(Class<T> clazz) {
      List<T> ret = new ArrayList<>();
      for (Object m : members) {
        if (clazz.isInstance(m)) {
          ret.add((T) m);
        }
      }
      return ret;
    }
A set of objects which are representing the same thing.

A Group may contain different kind of things which are connected by their purpose;
For example currently a group may contain the following objects:
<ul>
  <li> Operator(s) - which are doing the actual work;
  there might be more than one, since an optimization may replace an operator with a new one
  <li> Signature - to enable inter-plan look up of the same data
  <li> OperatorStats - collected runtime information
</ul>
ql/src/java/org/apache/hadoop/hive/ql/plan/mapper/PlanMapper.java