From d0c7c69195a7566bb38264c5ae54dd77ac367a44 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20tom=20W=C3=B6rden?= <h.tomwoerden@indiscale.com>
Date: Mon, 4 Mar 2024 15:50:18 +0100
Subject: [PATCH] DOC: comments

---
 .../table_json_conversion/table_generator.py         | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/caosadvancedtools/table_json_conversion/table_generator.py b/src/caosadvancedtools/table_json_conversion/table_generator.py
index 8c1952eb..806d1d3c 100644
--- a/src/caosadvancedtools/table_json_conversion/table_generator.py
+++ b/src/caosadvancedtools/table_json_conversion/table_generator.py
@@ -145,6 +145,11 @@ class TableTemplateGenerator(ABC):
         """ recursively transforms elements from the schema into column definitions
 
         sheets is modified in place.
+        Parameters
+        ----------
+            array_paths: list
+                a list of path along the way to the current object, where the json contains arrays
+
         Returns
         -------
 
@@ -156,6 +161,8 @@ class TableTemplateGenerator(ABC):
                              f"'type' key:\n{schema}\n")
 
         if array_paths is None:
+            # if this is not set, we are at top level and the top level element may always be an
+            # array
             array_paths = [path]
 
         ctype = ColumnType.SCALAR
@@ -168,12 +175,11 @@ class TableTemplateGenerator(ABC):
                 sheetname = ".".join(path)
                 sheets[sheetname] = self._treat_schema_element(
                     schema['items'], sheets, path, foreign_keys, len(path),
-                    array_paths=array_paths+[path])
-                print("Sel", path)
+                    array_paths=array_paths+[path]  # since this level is an array, we extend the list
+                )
                 for p in array_paths:
                     keys = self._get_foreign_keys(foreign_keys, p)
                     for k in keys:
-                        print(k, p)
                         sheets[sheetname].update({k: (ColumnType.FOREIGN, f"see sheet '{path[0]}'", p+[k])})
                 # columns are added to the new sheet, thus we do not return columns
                 return {}
-- 
GitLab