private DateTime GenericDate(MyDelegate func, Func <string, DateTime> fallbackDelegate) { EverythingWrapper.Everything_SetReplyID(this.replyId); if (func(this.index, out var date) && date >= 0) { return(DateTime.FromFileTime(date)); } return(!string.IsNullOrEmpty(this.FullPath) ? fallbackDelegate(this.FullPath) : DateTime.MinValue); }
IEnumerable <ISearchResult> IEverythingInternal.SendSearch(string searchPattern, RequestFlags flags) { using (EverythingWrapper.Lock()) { EverythingWrapper.Everything_SetReplyID(this.replyId); EverythingWrapper.Everything_SetMatchWholeWord(this.MatchWholeWord); EverythingWrapper.Everything_SetMatchPath(this.MatchPath); EverythingWrapper.Everything_SetMatchCase(this.MatchCase); EverythingWrapper.Everything_SetRequestFlags((uint)flags | DefaultSearchFlags); searchPattern = this.ApplySearchResultKind(searchPattern); EverythingWrapper.Everything_SetSearch(searchPattern); if (this.SortKey != SortingKey.None) { EverythingWrapper.Everything_SetSort((uint)this.SortKey); } EverythingWrapper.Everything_Query(true); this.LastErrorCode = this.GetError(); return(this.GetResults()); } }