Go to the documentation of this file.
20 #define CUDF_HOST_DEVICE __host__ __device__
22 #define CUDF_HOST_DEVICE
47 class mutable_column_view;
58 template <
typename T>
class numeric_scalar;
59 template <
typename T>
class fixed_point_scalar;
60 template <
typename T>
class timestamp_scalar;
61 template <
typename T>
class duration_scalar;
63 class string_scalar_device_view;
64 template <
typename T>
class numeric_scalar_device_view;
65 template <
typename T>
class fixed_point_scalar_device_view;
66 template <
typename T>
class timestamp_scalar_device_view;
67 template <
typename T>
class duration_scalar_device_view;
72 class mutable_table_view;
203 TIMESTAMP_MILLISECONDS,
204 TIMESTAMP_MICROSECONDS,
205 TIMESTAMP_NANOSECONDS,
208 DURATION_MILLISECONDS,
209 DURATION_MICROSECONDS,
210 DURATION_NANOSECONDS,
264 assert(
id == type_id::DECIMAL32 ||
id == type_id::DECIMAL64 ||
id == type_id::DECIMAL128);
272 [[nodiscard]] constexpr
type_id id() const noexcept {
return _id; }
279 [[nodiscard]] constexpr int32_t
scale() const noexcept {
return _fixed_point_scale; }
286 int32_t _fixed_point_scale{};
nan_policy
Enum to treat NaN floating point value as null or non-null element.
constexpr type_id id() const noexcept
Returns the type identifier.
@ LOWER
all lower case characters
data_type & operator=(data_type &&)=default
Move assignment operator for data_type.
@ LINEAR
Linear interpolation between i and j.
int32_t size_type
Row index type for columns and tables.
null_policy
Enum to specify whether to include nulls or exclude nulls.
null_order null_ordering
Indicates how null values compare against all other values.
type_id
Identifies a column's logical element type.
interpolation
Interpolation method to use when the desired quantile lies between two data points i and j.
data_type(type_id id, int32_t scale)
Construct a new data_type object for numeric::fixed_point
constexpr int32_t scale() const noexcept
Returns the scale (for fixed_point types)
std::size_t size_of(data_type t)
Returns the size in bytes of elements of the specified data_type
uint8_t valid_type
Valid type in host memory.
uint32_t bitmask_type
Bitmask type stored as 32-bit unsigned integer.
null_order
Indicates how null values compare against all other values.
@ ASCENDING
Elements ordered from small to large.
constexpr data_type(type_id id)
Construct a new data_type object.
mask_state
Controls the allocation/initialization of a null mask.
nan_equality
Enum to consider different elements (of floating point types) holding NaN value as equal or unequal.
@ ALL_EQUAL
All NaNs compare equal, regardless of sign.
@ AFTER
NULL values ordered after all other values.
Indicates how a collection of values has been ordered.
int32_t offset_type
Offset type for column offsets.
data_type(data_type const &)=default
Copy constructor.
@ UNALLOCATED
Null mask not allocated, (all elements are valid)
Indicator for the logical data type of an element in a column.
@ NAN_IS_NULL
treat nans as null elements
sorted
Indicates whether a collection of values is known to be sorted.
int64_t thread_index_type
Thread index type in kernels.
order ordering
Indicates the order in which the values are sorted.
@ EXCLUDE
exclude null elements
@ EQUAL
nulls compare equal
constexpr bool operator==(data_type const &lhs, data_type const &rhs)
Compares two data_type objects for equality.
data_type(data_type &&)=default
Move constructor.
null_equality
Enum to consider two nulls as equal or unequal.
size_type distance(T f, T l)
Similar to std::distance but returns cudf::size_type and performs static_cast
bool operator!=(data_type const &lhs, data_type const &rhs)
Compares two data_type objects for inequality.
@ EMPTY
Always null with no underlying data.
sorted is_sorted
Indicates whether the collection is sorted.
data_type & operator=(data_type const &)=default
Copy assignment operator for data_type.
order
Indicates the order in which elements should be sorted.