diff options
| author | Douglas Rumbaugh <dbr4@psu.edu> | 2024-04-19 17:38:16 -0400 |
|---|---|---|
| committer | Douglas Rumbaugh <dbr4@psu.edu> | 2024-04-19 17:38:16 -0400 |
| commit | 438feac7e56fee425d9c6f1a43298ff9dc5b71d1 (patch) | |
| tree | 986ea9a630494be1af6bdf8ccb7639b6f3934576 /include/framework/interface/Query.h | |
| parent | 8479f3ce863dfb6d3b20ff4678fa6fe92ee86b52 (diff) | |
| download | dynamic-extension-438feac7e56fee425d9c6f1a43298ff9dc5b71d1.tar.gz | |
Properly implemented support for iteratively decomposable problems
Diffstat (limited to 'include/framework/interface/Query.h')
| -rw-r--r-- | include/framework/interface/Query.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/include/framework/interface/Query.h b/include/framework/interface/Query.h index 3d487f0..577d6cd 100644 --- a/include/framework/interface/Query.h +++ b/include/framework/interface/Query.h @@ -13,17 +13,19 @@ namespace de{ template <typename Q, typename R, typename S> -concept QueryInterface = requires(void *p, S *sh, std::vector<void*> &s, std::vector<std::vector<Wrapped<R>>> &rv, BufferView<R> *bv) { +concept QueryInterface = requires(void *p, S *sh, std::vector<void*> &s, std::vector<std::vector<Wrapped<R>>> &rv, BufferView<R> *bv, std::vector<R> &resv) { {Q::get_query_state(sh, p)} -> std::convertible_to<void*>; {Q::get_buffer_query_state(bv, p)} -> std::convertible_to<void *>; {Q::process_query_states(p, s, p)}; {Q::query(sh, p, p)} -> std::convertible_to<std::vector<Wrapped<R>>>; {Q::buffer_query(p, p)} -> std::convertible_to<std::vector<Wrapped<R>>>; - {Q::merge(rv, p)} -> std::convertible_to<std::vector<R>>; + {Q::merge(rv, p, resv)}; {Q::delete_query_state(p)} -> std::same_as<void>; {Q::delete_buffer_query_state(p)} -> std::same_as<void>; + {Q::repeat(p, resv, s, p)} -> std::same_as<bool>; + {Q::EARLY_ABORT} -> std::convertible_to<bool>; {Q::SKIP_DELETE_FILTER} -> std::convertible_to<bool>; }; |