class_docstr: Executes functional expression which yields a table of rows
  Arguments:
      node (AbstractPlan): FunctionScanPlan
code: def __init__(self, db: EvaDBDatabase, node: FunctionScanPlan):
      super().__init__(db, node)
      self.func_expr = node.func_expr
      self.do_unnest = node.do_unnest
  
file_path: evadb/evadb/executor/function_scan_executor.py
imports: from typing import Iterator
  from evadb.database import EvaDBDatabase
  from evadb.executor.abstract_executor import AbstractExecutor
  from evadb.executor.executor_utils import instrument_function_expression_cost
  from evadb.models.storage.batch import Batch
  from evadb.plan_nodes.function_scan_plan import FunctionScanPlan
label_desc: Use image node_id 1 to create a new FunctionScanExecutor object from inherited base classes: AbstractExecutor with example: obj = FunctionScanExecutor(db, node)