-
Notifications
You must be signed in to change notification settings - Fork 86
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Start writing RecordArray (C++ and Fillable, but not Numba). (#25)
Includes zero-field `RecordArray` (with non-zero length) and `tojson`/`fromjson`, but not Numba. * [WIP] Start writing RecordArray (full scope to be determined). * Skeleton for RecordArray. * Modifiers compile. * Tests pass. * String representation of RecordArray is done. * fields, key, and aliases. * tojson_part is more sane; fixed FIXME in NumpyArray and added RecordArray::tojson_part. * Some more helper functions compile. * RecordArray utility functions work. * Stubs for Record (scalar of RecordArray). * Can produce Records from RecordArray. * Record::tojson_part. * tolist(Record). * RecordType stub compiles. * util::quote as a TODO stub for proper string-escapes. * Fixed Windows errors and warnings. * Actually test before committing. * RecordType::equals. * Done with RecordType (if Python dict order is okay). * Content returns the right type for scalar and non-scalar data. * Defined slices for a string key and a list of string keys. * Stubbed out slicing of fields. * Stubbed all Content::getitem_field and getitem_fields. * Ready to start implementing getitem_field(s). * Record and RecordArray::getitem_* except for all getitem_nexts. * Better constructor for RecordArray. * Ready to implement *::getitem_next(field?) and Record*::getitem_next(*). * Implemented and tested *::getitem_field?. * *::getitem_next(field?) can be defined in general, in terms of *::getitem_field?. * Record*::getitem_next(*) are done. * Slicing within records (if part of a chain, not on a single Record object). * [skip ci] Save work (because the setid is actually functional; tracing down another bug). * RecordArray::setid is done * Fixed some Identity bugs and introduced location at Python-level. * Fixed 32-bit warnings and added Record*::withoutkeys. * Stubs for filling records. * Fillable::beginrec should know the set of keys, even though this will be hard to provide from JSON. * Formal Slots object. * A fillable record type is defined by its slotsid; field names only taken once. * TupleFillable is a simpler version of RecordFillable. * First working version of FillableArray with tuples (RecordArray). * Don't let any fields get ahead of the tuple. * All tuple methods implemented, though only the main path has been tested. * Updated stubs for RecordFillable, but I forgot about the nested case. * Sketch out whole fillable algorithm in Python before implementing in C++. * Repertoire of (mock) Content types for testing the Fillable algorithm. * Stubbed out Fillable implementations. * Filling in Fillable implementations. * Filling in Fillable implementations (part 2). * Filling in Fillable implementations (part 3; nested tuples are working). * Filling in Fillable implementations (part 4; missing fields are working). * Filling in Fillable implementations (part 5; nullptr returns are still needed in lists). * Filling in Fillable implementations (part 6; working on nested lists: there's an error). * Temporarily start a clean slate to try out this new 'active' idea. * Building up new structure: 'active' obliviates the need for a special nullptr interpretation. * Back up to the previous level, but simpler now. * Put all checks into the same order. * Started on unions. * Seems I have 5 cases left... * Studies of fillable-2 have full coverage (except error conditions and some printing). * Move fillable-2 into place as the only fillable study. * [skip ci] Cleared out all implementations to start again (tests will fail). * [skip ci] Don't pass down FillableArray* because we don't need it. * [skip ci] Uniform Fillable constructors. * [skip ci] Copied implementations into UnknownFillable and OptionFillable. * [skip ci] Copied implementations into UnionFillable. * [skip ci] Copied implementations into ListFillable. * [skip ci] Copied implementations into TupleFillable. * [skip ci] Copied implementations into primitive Fillables. * All tests pass with the new Fillable implementations. * Ready to fill in implementations for RecordFillable. * Implemented RecordFillable but have not tested it yet. * fromiter with tuples. * fromiter with records. * Done with this PR. The next PR will put RecordArrays in Numba. * RecordArray with zero fields and non-zero length is now possible. * RecordArray now supports tojson/fromjson.
- Loading branch information
Showing
66 changed files
with
5,262 additions
and
402 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
0.1.24 | ||
0.1.25 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.