class_docstr: This class is not only important to extend `tree.Class`, it is also a
  important for descriptors (if the descriptor methods are evaluated or not).
code: def get_param_names(self):
      for name in self.get_function_slot_names("__init__"):
          for context_ in name.infer():
              try:
                  method = context_.get_param_names
              except AttributeError:
                  pass
              else:
                  return list(method())[1:]
      return []
  
imports: from jedi._compatibility import use_metaclass
  from jedi.parser_utils import get_parent_scope
  from jedi.evaluate.cache import evaluator_method_cache, CachedMetaClass
  from jedi.evaluate import compiled
  from jedi.evaluate.lazy_context import LazyKnownContext
  from jedi.evaluate.filters import ParserTreeFilter, TreeNameDefinition, ContextName
  from jedi.evaluate.base_context import ContextSet, iterator_to_context_set, TreeContext
label_desc: Use image node_id 8 for calling the ClassContext obj's underlying member method code with example usage: obj.get_param_names() and returns: list, list