跳过内容

注册 Arrow 扩展类型

用法

nanoarrow_extension_spec(data = list(), subclass = character())

register_nanoarrow_extension(extension_name, extension_spec)

unregister_nanoarrow_extension(extension_name)

resolve_nanoarrow_extension(extension_name)

参数

data

要包含在扩展类型规范中的可选数据

子类

扩展类型规范的子类。扩展方法将在此对象上进行分派。

extension_name

一个 Arrow 扩展类型名称(例如,nanoarrow.r.vctrs)

extension_spec

一个继承自“nanoarrow_extension_spec”的扩展规范。

返回值

  • nanoarrow_extension_spec() 返回一个类为“nanoarrow_extension_spec”的对象。

  • register_nanoarrow_extension() 不可见地返回 extension_spec

  • unregister_nanoarrow_extension() 不可见地返回 extension_name

  • resolve_nanoarrow_extension() 返回一个类为“nanoarrow_extension_spec”的对象,如果扩展类型未注册,则返回 NULL。

示例

nanoarrow_extension_spec("mynamespace.mytype", subclass = "mypackage_mytype_spec")
#> [1] "mynamespace.mytype"
#> attr(,"class")
#> [1] "mypackage_mytype_spec"    "nanoarrow_extension_spec"