2424
2525#include < nanoarrow/nanoarrow.h>
2626
27+ #include " iceberg/iceberg_export.h"
2728#include " iceberg/result.h"
2829#include " iceberg/type_fwd.h"
2930
@@ -39,22 +40,22 @@ constexpr std::string_view kFieldIdKey = "ICEBERG:field_id";
3940// / \param[in] schema The Iceberg schema to convert.
4041// / \param[out] out The Arrow schema to convert to.
4142// / \return An error if the conversion fails.
42- Status ToArrowSchema (const Schema& schema, ArrowSchema* out);
43+ ICEBERG_EXPORT Status ToArrowSchema (const Schema& schema, ArrowSchema* out);
4344
4445// / \brief Convert an Arrow schema to an Iceberg schema.
4546// /
4647// / \param[in] schema The Arrow schema to convert.
4748// / \param[in] schema_id The schema ID of the Iceberg schema.
4849// / \return The Iceberg schema or an error if the conversion fails.
49- Result<std::unique_ptr<Schema>> FromArrowSchema (const ArrowSchema& schema,
50- std::optional<int32_t > schema_id);
50+ ICEBERG_EXPORT Result<std::unique_ptr<Schema>> FromArrowSchema (
51+ const ArrowSchema& schema, std::optional<int32_t > schema_id);
5152
5253// / \brief Convert a struct type to an Iceberg schema.
5354// /
5455// / \param[in] struct_type The struct type to convert.
5556// / \param[in] schema_id The schema ID of the Iceberg schema.
5657// / \return The Iceberg schema.
57- std::unique_ptr<Schema> FromStructType (StructType&& struct_type,
58- std::optional<int32_t > schema_id);
58+ ICEBERG_EXPORT std::unique_ptr<Schema> FromStructType (StructType&& struct_type,
59+ std::optional<int32_t > schema_id);
5960
6061} // namespace iceberg
0 commit comments