Commits


andy-thomason authored and Neville Dipale committed c7a7d2dcc46
ARROW-5949: [Rust] Implement Dictionary Array @nevi-me and @andygrove I've been working on the structure of the dictionary array getting the structure back into the spirit of the original design. The DictionaryArray is now typed by the key native type and could be typed by the value array type as otherwise, we can't implement value() in any meaningful way. I've extended ArrowNativeType for use as an index (to/from usize) and added a value iterator which simplifies iteration over arrays of all kinds. Closes #6095 from andy-thomason/ARROW-5949 and squashes the following commits: aebc6258f <andy-thomason> Format the code. 2365cb306 <andy-thomason> Fix Andy G's issues - thanks. b23f3624c <andy-thomason> Hack src/flight to pass tests. f212bcfbe <andy-thomason> Rebase to current master. 0f1bbb3f8 <andy-thomason> Fix merge error. adfa037e3 <andy-thomason> Format code. 03895e64d <andy-thomason> Add ArrowDictionaryKeyType subtype. f36cccca8 <andy-thomason> Remove option for nulls in values. 2351677e4 <andy-thomason> Change unwraps to expects d9da53429 <andy-thomason> Format code! 5c40b5f40 <andy-thomason> Add FromIterator<&str/Option<&str>> to DictionaryArray. 5f9e1fc5c <andy-thomason> Add StringDictionaryBuilder with null-zero schema. b970c79d6 <andy-thomason> Format the code. 80a05f0fc <andy-thomason> Rebase latest. 36fbd6b67 <andy-thomason> Remove keys slice and replace with iterator. be0041b74 <andy-thomason> Fix comment typo. 5c975ab90 <andy-thomason> Fix code formatting. 29b43bc5d <andy-thomason> Fix and test Debug for DictionaryArray 02bc6d36e <andy-thomason> Fix key issue with primitive dictionary builder. 69d678180 <andy-thomason> Remove tuple from Dictionary datatype. 1e0e84923 <andy-thomason> Add missing case to Display for ArrowError 4e54ef305 <Renjie Liu> ARROW-7312: Implement std::error::Error for ArrowError. 1a95bac81 <Neville Dipale> add dictionary_by_field to stream reader 9d8f29045 <andy-thomason> Change to original layout and add primitive builder. bd27cfbce <andy-thomason> Format 48689be04 <andy-thomason> Specialise the Dictionary Array by key type. 77f8a33f5 <andy-thomason> Unreachable in create_dictionary_array. 044aea677 <andy-thomason> Comment change. c9d6dd539 <Andy Thomson> Update rust/arrow/src/array/array.rs c19969c6d <Andy Thomson> Update rust/arrow/src/array/array.rs f7213bb77 <Andy Thomson> Update rust/arrow/src/array/array.rs f3416e0fc <Andy Thomson> Update rust/arrow/src/util/integration_util.rs 1fbd7cc44 <Andy Thomson> Update rust/arrow/src/ipc/file/reader.rs 497e16809 <andy-thomason> fix schema test ee278d55b <andy-thomason> Rebase master Lead-authored-by: andy-thomason <andy.thomason@genomicsplc.com> Co-authored-by: Andy Thomson <andy@andythomason.com> Co-authored-by: Neville Dipale <nevilledips@gmail.com> Co-authored-by: Renjie Liu <liurenjie2008@gmail.com> Signed-off-by: Neville Dipale <nevilledips@gmail.com>