[Mono-dev] Edit and Continue / Function body rewrite

David Srbecky dsrbecky at gmail.com
Wed Jul 5 16:43:03 EDT 2006


I want to use Mono's System.Reflection.Emit to implement very simple 
edit and continue in SharpDevelop (ie Windows). The only allowed 
operation will be to change body of a method.

The idea is that I will emit disk assembly using System.Reflection.Emit 
as usually, but later on I will re-emit body of some function and fetch 
changed data into memory. Once I got the data I can feed it to the .NET 
runtime - that should not be a problem.

The only question is what data might change and how can I get it. So far 
I could think of these:
- whole IL code of the re-emitted function
- new TypeRef and MemberRef rows in metadata (if new external function 
is called)
- String heap (if new string is used in function)

Is there a way to get these from System.Reflection.Emit? Or 
alternatively, how difficult would it be to implement it?

Thank you very much,
David Srbecky

More information about the Mono-devel-list mailing list