<\/span>if<\/span> <\/span>include<\/span> <\/span>in<\/span> <\/span>module<\/span>:<\/span>
<\/span>del<\/span>(<\/span>self<\/span>.<\/span>previousModules<\/span>[<\/span>module<\/span>])<\/span>
<\/span>def<\/span> <\/span>new<\/span>(<\/span>self<\/span>):<\/span>
<\/span>return<\/span> <\/span>list<\/span>(<\/span> <\/span>set<\/span>(<\/span> <\/span>sys<\/span>.<\/span>modules<\/span> <\/span>)<\/span>.<\/span>difference<\/span>(<\/span>set<\/span>(<\/span> <\/span>self<\/span>.<\/span>previousModules<\/span> <\/span>))<\/span> <\/span>)<\/span>
<\/span>def<\/span> <\/span>rollback<\/span>(<\/span>self<\/span>):<\/span>
<\/span>new<\/span>=<\/span>self<\/span>.<\/span>new<\/span>()<\/span>
<\/span>#force<\/span> <\/span>reload<\/span> <\/span>when<\/span> <\/span>modname<\/span> <\/span>next<\/span> <\/span>imported<\/span>
<\/span>for<\/span> <\/span>module<\/span> <\/span>in<\/span> <\/span>new<\/span>:<\/span>
<\/span>if<\/span> <\/span>sys<\/span>.<\/span>modules<\/span>.<\/span>has_key<\/span>(<\/span>module<\/span>):<\/span>
<\/span>if<\/span> <\/span>sys<\/span>.<\/span>modules<\/span>[<\/span>module<\/span>]:<\/span> <\/span>print<\/span> <\/span>\'r<\/span>eload<\/span> <\/span>%<\/span>s<\/span>\'%<\/span>sys<\/span>.<\/span>modules<\/span>[<\/span>module<\/span>]<\/span>
<\/span>del<\/span>(<\/span>sys<\/span>.<\/span>modules<\/span>[<\/span>module<\/span>])<\/span>
<\/span>#clean<\/span> <\/span>sys<\/span>.<\/span>modules<\/span> <\/span>dict<\/span>
<\/span>for<\/span> <\/span>module<\/span> <\/span>in<\/span> <\/span>sys<\/span>.<\/span>modules<\/span>.<\/span>keys<\/span>():<\/span><\/pre><\/td>\n<\/tr><\/table>\n\n");
|