protected virtual IEnumerable <ClrObject> ExtractObjectsFromRuntime([NotNull] ClrRuntime ds, [NotNull] IEnumerateClrObjectsFromClrRuntime clrClrObjectEnumerator)
        {
            Assert.ArgumentNotNull(ds, "ClrRuntime");
            Assert.ArgumentNotNull(clrClrObjectEnumerator, "ClrObject enumerator must be set before enumeration begins.");

            return(clrClrObjectEnumerator.EnumerateObjectsFromSource(ds).Where(this.MatchesExtractCriteria));
        }
        public static IEnumerable <ClrObject> EnumerateObjects(this IEnumerateClrObjectsFromClrRuntime objectEnumerator, IMemoryDumpConnectionPath connectionDetails, IClrRuntimeFactory factory)
        {
            var runtime = factory.BuildClrRuntime(connectionDetails);

            return(objectEnumerator.EnumerateObjectsFromSource(runtime));
        }