public override void Clear(DbgDotNetValue returnValue) { context = null; frame = null; cancellationToken = default; canFuncEval = false; foreach (var v in valuesToDispose) { if (v != returnValue && argumentsProvider.CanDispose(v) && localsProvider.CanDispose(v)) v.Dispose(); } valuesToDispose.Clear(); argumentsProvider.Clear(); localsProvider.Clear(); argumentsProvider = null; localsProvider = null; reflectionAppDomain = null; }
public override void Clear(DbgDotNetValue returnValue) { evalInfo = null; canFuncEval = false; foreach (var v in valuesToDispose) { if (v != returnValue && argumentsProvider.CanDispose(v) && interpreterLocalsProvider.CanDispose(v)) { v.Dispose(); } } valuesToDispose.Clear(); argumentsProvider.Clear(); interpreterLocalsProvider.Clear(); argumentsProvider = null; }
public override bool CanDispose(DbgDotNetValue value) => localsProvider.CanDispose(value);