Skip to content

Commit aeffa76

Browse files
authored
SNOW-10002843: Refactor nanoarrow code for structured types (#1852)
1 parent cdc7de9 commit aeffa76

File tree

5 files changed

+339
-354
lines changed

5 files changed

+339
-354
lines changed

setup.py

Lines changed: 28 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -90,51 +90,35 @@ def build_extension(self, ext):
9090

9191
ext.sources += [
9292
os.path.join(
93-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "CArrowIterator.cpp"
94-
),
95-
os.path.join(
96-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "CArrowChunkIterator.cpp"
97-
),
98-
os.path.join(
99-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "CArrowTableIterator.cpp"
100-
),
101-
os.path.join(NANOARROW_ARROW_ITERATOR_SRC_DIR, "SnowflakeType.cpp"),
102-
os.path.join(
103-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "BinaryConverter.cpp"
104-
),
105-
os.path.join(
106-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "BooleanConverter.cpp"
107-
),
108-
os.path.join(
109-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "DecimalConverter.cpp"
110-
),
111-
os.path.join(NANOARROW_ARROW_ITERATOR_SRC_DIR, "DateConverter.cpp"),
112-
os.path.join(
113-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "FixedSizeListConverter.cpp"
114-
),
115-
os.path.join(
116-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "FloatConverter.cpp"
117-
),
118-
os.path.join(NANOARROW_ARROW_ITERATOR_SRC_DIR, "IntConverter.cpp"),
119-
os.path.join(
120-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "StringConverter.cpp"
121-
),
122-
os.path.join(NANOARROW_ARROW_ITERATOR_SRC_DIR, "TimeConverter.cpp"),
123-
os.path.join(
124-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "TimeStampConverter.cpp"
125-
),
126-
os.path.join(
127-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "Python", "Common.cpp"
128-
),
129-
os.path.join(
130-
NANOARROW_ARROW_ITERATOR_SRC_DIR, "Python", "Helpers.cpp"
131-
),
132-
os.path.join(NANOARROW_ARROW_ITERATOR_SRC_DIR, "Util", "time.cpp"),
133-
NANOARROW_LOGGING_SRC_DIR + "/logging.cpp",
134-
os.path.join(NANOARROW_ARROW_ITERATOR_SRC_DIR, "nanoarrow.c"),
135-
os.path.join(NANOARROW_ARROW_ITERATOR_SRC_DIR, "nanoarrow_ipc.c"),
136-
os.path.join(NANOARROW_ARROW_ITERATOR_SRC_DIR, "flatcc.c"),
93+
NANOARROW_ARROW_ITERATOR_SRC_DIR,
94+
*((file,) if isinstance(file, str) else file)
95+
)
96+
for file in {
97+
"BinaryConverter.cpp",
98+
"BooleanConverter.cpp",
99+
"CArrowChunkIterator.cpp",
100+
"CArrowIterator.cpp",
101+
"CArrowTableIterator.cpp",
102+
"DateConverter.cpp",
103+
"DecimalConverter.cpp",
104+
"FixedSizeListConverter.cpp",
105+
"FloatConverter.cpp",
106+
"IntConverter.cpp",
107+
"SnowflakeType.cpp",
108+
"StringConverter.cpp",
109+
"TimeConverter.cpp",
110+
"TimeStampConverter.cpp",
111+
"flatcc.c",
112+
"nanoarrow.c",
113+
"nanoarrow_ipc.c",
114+
("Python", "Common.cpp"),
115+
("Python", "Helpers.cpp"),
116+
("Util", "time.cpp"),
117+
}
137118
]
119+
ext.sources.append(
120+
os.path.join(NANOARROW_LOGGING_SRC_DIR, "logging.cpp")
121+
)
138122
ext.include_dirs.append(NANOARROW_ARROW_ITERATOR_SRC_DIR)
139123
ext.include_dirs.append(NANOARROW_LOGGING_SRC_DIR)
140124

0 commit comments

Comments
 (0)