NVIDIA / NVIDIA/cudf

[FEA] `aggregation` should be more opaque

Open
#6,895 2 comments 0 reactions 0 assignees View on GitHub
feature request libcudf
Dominant language
C++
Stars
9.8k
Forks
1.1k
Avg merge
3d 6m
Merged PRs (30d)
278

Description

**Is your feature request related to a problem? Please describe.**

The `aggregation` class is used for specifying details of what kind of aggregation a user wants from APIs like `groupby`. User's should not need to interact with this class other than using the `make_*_aggregation` APIs to get an `aggregation` object.

Originally this type was opaque, but if I remember correctly, that broke Cython. So we had to make it non-opaque. However, this has lead to issues of users using methods of `aggregation` that they should not.

**Describe the solution you'd like**
`aggregation` should be made more opaque. The PIMPL pattern is probably the right call here such that the type's definition is still visible to appease Cython, but it's members aren't available.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.