Mike Auty
942de5f166
Finish adding type-annotations thoughout the code.
2017-12-13 20:48:52 +00:00
Mike Auty
d79d428edc
Ensure we use the native dictionary for more recent IFF versions (and correct issues with pointers and chars).
2017-06-23 15:44:58 +01:00
Mike Auty
5e15d522bd
Remove automatic IDE-inserted attributions.
...
They weren't consistent and they show just remind me how slowly
I've been getting vol 3 written! 5:S
There's git commits to track all of that stuff if we need it.
2017-05-14 11:40:49 +01:00
Mike Auty
b54cb86c89
Allow automagics to use natives without a set of global natives.
...
This allows NativeSymbolTables to be appended to symbol_spaces and
uses this to let automagic modules (which have no existing symbol table
to rely on) to load natives for reading format data.
2016-12-26 22:49:51 +00:00
Mike Auty
1c3638d6c5
Allow native tables to accept and purpetuate table names.
2016-12-25 18:33:04 +00:00
Mike Auty
54678823f8
Refactor BitField subtype to base_type to match enums (and fix a minor enum typo too).
2016-12-18 16:12:08 +00:00
Mike Auty
ac6a5a2b9a
Ensure that we use a reasonable type for enumerations when constructing them without further details.
2016-12-15 23:04:23 +00:00
Mike Auty
e1cc55aeed
Add in wchar to our set of bases for x64 systems.
2016-12-04 01:02:17 +00:00
Mike Auty
6b405383c4
Refactor targets to subtypes.
2016-10-26 01:24:58 +01:00
Mike Auty
0b447b6958
Initial implementation of the Intermediate Format, breaks the vtypes format and needs a lot of tidying.
2016-10-26 01:09:29 +01:00
Mike Auty
e02feed16e
Python 3 has a sane super() implementation (no arguments), so convert to using that.
2016-08-14 00:55:02 +01:00
Mike Auty
2d23c93def
Completely refactor constants and structures to symbols and types.
2016-05-22 11:51:06 +01:00
Mike Auty
0ef389dec9
Tidy up Bytes and String to require all the appropriate parameters.
2016-02-14 02:49:28 +00:00
Mike Auty
9c1dbf88e2
Change Bytes to not require a struct_format, since we generate it from the length parameter.
2016-02-14 01:43:09 +00:00
Mike Auty
a8828d7185
Add Strings and Bytes to the native structure code.
2016-02-13 17:18:23 +00:00
Mike Auty
65fcd5fbe5
Minor pylinting.
2015-09-28 01:34:52 +01:00
Mike Auty
bd4121448a
Add in minor optimization.
2015-01-19 00:51:17 +00:00
Mike Auty
73bd451759
Minor pylinting across the whole project.
2015-01-04 21:14:17 +00:00
Mike Auty
a97bd19988
Reformat and optimize code, including trailing whitespace and end of file newline.
2014-06-10 15:40:50 +01:00
Mike Auty
3709143c40
Clean-up a few files according to PyCharm's warning system.
2014-03-28 08:47:00 +00:00
Mike Auty
5b23325447
Change symbol_names to structure_names.
2014-03-22 13:46:22 +00:00
Mike Auty
26f8d0f7cc
Add in write support, and change symbols to be both structures and constants.
2013-12-28 05:30:54 +00:00
Mike Auty
26caf31974
Revisit the decision to try out super, and decide to stick with specific inheritance to avoid **kwargs everywhere.
2013-05-08 19:17:21 +01:00
Mike Auty
72d971bf3f
More speed-ups by not constantly rebuilding the native_dictionary list.
2013-05-07 23:38:03 +01:00
Mike Auty
9c2e486356
Refactor code locations, tidy up object initializers and add in File Layer.
2013-05-06 17:45:15 +01:00
Mike Auty
86c57972b7
Fix up pointer issues (including typo).
2013-05-05 23:11:26 +01:00
Mike Auty
e351958413
Move context, tidy up object model and add memory to test_rig.
2013-05-05 22:06:38 +01:00
Mike Auty
dc65c356fc
Restructure the packages, change importing style to from ... import.
2013-05-04 15:44:59 +01:00
Mike Auty
e654391e86
Fix up the top-level symbol resolution mechanism.
2013-04-21 23:03:36 +01:00
Mike Auty
9b91bfa88c
Rework templates so that they're created referentially, and that attributes are generated by the underlying class and arguments.
2013-04-21 18:22:38 +01:00
Mike Auty
b0345ce9ab
Flesh out symbol system, reworking several parts. Still requires on-demand resolving of symbols.
2013-04-14 20:17:15 +01:00