Commits

Wes McKinney authored 74685f38630
ARROW-427: [C++] Implement dictionary array type I thought some about this and thought that it made sense to store the reference to the dictionary values themselves in the data type object, similar to `CategoricalDtype` in pandas. This will be at least adequate for the Feather file format merge. In the IPC metadata, there is no explicit dictionary type -- an array can be dictionary encoded or not. On JIRA we've discussed adding a dictionary type flag indicating whether or not the dictionary values/categories are ordered (also called "ordinal") or unordered (also called "nominal"). That hasn't been done yet. Author: Wes McKinney <wes.mckinney@twosigma.com> Closes #268 from wesm/ARROW-427 and squashes the following commits: 5ce3701 [Wes McKinney] cpplint a6c2896 [Wes McKinney] Revert T::Equals(const T& other) to EqualsExact to appease clang 9a4edb5 [Wes McKinney] Implement rudimentary DictionaryArray::Validate 9efe46b [Wes McKinney] Add tests, implementation for DictionaryArray::Equals and RangeEquals b06eb86 [Wes McKinney] Implement PrettyPrint for DictionaryArray 17c70de [Wes McKinney] Refactor, compose shared_ptr<DataType> in DictionaryType b52b3a7 [Wes McKinney] Add rudimentary DictionaryType and DictionaryArray implementation for discussion