Mike Auty
ee12b81f4a
Add in type-annotations for renderers and start on symbols.
2017-12-13 20:48:52 +00:00
Mike Auty
e90b4e2d02
Add and make use of free_table_name for symbol_spaces.
2017-09-03 22:54:42 +01:00
Nick L. Petroni, Jr
8fcbf988b5
initial linux.pslist.PsList plugin
2017-05-14 22:24:05 -04: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
fdb386d714
Return more information when particular types cannot be looked up.
2017-04-29 15:03:20 +01:00
Mike Auty
6603e503c5
Rework enumeration access in symbol tables.
2017-02-04 14:46:46 +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
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
8e334ca086
Remove fallthrough/default natives from symbol_spaces.
2016-12-25 18:37:54 +00:00
Mike Auty
c5cd3595de
Fix up minor typo and hard depend on >= python 3.4.
2016-12-25 13:44:03 +00:00
Mike Auty
65ef2927a3
Refactor the enumeration_choices code into the existing weak_resolve code.
2016-12-18 02:53:07 +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
e2d5f51ad5
Remove old and rotten code.
2016-12-12 00:25:03 +00:00
Mike Auty
770a8ee42a
Improve error handling to prevent endless recursion in template.__call__
2016-12-04 11:17:48 +00:00
Mike Auty
e27a444068
Very minimally fix up the docstring for a function.
2016-12-04 01:01:46 +00:00
Mike Auty
282eaa7f00
Improve/remove unnecessary imports.
2016-11-07 12:26:06 +00:00
Mike Auty
667014a1fd
Attempt to standardize error message display.
2016-10-30 17:51:45 +00:00
Mike Auty
d1b58143fe
Add in UnresolvedTemplate type.
...
This template type allows objects that have not been able to be resolved
to exist within the symbol system. It emits a debug message on creation
so that intermediate format developers can identify potential issues,
but does not raise an exception so as to allow partial tables to be
used.
If the UnresolvedTemplate is called (to create an object) before the
symbol has been added to the symbolspace, it will fail with a
SymbolError (as thrown by the individual SymbolTable). For this reason,
the class has been made private to the SymbolSpace class to prevent
unexpected use.
2016-10-30 16:54:12 +00:00
Mike Auty
6f1bdcb6cb
Refactor symbol.offset to symbol.address.
2016-10-26 01:42:37 +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
16bed2aa94
Allow specifying a table_name for get_symbols_by_location.
2016-05-22 16:02:30 +01:00
Mike Auty
e0b7f0b5f0
Add in helper functions for symbolspaces/symboltables to locate specific symbols.
2016-05-22 15:57:48 +01:00
Mike Auty
fea6e0820a
Convert to using a BANG variable for the symbol name delimiter.
...
Whilst it's easy to do now (because we don't yet use it many places)
convert the ! delimiter into a variable.
2016-05-22 15:26:31 +01:00
Mike Auty
2d23c93def
Completely refactor constants and structures to symbols and types.
2016-05-22 11:51:06 +01:00
Mike Auty
00660f2a2b
Refactor requirements to their own file.
2016-01-16 21:04:41 +00:00
Mike Auty
d258c56991
Rerun pylint with pycharm-5 and fix pep8 issues as well.
2015-11-21 13:12:00 +00:00
Mike Auty
143335402d
Use a default value to allow instantiation of contexts, rather than allowing None and checking all the time.
2015-04-09 16:30:01 -05:00
Mike Auty
180db2e23d
Minor neatening of iter.
2015-04-09 16:25:21 -05:00
Mike Auty
5493617727
Fix up minor typo in the recent SymbolSpace changes.
2015-04-09 16:24:04 -05:00
Mike Auty
35506bb7d3
Allow SymbolSpaces to be uninitialized, and move context from framework to framework.contexts.
2015-04-09 16:22:25 -05:00
Mike Auty
3a28d7ae41
Refactor the context work, to use composable objects rather than inheritable classes.
2015-01-19 23:57:49 +00:00
Mike Auty
87967853f7
Convert volinfo namespace to vol namespace.
2015-01-05 15:04:40 +00:00
Mike Auty
73bd451759
Minor pylinting across the whole project.
2015-01-04 21:14:17 +00:00
Mike Auty
15b2f6f717
Initial introduction of ObjectInformation class.
2015-01-04 03:41:37 +00:00
Mike Auty
bc3ea39e97
Refactor the structure code to accomodate constant finding.
2014-12-31 03:12:28 +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
e0433ab4e9
Vastly improved the speed by caching resolutions.
2013-05-07 23:31:27 +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
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