class_docstr: Abstract class for all the scan based planners
  
  Arguments:
      predicate (AbstractExpression): An expression used for filtering
code: def __hash__(self) -> int:
      return hash((super().__hash__(), self.predicate))
  
imports: from evadb.expression.abstract_expression import AbstractExpression
  from evadb.plan_nodes.abstract_plan import AbstractPlan
  from evadb.plan_nodes.types import PlanOprType
label_desc: Use image node_id 3 for calling the AbstractScan obj's underlying member method code with example usage: obj.__hash__() and returns: hash