| 147 | namespace internal { |
| 148 | |
| 149 | static void CreateGlobalRegistry() { |
| 150 | // Register canonical extension types |
| 151 | |
| 152 | g_registry = std::make_shared<ExtensionTypeRegistryImpl>(); |
| 153 | std::vector<std::shared_ptr<DataType>> ext_types{extension::bool8(), extension::json(), |
| 154 | extension::uuid()}; |
| 155 | |
| 156 | #ifdef ARROW_JSON |
| 157 | ext_types.push_back(extension::fixed_shape_tensor(int64(), {})); |
| 158 | ext_types.push_back(extension::opaque(null(), "", "")); |
| 159 | ext_types.push_back(extension::variable_shape_tensor(int64(), 0)); |
| 160 | #endif |
| 161 | |
| 162 | for (const auto& ext_type : ext_types) { |
| 163 | ARROW_CHECK_OK( |
| 164 | g_registry->RegisterType(checked_pointer_cast<ExtensionType>(ext_type))); |
| 165 | } |
| 166 | } |
| 167 | |
| 168 | } // namespace internal |
| 169 |
nothing calls this directly
no test coverage detected