You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by GitBox <gi...@apache.org> on 2022/05/19 22:40:36 UTC

[GitHub] [iceberg] rdblue commented on a diff in pull request #4815: BooleanExpressionVisitor and visit method

rdblue commented on code in PR #4815:
URL: https://github.com/apache/iceberg/pull/4815#discussion_r877593469


##########
python/src/iceberg/expressions/base.py:
##########
@@ -346,3 +346,116 @@ def bind(self, schema: Schema, case_sensitive: bool) -> BoundReference:
             raise ValueError(f"Cannot find field '{self.name}' in schema: {schema}")
 
         return BoundReference(field=field, accessor=schema.accessor_for_field(field.field_id))
+
+
+class BooleanExpressionVisitor(ABC):
+    @abstractmethod
+    def visit_always_true(self) -> BooleanExpression:
+        """Visit method for an AlwaysTrue boolean expression
+
+        Note: This visit method has no arguments since AlwaysTrue instances have no context.
+
+        Returns:
+            BooleanExpression: The resulting expression after any modifications performed by the visitor
+        """
+
+    @abstractmethod
+    def visit_always_false(self) -> BooleanExpression:
+        """Visit method for an AlwaysFalse boolean expression
+
+        Note: This visit method has no arguments since AlwaysFalse instances have no context.
+
+        Returns:
+            BooleanExpression: The resulting expression after any modifications performed by the visitor
+        """
+
+    @abstractmethod
+    def visit_not(self, result: BooleanExpression) -> BooleanExpression:
+        """Visit method for a Not boolean expression
+
+        Args:
+            left (BooleanExpression): The left side of the expression
+            right (BooleanExpression): The right side of the expression

Review Comment:
   Looks like this was copy-pasted and not updated.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org