TomSmartBishop / facile-api

The Facile API is capable of reading (decompiling) .Net assemblies. Covering the metadata tables, the embedded types and methods, including their bodies as CIL (bytecode).
http://tomsmartbishop.github.io/facile-api/
10 stars 3 forks source link

Use switch to run in production/development mode #3

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Right now the facile API is designed for development usage. So whenever there 
is a small problem (e.g. new identifier in signatures) an assertion will fail. 
This is excellent to find potential problems and newly introduced CLR features. 
However it is not the desired behavior for a program used in production.

Therefore the following steps are required:
1. Create a per instance boolean switch for that.. eg: inDevelopmentMode
2. In production mode: Dump non-critical problems to the log instead of raising 
an assertion (mainly signature parsing)
3. Think about a flag or a collection to remember failed things in detail

What is the expected output?

Run the Facile API in FacileReader or similiar application in fault tolerant 
way (maybe provide some invalid assemblies for test purpose).

Original issue reported on code.google.com by tom.smar...@gmail.com on 3 Mar 2012 at 4:57

GoogleCodeExporter commented 9 years ago
I almost forgot! There is already a switch in FacileReflector:
DEBUG_AND_HALT_ON_ERRORS

However it's hardly used so there is some work to do!

Original comment by tom.smar...@gmail.com on 23 May 2012 at 12:46