class_docstr: A Pipeline object represents a collection of named expressions to be
  compiled and executed by a PipelineEngine.
  
  A Pipeline has two important attributes: 'columns', a dictionary of named
  `Term` instances, and 'screen', a Filter representing criteria for
  including an asset in the results of a Pipeline.
  
  To compute a pipeline in the context of a TradingAlgorithm, users must call
  ``attach_pipeline`` in their ``initialize`` function to register that the
  pipeline should be computed each trading day.  The outputs of a pipeline on
  a given day can be accessed by calling ``pipeline_output`` in
  ``handle_data`` or ``before_trading_start``.
  
  Parameters
  ----------
  columns : dict, optional
      Initial columns.
  screen : catalyst.pipeline.term.Filter, optional
      Initial screen.
class_docstr_tok: ["A","Pipeline","object","represents","a","collection","of","named","expressions","to","be","compiled","and","executed","by","a","PipelineEngine",".","A","Pipeline","has","two","important","attributes",":","'columns","'",",","a","dictionary","of","named","`","Term","`","instances",",","and","'screen","'",",","a","Filter","representing","criteria","for","including","an","asset","in","the","results","of","a","Pipeline",".","To","compute","a","pipeline","in","the","context","of","a","TradingAlgorithm",",","users","must","call","``","attach_pipeline","``","in","their","``","initialize","``","function","to","register","that","the","pipeline","should","be","computed","each","trading","day",".","The","outputs","of","a","pipeline","on","a","given","day","can","be","accessed","by","calling","``","pipeline_output","``","in","``","handle_data","``","or","``","before_trading_start","``",".","Parameters","--","--","--","--","--","columns",":","dict",",","optional","Initial","columns",".","screen",":","catalyst.pipeline.term.Filter",",","optional","Initial","screen","."]
docstr: Compile into an ExecutionPlan.
  
  Parameters
  ----------
  screen_name : str
      Name to supply for self.screen.
  default_screen : catalyst.pipeline.term.Term
      Term to use as a screen if self.screen is None.
  all_dates : pd.DatetimeIndex
      A calendar of dates to use to calculate starts and ends for each
      term.
  start_date : pd.Timestamp
      The first date of requested output.
  end_date : pd.Timestamp
      The last date of requested output.
docstr_tok: ["Compile","into","an","ExecutionPlan",".","Parameters","--","--","--","--","--","screen_name",":","str","Name","to","supply","for","self.screen",".","default_screen",":","catalyst.pipeline.term.Term","Term","to","use","as","a","screen","if","self.screen","is","None",".","all_dates",":","pd.DatetimeIndex","A","calendar","of","dates","to","use","to","calculate","starts","and","ends","for","each","term",".","start_date",":","pd.Timestamp","The","first","date","of","requested","output",".","end_date",":","pd.Timestamp","The","last","date","of","requested","output","."]
code: def to_execution_plan(
      self, screen_name, default_screen, all_dates, start_date, end_date
  ):
      """
      Compile into an ExecutionPlan.
  
      Parameters
      ----------
      screen_name : str
          Name to supply for self.screen.
      default_screen : catalyst.pipeline.term.Term
          Term to use as a screen if self.screen is None.
      all_dates : pd.DatetimeIndex
          A calendar of dates to use to calculate starts and ends for each
          term.
      start_date : pd.Timestamp
          The first date of requested output.
      end_date : pd.Timestamp
          The last date of requested output.
      """
      return ExecutionPlan(
          self._prepare_graph_terms(screen_name, default_screen),
          all_dates,
          start_date,
          end_date,
      )
  
file_path: catalyst/catalyst/pipeline/pipeline.py
imports: from catalyst.errors import UnsupportedPipelineOutput
  from catalyst.utils.input_validation import expect_element, expect_types, optional
  from .graph import ExecutionPlan, TermGraph
  from .filters import Filter
  from .term import AssetExists, ComputableTerm, Term
label_desc: Use image node_id 7 for calling the Pipeline obj's underlying member method code with example usage: obj.to_execution_plan(screen_name, default_screen, all_dates, start_date, end_date) and returns: ExecutionPlan