class_docstr: Create a zmq Context
  
  A zmq Context creates sockets via its ``ctx.socket`` method.
class_docstr_tok: ["Create","a","zmq","Context","A","zmq","Context","creates","sockets","via","its","``","ctx.socket","``","method","."]
docstr: Shadow an existing pyczmq context
  
  ctx is the FFI `zctx_t *` pointer
  
  .. versionadded:: 14.1
docstr_tok: ["Shadow","an","existing","pyczmq","context","ctx","is","the","FFI","`","zctx_t","*","`","pointer","..","versionadded",":",":","14.1"]
code: def shadow_pyczmq(cls, ctx):
      """Shadow an existing pyczmq context
  
      ctx is the FFI `zctx_t *` pointer
  
      .. versionadded:: 14.1
      """
      from pyczmq import zctx
      from zmq.utils.interop import cast_int_addr
  
      underlying = zctx.underlying(ctx)
      address = cast_int_addr(underlying)
      return cls(shadow=address)
  
imports: import atexit
  import os
  from threading import Lock
  from weakref import WeakSet
  from zmq.backend import Context
  from .None import constants
  from .attrsettr import AttributeSetter
  from .constants import ENOTSUP, LINGER, ctx_opt_names
  from .socket import Socket
  from zmq.error import ZMQError
label_desc: Use image node_id 7 for calling the Context obj's underlying member method code with example usage: obj.shadow_pyczmq(cls, ctx) and returns: cls