docs: public void generateClassFromElements(Stream<XsdElement> elements, String apiName){
          createGeneratedFilesDirectory(apiName);
  
          createSupportingInfrastructure(apiName);
  
          List<XsdElement> elementList = elements.collect(Collectors.toList());
  
          interfaceGenerator.addCreatedElements(elementList);
  
          elementList.forEach(element -> generateClassFromElement(element, apiName));
  
          interfaceGenerator.generateInterfaces(createdAttributes, apiName);
  
          List<XsdAttribute> attributes = new ArrayList<>();
  
          createdAttributes.keySet().forEach(attribute -> attributes.addAll(createdAttributes.get(attribute)));
  
          generateAttributes(attributes, apiName);
  
          generateVisitors(interfaceGenerator.getExtraElementsForVisitor(), attributes, apiName);
      }