docstr: Get selected columns to prune data source.
  
  Parameters
  ----------
  op : OperandType
      Operand.
  
  Returns
  -------
  columns : list
      Columns selected.
docstr_tok: ["Get","selected","columns","to","prune","data","source",".","Parameters","--","--","--","--","--","op",":","OperandType","Operand",".","Returns","--","--","--","-","columns",":","list","Columns","selected","."]
code: def _get_selected_columns(self, op: OperandType) -> List[Any]:
      """
      Get selected columns to prune data source.
  
      Parameters
      ----------
      op : OperandType
          Operand.
  
      Returns
      -------
      columns : list
          Columns selected.
      """
  
file_path: mars/mars/optimization/logical/common/column_pruning.py
imports: from abc import ABCMeta, abstractmethod
  from typing import Any, List
  from ..core import OperandBasedOptimizationRule, OptimizationRecord, OptimizationRecordType
  from ....core import OperandType, TileableType, CHUNK_TYPE
  from ....dataframe.datasource.core import ColumnPruneSupportedDataSourceMixin
  from ....dataframe.utils import parse_index
  from ....utils import implements
label_desc: Use image node_id 4 for calling the PruneDataSource obj's underlying member method code with example usage: obj._get_selected_columns(op) without return types