kmeisthax / retrogram

Binary program analysis toolkit
7 stars 1 forks source link

Remove type parameters from `ProjectDatabase` #1

Closed kmeisthax closed 3 years ago

kmeisthax commented 3 years ago

ProjectDatabase, which is our in-memory representation of retrogram.db, should not be specific to one architecture type. It should be architecture-agnostic, so that programs from multiple architectures can be analyzed in the same database.

Database<AR> should be separated into an architecture-erased trait that includes Any and a concrete database type. ProjectDatabase will store boxed, type-erased databases and use Any to type-check AR for methods that need to interact with an architecture.