Mike Auty
0e016797bb
Typing: Change signatures to co-variant Mapping from Dict
2019-11-27 11:30:14 +00:00
Mike Auty
40fcdf9469
exceptions: SymbolErrors now contain specific information
2019-11-13 19:27:00 +00:00
Mike Auty
9ac622afa0
Fix up import style to be consistent.
2019-10-01 23:46:02 +01:00
Mike Auty
e0b9d72c84
Update the license URL and LICENSE.txt
2019-09-25 21:44:05 +01:00
Mike Auty
e922cef316
Improve docstrings for all plugins, and reformat all docstrings.
2019-09-07 22:59:54 +01:00
Mike Auty
c88044db5b
Update more API documentation.
2019-09-04 00:34:55 +01:00
Mike Auty
a3caf39097
Use a mapping to determine kind to class.
2019-08-31 12:57:53 +01:00
Mike Auty
9cde94bceb
Change the license blurb on all files.
2019-08-27 23:11:00 +01:00
Mike Auty
6000d6c322
Update documentation around the Intermediary Symbol Format.
2019-08-17 23:22:04 +01:00
Mike Auty
f5615e28f6
Fix up more typing discrepancies.
2019-07-15 17:43:43 +01:00
Mike Auty
e503c3667f
Improve enumeration support.
2019-06-30 14:12:43 +01:00
Mike Auty
603512122d
Allow class_types to be specified as part of SymbolTable construction.
2019-04-18 01:03:59 +01:00
Mike Auty
c64ed6a8dd
Remove validity checking in favour of static-type checking.
...
This removes the assertions that checked plugin devs didn't do anything
overly bad in favour of using mypy to ensure appropriate type-checking.
It also moves the ProgressCallback typing information to constants in
order to avoid circular imports (since constants doesn't import
anything).
2019-01-20 02:35:49 +00:00
Mike Auty
fdc6efc4ad
Add in the LICENSE and the README.
2018-12-19 23:55:03 +00:00
Mike Auty
19572b6e1e
Reformat all python files using yapf with custom volatility style.
2018-12-16 16:50:17 +00:00
Mike Auty
29d41470a4
Mass reformat of typing imports
...
Relented on the strict import of direct objects/classes for the typing
module only. Typing module components can be directly imported because
it makes the code really painful to read and write otherwise.
This is still in-line with the python style guide adopted from Google at
http://google.github.io/styleguide/pyguide.html section 2.2.
2018-12-16 13:04:22 +00:00
Mike Auty
241b7475fb
Add in an initial implementation of the metadata system (extremely liable to change).
2018-10-30 15:01:31 +00:00
Mike Auty
059be517fc
Fix up minor typing issues.
2018-08-29 23:29:00 +01:00
Mike Auty
ee38c9c4fe
Add in caching for the lengthy symbol sorting.
2018-08-23 17:29:16 +01:00
Mike Auty
0f08432aa5
Refactor Symbol interface to SymbolInterface.
2018-08-09 14:28:08 +01:00
Mike Auty
4897b7ab81
Fix up some typing errors.
2018-07-22 13:19:20 +01:00
Mike Auty
2f28dfa6c9
Support finding symbols by ranges.
2018-07-19 09:51:51 +01:00
Mike Auty
b228ad8e95
Add comment concerning reconstructability of SymbolTables.
2018-06-06 23:10:21 +01:00
Mike Auty
7a52ac9deb
Fix a large number of typing issues.
...
There are several instances where mypy didn't detect
if blah is not None:
blah = thing
and so were rewritten as:
blah = blah or thing
2018-06-04 01:25:02 +01:00
Mike Auty
a5df5372f5
Add in table_mapping through the ISF classes.
2018-05-23 22:23:32 +01:00
Mike Auty
f23c4b51e4
Add in ModuleCollections for identifying symbols.
2018-05-07 00:05:01 +01:00
Mike Auty
c6a58ffc06
Fix up sphinx warnings.
2018-03-20 22:30:05 +00:00
Mike Auty
ccb1903003
Fix up Symbol.name issue as spotted by npetroni.
2018-03-20 17:22:38 +00:00
Mike Auty
b7c8961d50
Fix up the addition of the append method.
2018-02-10 23:43:29 +00:00
Mike Auty
f3b6b5311f
Fix up a couple extra typing issues, improving code quality.
2018-02-10 22:51:56 +00:00
Mike Auty
942de5f166
Finish adding type-annotations thoughout the code.
2017-12-13 20:48:52 +00:00
Mike Auty
ee12b81f4a
Add in type-annotations for renderers and start on symbols.
2017-12-13 20:48:52 +00:00
Mike Auty
21b4506b7b
Add in type-annotations for the remaining interfaces.
2017-12-13 20:48:52 +00:00
Mike Auty
0ecf68af0f
Support table remapping for referenced symbol names.
2017-11-27 14:39:46 +00:00
Mike Auty
2d570fdb62
Fix up the broken get_symbols_by_location call.
2017-11-23 01:36:16 +00:00
Mike Auty
e90b4e2d02
Add and make use of free_table_name for symbol_spaces.
2017-09-03 22:54:42 +01:00
Mike Auty
2954d7433f
Improve documentation and ordering.
2017-08-11 19:29:37 +01:00
Mike Auty
e434909e50
Make SymbolTable.symbols consistent with enumerations and types.
2017-08-11 19:25:13 +01:00
Mike Auty
d80fbf1a69
Fix validation typo preventing the newer symbols from properly working.
2017-07-10 00:04:29 +01:00
Mike Auty
5675942050
Add in symbol constant_data and bump the schema to 0.4.1.
...
Special thanks to @npetroni for having to suffer a very long discussion
with me about my need for things to have particular names because I
don't know the field very well. 5:S Sorry! 5:)
2017-07-08 21:50:25 +01:00
Mike Auty
f97a5b4700
All the object constructor to accept a Symbol as well as a name.
2017-04-26 09:59:47 +01:00
Mike Auty
08eb2bce96
Add in schema 2.1.0 and supporting code changes.
2017-02-13 22:39:20 +00:00
Mike Auty
6603e503c5
Rework enumeration access in symbol tables.
2017-02-04 14:46:46 +00:00
Mike Auty
f0bc4ea59b
Improve the symbol interface documentation, but it needs more work.
2016-12-30 02:46:40 +00:00
Mike Auty
b745f41c6c
Move the interface fo rthe SymbolSpace over to the interfaces module.
2016-12-28 22:50:52 +00:00
Mike Auty
cf4ac3a7f6
Allow enumeration dictionaries to be accessed through the SymbolSpace directly.
2016-12-18 02:48:23 +00:00
Mike Auty
ed716ca12a
Convert SymbolTableInterfaces to descend from ConfigurableInterface
...
This allows SymbolTables to hold actual requirements (which
IntermedSymbolTable already did, but without pulling in the right
interface). It means that values like kernel_virtual_offset get saved.
We still need to figure out how to allow plugins to demand optional
configuration values in other places (such as the kvo) but for now the
plugin will barf if it doesn't get it.
2016-12-12 02:08:32 +00:00
Mike Auty
667014a1fd
Attempt to standardize error message display.
2016-10-30 17:51:45 +00:00
Mike Auty
6f1bdcb6cb
Refactor symbol.offset to symbol.address.
2016-10-26 01:42:37 +01:00
Mike Auty
43aba96e3f
Minor pylint (alphabetical imports) and refactoring the construct class to work for symbols.
2016-07-30 01:58:29 +01:00