class_docstr: Abstract class for optimization rule.
docstr: Apply the optimization rule to the execution plan.
docstr_tok: ["Apply","the","optimization","rule","to","the","execution","plan","."]
code: def apply(plan: Plan) -> Plan:
      """Apply the optimization rule to the execution plan."""
      raise NotImplementedError
  
imports: from typing import List
  from .plan import Plan
label_desc: Use image node_id 1 for calling the Rule obj's underlying member method code with example usage: obj.apply(plan) without return types