18 #include <cudf/strings/regex/flags.hpp>
24 namespace CUDF_EXPORT
cudf {
41 struct regex_program_impl;
53 static std::unique_ptr<regex_program>
create(std::string_view pattern,
79 [[nodiscard]] std::string
pattern()
const;
120 std::string _pattern;
124 std::unique_ptr<regex_program_impl> _impl;
133 friend struct regex_device_builder;
capture_groups
Capture groups setting.
regex_program & operator=(regex_program &&other)
Move operator assignment.
static std::unique_ptr< regex_program > create(std::string_view pattern, regex_flags flags=regex_flags::DEFAULT, capture_groups capture=capture_groups::EXTRACT)
Create a program from a pattern.
int32_t groups_count() const
Return the number of capture groups in this instance.
capture_groups capture() const
Return the capture_groups used to create this instance.
std::string pattern() const
Return the pattern used to create this instance.
regex_flags flags() const
Return the regex_flags used to create this instance.
int32_t instructions_count() const
Return the number of instructions in this instance.
regex_program(regex_program &&other)
Move constructor.
std::size_t compute_working_memory_size(int32_t num_strings) const
Return the size of the working memory for the regex execution.
Type declarations for libcudf.