cwl_utils.graph_split
=====================

.. py:module:: cwl_utils.graph_split

.. autoapi-nested-parse::

   Unpacks the result of `cwltool --unpack`.

   Only tested with a single v1.0 workflow.



Attributes
----------

.. autoapisummary::

   cwl_utils.graph_split.stringify_dict
   cwl_utils.graph_split.defaultStreamHandler


Functions
---------

.. autoapisummary::

   cwl_utils.graph_split.arg_parser
   cwl_utils.graph_split.main
   cwl_utils.graph_split.run
   cwl_utils.graph_split.graph_split
   cwl_utils.graph_split.rewrite_id
   cwl_utils.graph_split.rewrite
   cwl_utils.graph_split.rewrite_import
   cwl_utils.graph_split.rewrite_types
   cwl_utils.graph_split.rewrite_schemadef
   cwl_utils.graph_split.json_dump
   cwl_utils.graph_split.yaml_dump


Module Contents
---------------

.. py:data:: stringify_dict
   :type:  Callable[[dict[str, Any]], str] | None

.. py:data:: defaultStreamHandler

.. py:function:: arg_parser()

   Build the argument parser.


.. py:function:: main()

   Console entry point.


.. py:function:: run(args)

   Split the packed CWL at the path of the first argument.


.. py:function:: graph_split(sourceIO, output_dir, output_format, mainfile, pretty)

   Loop over the provided packed CWL document and split it up.


.. py:function:: rewrite_id(entry, this_id)

.. py:function:: rewrite(document, doc_id, output_dir, pretty = False)

   Rewrite the given element from the CWL $graph.


.. py:function:: rewrite_import(document)

   Adjust the $import directive.


.. py:function:: rewrite_types(field, entry_file, sameself)

   Clean up the names of the types.


.. py:function:: rewrite_schemadef(document, output_dir, pretty = False)

   Dump the schemadefs to their own file.


.. py:function:: json_dump(entry, output_file)

   Output object as JSON.


.. py:function:: yaml_dump(entry, output_handle, pretty)

   Output object as YAML.


