mixed_subset.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /*
  2. * mixed_subset.h
  3. *
  4. */
  5. #ifndef CONTAINERS_MIXED_SUBSET_H_
  6. #define CONTAINERS_MIXED_SUBSET_H_
  7. #include <roaring/containers/array.h>
  8. #include <roaring/containers/bitset.h>
  9. #include <roaring/containers/run.h>
  10. #ifdef __cplusplus
  11. extern "C" {
  12. namespace roaring {
  13. namespace internal {
  14. #endif
  15. /**
  16. * Return true if container1 is a subset of container2.
  17. */
  18. bool array_container_is_subset_bitset(const array_container_t* container1,
  19. const bitset_container_t* container2);
  20. /**
  21. * Return true if container1 is a subset of container2.
  22. */
  23. bool run_container_is_subset_array(const run_container_t* container1,
  24. const array_container_t* container2);
  25. /**
  26. * Return true if container1 is a subset of container2.
  27. */
  28. bool array_container_is_subset_run(const array_container_t* container1,
  29. const run_container_t* container2);
  30. /**
  31. * Return true if container1 is a subset of container2.
  32. */
  33. bool run_container_is_subset_bitset(const run_container_t* container1,
  34. const bitset_container_t* container2);
  35. /**
  36. * Return true if container1 is a subset of container2.
  37. */
  38. bool bitset_container_is_subset_run(const bitset_container_t* container1,
  39. const run_container_t* container2);
  40. #ifdef __cplusplus
  41. }
  42. }
  43. } // extern "C" { namespace roaring { namespace internal {
  44. #endif
  45. #endif /* CONTAINERS_MIXED_SUBSET_H_ */