11#include <OpenMS/OpenMSConfig.h>
208 const std::string& connector =
"AND");
212 const std::string& op,
214 const std::vector<std::string>& values);
217 std::string next_connector_{
"AND"};
Fluent builder for ParquetFilter objects.
Definition ParquetFilter.h:240
ParquetFilterBuilder & le(const std::string &column, Int64 value)
Add a less-than-or-equal condition for an integer column.
ParquetFilterBuilder(const ParquetFilterBuilder &)=default
ParquetFilterBuilder & andNext()
Combine the next condition with logical AND.
ParquetFilterBuilder & eq(const std::string &column, const std::string &value)
Add an equality condition for a string column.
ParquetFilterBuilder & lt(const std::string &column, const std::string &value)
Add a less-than condition for a string column.
ParquetFilterBuilder & lt(const std::string &column, Int64 value)
Add a less-than condition for an integer column.
ParquetFilterBuilder & gt(const std::string &column, Int64 value)
Add a greater-than condition for an integer column.
ParquetFilterBuilder & ge(const std::string &column, Int64 value)
Add a greater-than-or-equal condition for an integer column.
ParquetFilterBuilder & ne(const std::string &column, Int64 value)
Add an inequality condition for an integer column.
ParquetFilterBuilder & in(const std::string &column, const std::vector< Int64 > &values)
Add an IN condition for an integer column.
ParquetFilterBuilder & eq(const std::string &column, Int64 value)
Add an equality condition for an integer column.
ParquetFilterBuilder & le(const std::string &column, const std::string &value)
Add a less-than-or-equal condition for a string column.
ParquetFilterBuilder & ne(const std::string &column, const std::string &value)
Add an inequality condition for a string column.
bool empty() const
Return whether the filter is empty.
ParquetFilterBuilder & gt(const std::string &column, const std::string &value)
Add a greater-than condition for a string column.
ParquetFilterBuilder & orNext()
Combine the next condition with logical OR.
const ParquetFilter & filter() const
Return the built filter.
ParquetFilterBuilder & ge(const std::string &column, const std::string &value)
Add a greater-than-or-equal condition for a string column.
ParquetFilterBuilder()=default
ParquetFilterBuilder & in(const std::string &column, const std::vector< std::string > &values)
Add an IN condition for a string column.
ParquetFilter filter_
Definition ParquetFilter.h:365
Typed filter builder for parquet-backed datasets.
Definition ParquetFilter.h:74
const FilterExpression & expression() const
Return the filter expression.
ParquetFilter & gt(const std::string &column, const std::string &value)
Add a greater-than condition for a string column.
ParquetFilter & ne(const std::string &column, Int64 value)
Add an inequality condition for an integer column.
FilterExpression expr_
Definition ParquetFilter.h:216
ParquetFilter & ne(const std::string &column, const std::string &value)
Add an inequality condition for a string column.
bool empty() const
Check if the filter is empty (has no conditions).
ParquetFilter & lt(const std::string &column, const std::string &value)
Add a less-than condition for a string column.
ParquetFilter & gt(const std::string &column, Int64 value)
Add a greater-than condition for an integer column.
ParquetFilter & in(const std::string &column, const std::vector< std::string > &values)
Add an IN condition for a string column.
ParquetFilter & eq(const std::string &column, Int64 value)
Add an equality condition for an integer column.
ParquetFilter(const ParquetFilter &)=default
ParquetFilter & le(const std::string &column, Int64 value)
Add a less-than-or-equal condition for an integer column.
ParquetFilter & in(const std::string &column, const std::vector< Int64 > &values)
Add an IN condition for an integer column.
ParquetFilter & lt(const std::string &column, Int64 value)
Add a less-than condition for an integer column.
ParquetFilter & ge(const std::string &column, const std::string &value)
Add a greater-than-or-equal condition for a string column.
static FilterExpression merge(const FilterExpression &lhs, const FilterExpression &rhs, const std::string &connector="AND")
Merge two filter expressions with a connector.
ParquetFilter & orNext()
Combine the next condition with logical OR.
ParquetFilter & ge(const std::string &column, Int64 value)
Add a greater-than-or-equal condition for an integer column.
ParquetFilter & eq(const std::string &column, const std::string &value)
Add an equality condition for a string column.
ParquetFilter & andNext()
Combine the next condition with logical AND.
ParquetFilter & le(const std::string &column, const std::string &value)
Add a less-than-or-equal condition for a string column.
ParquetFilter & addCondition_(const std::string &column, const std::string &op, ColumnType type, const std::vector< std::string > &values)
int64_t Int64
Signed integer type (64bit)
Definition Types.h:40
Main OpenMS namespace.
Definition openswathalgo/include/OpenMS/OPENSWATHALGO/DATAACCESS/ISpectrumAccess.h:19
ColumnType
Column type for typed parquet filters.
Definition ParquetFilter.h:22
std::string column
Definition ParquetFilter.h:32
std::string op
Definition ParquetFilter.h:33
std::vector< std::string > values
Definition ParquetFilter.h:34
Single filter condition (column, operator, values).
Definition ParquetFilter.h:31
Simple conjunction/disjunction of conditions.
Definition ParquetFilter.h:42
std::vector< Condition > conditions
Definition ParquetFilter.h:43
std::vector< std::string > connectors
Definition ParquetFilter.h:44