| 10909 | } |
| 10910 | |
| 10911 | GArrowFunctionOptions * |
| 10912 | garrow_function_options_new_raw(const arrow::compute::FunctionOptions *arrow_options) |
| 10913 | { |
| 10914 | std::string_view arrow_type_name(arrow_options->type_name()); |
| 10915 | if (arrow_type_name == "CastOptions") { |
| 10916 | auto arrow_cast_options = |
| 10917 | static_cast<const arrow::compute::CastOptions *>(arrow_options); |
| 10918 | auto options = garrow_cast_options_new_raw(arrow_cast_options); |
| 10919 | return GARROW_FUNCTION_OPTIONS(options); |
| 10920 | } else if (arrow_type_name == "ScalarAggregateOptions") { |
| 10921 | const auto arrow_scalar_aggregate_options = |
| 10922 | static_cast<const arrow::compute::ScalarAggregateOptions *>(arrow_options); |
| 10923 | auto options = |
| 10924 | garrow_scalar_aggregate_options_new_raw(arrow_scalar_aggregate_options); |
| 10925 | return GARROW_FUNCTION_OPTIONS(options); |
| 10926 | } else if (arrow_type_name == "CountOptions") { |
| 10927 | const auto arrow_count_options = |
| 10928 | static_cast<const arrow::compute::CountOptions *>(arrow_options); |
| 10929 | auto options = garrow_count_options_new_raw(arrow_count_options); |
| 10930 | return GARROW_FUNCTION_OPTIONS(options); |
| 10931 | } else if (arrow_type_name == "FilterOptions") { |
| 10932 | const auto arrow_filter_options = |
| 10933 | static_cast<const arrow::compute::FilterOptions *>(arrow_options); |
| 10934 | auto options = garrow_filter_options_new_raw(arrow_filter_options); |
| 10935 | return GARROW_FUNCTION_OPTIONS(options); |
| 10936 | } else if (arrow_type_name == "TakeOptions") { |
| 10937 | const auto arrow_take_options = |
| 10938 | static_cast<const arrow::compute::TakeOptions *>(arrow_options); |
| 10939 | auto options = garrow_take_options_new_raw(arrow_take_options); |
| 10940 | return GARROW_FUNCTION_OPTIONS(options); |
| 10941 | } else if (arrow_type_name == "ArraySortOptions") { |
| 10942 | const auto arrow_array_sort_options = |
| 10943 | static_cast<const arrow::compute::ArraySortOptions *>(arrow_options); |
| 10944 | auto options = garrow_array_sort_options_new_raw(arrow_array_sort_options); |
| 10945 | return GARROW_FUNCTION_OPTIONS(options); |
| 10946 | } else if (arrow_type_name == "SortOptions") { |
| 10947 | const auto arrow_sort_options = |
| 10948 | static_cast<const arrow::compute::SortOptions *>(arrow_options); |
| 10949 | auto options = garrow_sort_options_new_raw(arrow_sort_options); |
| 10950 | return GARROW_FUNCTION_OPTIONS(options); |
| 10951 | } else if (arrow_type_name == "SetLookupOptions") { |
| 10952 | const auto arrow_set_lookup_options = |
| 10953 | static_cast<const arrow::compute::SetLookupOptions *>(arrow_options); |
| 10954 | auto options = garrow_set_lookup_options_new_raw(arrow_set_lookup_options); |
| 10955 | return GARROW_FUNCTION_OPTIONS(options); |
| 10956 | } else if (arrow_type_name == "VarianceOptions") { |
| 10957 | const auto arrow_variance_options = |
| 10958 | static_cast<const arrow::compute::VarianceOptions *>(arrow_options); |
| 10959 | auto options = garrow_variance_options_new_raw(arrow_variance_options); |
| 10960 | return GARROW_FUNCTION_OPTIONS(options); |
| 10961 | } else if (arrow_type_name == "RoundOptions") { |
| 10962 | const auto arrow_round_options = |
| 10963 | static_cast<const arrow::compute::RoundOptions *>(arrow_options); |
| 10964 | auto options = garrow_round_options_new_raw(arrow_round_options); |
| 10965 | return GARROW_FUNCTION_OPTIONS(options); |
| 10966 | } else if (arrow_type_name == "RoundToMultipleOptions") { |
| 10967 | const auto arrow_round_to_multiple_options = |
| 10968 | static_cast<const arrow::compute::RoundToMultipleOptions *>(arrow_options); |
no test coverage detected