def __iter__(self):
<EOL>if is_datetimelike(self._values):<EOL><INDENT>return map(com.maybe_box_datetimelike, self._values)<EOL><DEDENT>elif is_extension_array_dtype(self._values):<EOL><INDENT>return iter(self._values)<EOL><DEDENT>else:<EOL><INDENT>return map(self._values.item, range(self._values.size))<EOL><DEDENT>
Return an iterator of the values.

These are each a scalar type, which is a Python scalar
(for str, int, float) or a pandas scalar
(for Timestamp/Timedelta/Interval/Period)