class_docstr: A proxy to the function returns of arbitrary type.
  
  When a function decorated with ``@step`` is invoked, the return of that function
  is of type `DelayedReturn`. If the `DelayedReturn` object represents a Python
  collection, such as a tuple, list, or dict, you can reference the child items
  in the following ways:
  
    * ``a_member = a_delayed_return[2]``
    * ``a_member = a_delayed_return["a_key"]``
    * ``a_member = a_delayed_return[2]["a_key"]``
docstr: Expression structure for workflow service calls using JsonGet resolution.
code: def _to_json_get(self) -> JsonGet:
      """Expression structure for workflow service calls using JsonGet resolution."""
      from sagemaker.remote_function.core.stored_function import (
          JSON_SERIALIZED_RESULT_KEY,
          RESULTS_FOLDER,
          JSON_RESULTS_FILE,
      )
  
      if not self._step.name:
          raise ValueError("Step name is not defined.")
  
      s3_root_uri = self._step._job_settings.s3_root_uri
      # Resolve json path --
      #   Deserializer will be able to resolve a JsonGet using path "Return[1]" to
      #   access value 10 from following serialized JSON:
      #       {
      #           "Return": [10, 20],
      #           "Exception": None
      #       }
      _resolved_reference_path = JSON_SERIALIZED_RESULT_KEY
      if self._reference_path:
          for path in self._reference_path:
              op, key = path
              if not op == "__getitem__":
                  raise RuntimeError(
                      f"Only __getitem__ is supported for DelayedReturn object. "
                      f"Got {op} instead."
                  )
              if isinstance(key, int):
                  _resolved_reference_path = (
                      _resolved_reference_path + f"[{key}]"
                  )
              else:
                  _resolved_reference_path = (
                      _resolved_reference_path + f"['{key}']"
                  )
  
      return JsonGet(
          s3_uri=Join(
              "/",
              [
                  s3_root_uri,
                  ExecutionVariables.PIPELINE_NAME,
                  ExecutionVariables.PIPELINE_EXECUTION_ID,
                  self._step.name,
                  RESULTS_FOLDER,
                  JSON_RESULTS_FILE,
              ],
          ),
          json_path=_resolved_reference_path,
          step=self._step,
      )
  
imports: from __future__ import absolute_import
  import logging
  from functools import wraps
  from typing import Dict, List, Optional, Union, Callable, get_origin, get_type_hints, TYPE_CHECKING
  from sagemaker.workflow.functions import JsonGet, Join
  from sagemaker.workflow.entities import RequestType, PipelineVariable
  from sagemaker.workflow.execution_variables import ExecutionVariables
  from sagemaker.workflow.retry import RetryPolicy
  from sagemaker.workflow.steps import Step, ConfigurableRetryStep, StepTypeEnum
  from sagemaker.workflow.step_collections import StepCollection
  from sagemaker.workflow.step_outputs import StepOutput
  from sagemaker.workflow.utilities import trim_request_dict, load_step_compilation_context
  from sagemaker.s3_utils import s3_path_join
  from sagemaker.utils import unique_name_from_base_uuid4, format_tags, Tags
label_desc: Use image node_id 6 for calling the DelayedReturn obj's underlying member method code with example usage: obj._to_json_get() and returns: JsonGet