using System;
using System.Collections.Generic;
namespace LibGit2Sharp
{
///
/// A log of commits in a that can be filtered with queries.
///
public interface IQueryableCommitLog : ICommitLog
{
///
/// Returns the list of commits of the repository matching the specified .
///
/// The options used to control which commits will be returned.
/// A list of commits, ready to be enumerated.
ICommitLog QueryBy(CommitFilter filter);
///
/// Returns the list of commits of the repository representing the history of a file beyond renames.
///
/// The file's path.
/// A list of file history entries, ready to be enumerated.
IEnumerable QueryBy(string path);
///
/// Returns the list of commits of the repository representing the history of a file beyond renames.
///
/// The file's path.
/// The options used to control which commits will be returned.
/// A list of file history entries, ready to be enumerated.
IEnumerable QueryBy(string path, CommitFilter filter);
}
}