class_docstr: Base class for composite domains, e.g. ZZ[x], ZZ(X). 
docstr: Inject generators into this domain.  
code: def inject(self, *symbols):
      """Inject generators into this domain."""
      if not (set(self.symbols) & set(symbols)):
          return self.__class__(
              self.domain, self.symbols + symbols, self.order
          )
      else:
          raise GeneratorsError(
              "common generators in %s and %s" % (self.symbols, symbols)
          )
  
file_path: sympy/sympy/polys/domains/compositedomain.py
imports: from sympy.polys.domains.domain import Domain
  from sympy.polys.polyerrors import GeneratorsError
  from sympy.utilities import public
label_desc: Use image node_id 1 for calling the CompositeDomain obj's underlying member method code with example usage: obj.inject() and returns: self