Sux
SelectZero.hpp
Go to the documentation of this file.
1 /*
2  * Sux: Succinct data structures
3  *
4  * Copyright (C) 2019-2020 Stefano Marchini and Sebastiano Vigna
5  *
6  * This library is free software; you can redistribute it and/or modify it
7  * under the terms of the GNU Lesser General Public License as published by the Free
8  * Software Foundation; either version 3 of the License, or (at your option)
9  * any later version.
10  *
11  * This library is free software; you can redistribute it and/or modify it under
12  * the terms of the GNU General Public License as published by the Free Software
13  * Foundation; either version 3, or (at your option) any later version.
14  *
15  * This library is distributed in the hope that it will be useful, but WITHOUT ANY
16  * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
17  * PARTICULAR PURPOSE. See the GNU General Public License for more details.
18  *
19  * Under Section 7 of GPL version 3, you are granted additional permissions
20  * described in the GCC Runtime Library Exception, version 3.1, as published by
21  * the Free Software Foundation.
22  *
23  * You should have received a copy of the GNU General Public License and a copy of
24  * the GCC Runtime Library Exception along with this program; see the files
25  * COPYING3 and COPYING.RUNTIME respectively. If not, see
26  * <http://www.gnu.org/licenses/>.
27  */
28 
29 #pragma once
30 
31 #include <cstddef>
32 #include <cstdint>
33 
34 namespace sux {
35 
42 class SelectZero {
43  public:
44  virtual ~SelectZero() = default;
45 
53  virtual std::size_t selectZero(uint64_t rank) = 0;
54 };
55 
56 } // namespace sux
sux::SelectZero::~SelectZero
virtual ~SelectZero()=default
sux::SelectZero::selectZero
virtual std::size_t selectZero(uint64_t rank)=0
sux
Definition: DynamicBitVector.hpp:31
sux::SelectZero
Definition: SelectZero.hpp:42