.. Copyright 2024-present Alibaba Inc.

.. Licensed under the Apache License, Version 2.0 (the "License");
.. you may not use this file except in compliance with the License.
.. You may obtain a copy of the License at

..   http://www.apache.org/licenses/LICENSE-2.0

.. Unless required by applicable law or agreed to in writing, software
.. distributed under the License is distributed on an "AS IS" BASIS,
.. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
.. See the License for the specific language governing permissions and
.. limitations under the License.

Predicate
===================================

.. _cpp-api-predicate:

Interface
=========

.. doxygenclass:: paimon::Predicate
   :members:
   :undoc-members:

.. doxygenclass:: paimon::LeafPredicate
   :members:
   :undoc-members:

.. doxygenclass:: paimon::CompoundPredicate
   :members:
   :undoc-members:

.. doxygenclass:: paimon::Function
   :members:
   :undoc-members:

.. doxygenclass:: paimon::FunctionVisitor
   :members:
   :undoc-members:

.. doxygenclass:: paimon::Literal
   :members:
   :undoc-members:

.. doxygenclass:: paimon::PredicateBuilder
   :members:
   :undoc-members:
