parameters: (names: List[str], delegate, cache: bool = False, wrap: bool = False)
return_statement: return wrapper
docstring: Class decorator to pin attributes from an ExtensionArray to a Index subclass.
  
      Parameters
      ----------
      names : List[str]
      delegate : class
      cache : bool, default False
      wrap : bool, default False
          Whether to wrap the inherited result in an Index.
docstring_summary: Class decorator to pin attributes from an ExtensionArray to a Index subclass.
docstring_tokens: Class decorator to pin attributes from an ExtensionArray to a Index subclass .
function: def inherit_names(names: List[str], delegate, cache: bool = False, wrap: bool = False):
      """
      Class decorator to pin attributes from an ExtensionArray to a Index subclass.
  
      Parameters
      ----------
      names : List[str]
      delegate : class
      cache : bool, default False
      wrap : bool, default False
          Whether to wrap the inherited result in an Index.
      """
  
      def wrapper(cls):
          for name in names:
              meth = inherit_from_data(name, delegate, cache=cache, wrap=wrap)
              setattr(cls, name, meth)
  
          return cls
  
      return wrapper
function_tokens: def inherit_names ( names : List [ str ] , delegate , cache : bool = False , wrap : bool = False ) : def wrapper ( cls ) : for name in names : meth = inherit_from_data ( name , delegate , cache = cache , wrap = wrap ) setattr ( cls , name , meth ) return cls return wrapper