公共类型 | 公共成员函数 | 受保护属性 | 所有成员列表
cudf::string_scalar 类参考

一个用于表示设备内存中字符串的拥有类。 更多...

#include <scalar.hpp>

cudf::string_scalar 的继承图
cudf::scalar

公共类型

using value_type = cudf::string_view
 字符串标量的值类型。
 

公共成员函数

 string_scalar (string_scalar &&other)=default
 string_scalar 的移动构造函数。 更多...
 
string_scalaroperator= (string_scalar const &other)=delete
 
string_scalaroperator= (string_scalar &&other)=delete
 
 string_scalar (string_scalar const &other, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 通过深度复制另一个 string_scalar 构造新的字符串标量对象。 更多...
 
 string_scalar (std::string_view string, bool is_valid=true, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 构造新的字符串标量对象。 更多...
 
 string_scalar (value_type const &source, bool is_valid=true, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 string_view 构造新的字符串标量对象。 更多...
 
 string_scalar (rmm::device_scalar< value_type > &data, bool is_valid=true, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 从设备内存中的 string_view 构造新的字符串标量对象。 更多...
 
 string_scalar (rmm::device_buffer &&data, bool is_valid=true, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 通过移动现有的字符串数据缓冲区构造新的字符串标量对象。 更多...
 
std::string to_string (rmm::cuda_stream_view stream=cudf::get_default_stream()) const
 获取主机 std::string 中的标量值。 更多...
 
value_type value (rmm::cuda_stream_view stream=cudf::get_default_stream()) const
 将标量值获取为 string_view更多...
 
size_type size () const
 返回字符串的字节大小。 更多...
 
char const * data () const
 返回指向设备内存中字符串的原始指针。 更多...
 
- 从 cudf::scalar 继承的公共成员函数
scalaroperator= (scalar const &other)=delete
 
scalaroperator= (scalar &&other)=delete
 
data_type type () const noexcept
 返回标量的逻辑值类型。 更多...
 
void set_valid_async (bool is_valid, rmm::cuda_stream_view stream=cudf::get_default_stream())
 更新值的有效性。 更多...
 
bool is_valid (rmm::cuda_stream_view stream=cudf::get_default_stream()) const
 指示标量是否包含有效值。 更多...
 
bool * validity_data ()
 返回指向设备内存中有效性布尔值的原始指针。 更多...
 
bool const * validity_data () const
 返回指向设备内存中有效性布尔值的常量原始指针。 更多...
 

受保护属性

rmm::device_buffer _data {}
 包含字符串的设备内存
 
- 从 cudf::scalar 继承的受保护属性
data_type _type {type_id::EMPTY}
 标量中值的逻辑类型。
 
cudf::detail::device_scalar< bool > _is_valid
 表示有效性的设备布尔值。
 

其他继承成员

- 从 cudf::scalar 继承的受保护成员函数
 scalar (scalar &&other)=default
 scalar 的移动构造函数。 更多...
 
 scalar (scalar const &other, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 通过深度复制另一个 scalar 对象构造新的 scalar 对象。 更多...
 
 scalar (data_type type, bool is_valid=false, rmm::cuda_stream_view stream=cudf::get_default_stream(), rmm::device_async_resource_ref mr=cudf::get_current_device_resource_ref())
 构造新的 scalar 对象。 更多...
 

详细描述

一个用于表示设备内存中字符串的拥有类。

定义位于 scalar.hpp 文件的第 421 行。

构造函数与析构函数文档

◆ string_scalar() [1/6]

cudf::string_scalar::string_scalar ( string_scalar &&  other)
default

string_scalar 的移动构造函数。

参数
other要从中移动的另一个 string_scalar

◆ string_scalar() [2/6]

cudf::string_scalar::string_scalar ( string_scalar const &  other,
rmm::cuda_stream_view  stream = cudf::get_default_stream(),
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

通过深度复制另一个 string_scalar 构造新的字符串标量对象。

参数
other要复制的另一个 string_scalar
stream用于设备内存操作的 CUDA 流。
mr用于设备内存分配的设备内存资源。

◆ string_scalar() [3/6]

cudf::string_scalar::string_scalar ( std::string_view  string,
bool  is_valid = true,
rmm::cuda_stream_view  stream = cudf::get_default_stream(),
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

构造新的字符串标量对象。

异常
std::overflow_error如果输入字符串的大小超过 cudf::size_type
参数
string字符串的值。
is_valid标量持有的值是否有效。
stream用于设备内存操作的 CUDA 流。
mr用于设备内存分配的设备内存资源。

◆ string_scalar() [4/6]

cudf::string_scalar::string_scalar ( value_type const &  source,
bool  is_valid = true,
rmm::cuda_stream_view  stream = cudf::get_default_stream(),
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

string_view 构造新的字符串标量对象。

请注意,此函数复制 string_view 指向的数据。

参数
source指向要复制的字符串值的 string_view
is_valid标量持有的值是否有效。
stream用于设备内存操作的 CUDA 流。
mr用于设备内存分配的设备内存资源。

◆ string_scalar() [5/6]

cudf::string_scalar::string_scalar ( rmm::device_scalar< value_type > &  data,
bool  is_valid = true,
rmm::cuda_stream_view  stream = cudf::get_default_stream(),
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

从设备内存中的 string_view 构造新的字符串标量对象。

请注意,此函数复制 string_view 指向的数据。

参数
data指向要复制的字符串值的 string_view 的 device_scalar。
is_valid标量持有的值是否有效。
stream用于设备内存操作的 CUDA 流。
mr用于设备内存分配的设备内存资源。

◆ string_scalar() [6/6]

cudf::string_scalar::string_scalar ( rmm::device_buffer &&  data,
bool  is_valid = true,
rmm::cuda_stream_view  stream = cudf::get_default_stream(),
rmm::device_async_resource_ref  mr = cudf::get_current_device_resource_ref() 
)

通过移动现有的字符串数据缓冲区构造新的字符串标量对象。

请注意,此构造函数将现有缓冲区移动到内部数据缓冲区中;不执行复制操作。

参数
data要接管的现有缓冲区。
is_valid标量持有的值是否有效。
stream用于设备内存操作的 CUDA 流。
mr用于设备内存分配的设备内存资源。

成员函数文档

◆ data()

char const* cudf::string_scalar::data ( ) const

返回指向设备内存中字符串的原始指针。

返回
指向设备内存中字符串的原始指针

◆ size()

size_type cudf::string_scalar::size ( ) const

返回字符串的字节大小。

返回
字符串的字节大小

◆ to_string()

std::string cudf::string_scalar::to_string ( rmm::cuda_stream_view  stream = cudf::get_default_stream()) const

获取主机 std::string 中的标量值。

参数
stream用于设备内存操作的 CUDA 流。
返回
主机 std::string 中的标量值

◆ value()

value_type cudf::string_scalar::value ( rmm::cuda_stream_view  stream = cudf::get_default_stream()) const

将标量值获取为 string_view

参数
stream用于设备内存操作的 CUDA 流。
返回
作为 string_view 的标量值

本类的文档生成自以下文件