code: public static List<JoinDescription> unrollChildrenJoins(Collection<JoinDescription> joins) {
          List<JoinDescription> collection = new LinkedList<>();
  
          for (JoinDescription joinDescription : joins) {
              unrollChildrenInternal(joinDescription, collection);
          }
  
          return collection;
      }
docs: Collect all joins and its children to single collection
  
  @param joins root joins
  @return all joins, including children