| 790 | return cls(new_pd_index, dim=dim, coord_dtype=coord_dtype) |
| 791 | |
| 792 | def create_variables( |
| 793 | self, variables: Mapping[Any, Variable] | None = None |
| 794 | ) -> IndexVars: |
| 795 | from xarray.core.variable import IndexVariable |
| 796 | |
| 797 | name = self.index.name |
| 798 | attrs: Mapping[Hashable, Any] | None |
| 799 | encoding: Mapping[Hashable, Any] | None |
| 800 | |
| 801 | if variables is not None and name in variables: |
| 802 | var = variables[name] |
| 803 | attrs = var.attrs |
| 804 | encoding = var.encoding |
| 805 | else: |
| 806 | attrs = None |
| 807 | encoding = None |
| 808 | |
| 809 | data = PandasIndexingAdapter(self.index, dtype=self.coord_dtype) |
| 810 | var = IndexVariable( |
| 811 | self.dim, data, attrs=attrs, encoding=encoding, fastpath=True |
| 812 | ) |
| 813 | return {name: var} |
| 814 | |
| 815 | def to_pandas_index(self) -> pd.Index: |
| 816 | return self.index |