class_docstr: A debugpy message queue.
class_docstr_tok: ["A","debugpy","message","queue","."]
code: def _put_message(self, raw_msg):
      self.log.debug("QUEUE - _put_message:")
      msg = t.cast(t.Dict[str, t.Any], jsonapi.loads(raw_msg))
      if msg["type"] == "event":
          self.log.debug("QUEUE - received event:")
          self.log.debug(msg)
          self.event_callback(msg)
      else:
          self.log.debug("QUEUE - put message:")
          self.log.debug(msg)
          self.message_queue.put_nowait(msg)
  
imports: import os
  import re
  import sys
  import typing
  from pathlib import Path
  import zmq
  from IPython.core.getipython import get_ipython
  from IPython.core.inputtransformer2 import leading_empty_lines
  from tornado.locks import Event
  from tornado.queues import Queue
  from zmq.utils import jsonapi
  from .compiler import get_file_name, get_tmp_directory, get_tmp_hash_seed
label_desc: Use image node_id 3 for calling the DebugpyMessageQueue obj's underlying member method code with example usage: obj._put_message(raw_msg) without return types