class_docstr: Wrapper for SystemExit that includes additional details.
  
  The merge implementation makes use of SystemExit to terminate the
  process for various reasons. A wrapper is used to convey
  additional details about a system exit that can be used by an API
  (e.g. `guild.commands.merge_api`).
  
  A caller who's interested in system exit details can call
  `main_with_system_exit_detail` below and should catch
  `SystemExitWithDetail` to get details about a system exit. Note
  the caller must handle the system exit if needed.
  
  For detail types, see `XxxDetail` classes below.
class_docstr_tok: ["Wrapper","for","SystemExit","that","includes","additional","details",".","The","merge","implementation","makes","use","of","SystemExit","to","terminate","the","process","for","various","reasons",".","A","wrapper","is","used","to","convey","additional","details","about","a","system","exit","that","can","be","used","by","an","API","(","e.g",".","`","guild.commands.merge_api","`",")",".","A","caller","who","'s","interested","in","system","exit","details","can","call","`","main_with_system_exit_detail","`","below","and","should","catch","`","SystemExitWithDetail","`","to","get","details","about","a","system","exit",".","Note","the","caller","must","handle","the","system","exit","if","needed",".","For","detail","types",",","see","`","XxxDetail","`","classes","below","."]
code: def __init__(self, code, detail):
      super().__init__(code, detail)
      self.code = code
      self.detail = detail
  
imports: import os
  from guild import cli
  from guild import cmd_impl_support
  from guild import config
  from guild import exit_code
  from guild import run_merge
  from guild import run_util
  from guild import util
  from guild import vcs_util
  from .None import runs_impl
label_desc: Use image node_id 1 to create a new SystemExitWithDetail object from inherited base classes: Exception with example: obj = SystemExitWithDetail(code, detail)