IPipelineOutputs Interface
Contains a collection of documents output by pipelines.
Namespace
Statiq.Common
Interfaces
Implementing Types
graph BT Type-.->Interface0["IEnumerable<IDocument>"] Type-.->Interface1["IEnumerable"] Type-.->Interface2["IDocumentPathTree<IDocument>"] Type-.->Interface3["IDocumentTree<IDocument>"] Type["IPipelineOutputs"] class Type type-node Implementing0["TestPipelineOutputs"]-.->Type click Implementing0 "/api/Statiq.Testing/TestPipelineOutputs"

Syntax

public interface IPipelineOutputs : IEnumerable<IDocument>, IEnumerable, 
    IDocumentPathTree<IDocument>, IDocumentTree<IDocument>

Properties

Name Property Type Summary
this[string[]] FilteredDocumentList<IDocument>
Returns documents with destination paths from all pipelines that satisfy the globbing pattern(s), ordering documents in descending order of their timestamp (I.e. the most recently created documents are returned first).

Methods

Name Return Value Summary
ByPipeline() IReadOnlyDictionary<string, DocumentList<IDocument>>
Gets documents by pipeline.
ExceptPipeline(string) DocumentList<IDocument>
Gets all documents output by every pipeline except those from the specified pipeline in their natural output order.
FromPipeline(string) DocumentList<IDocument>
Gets documents from a specific pipeline in their natural output order from the pipeline.
GetDestination(NormalizedPath) IDocument
Gets the first document in the list with the given destination path.
GetRelativeSource(NormalizedPath) IDocument
Gets the first document in the list with the given relative source path (since source paths are generally absolute, this tests against the source path relative to it's input path).
GetSource(NormalizedPath) IDocument
Gets the first document in the list with the given source path (note that source paths are generally absolute).

Extension Methods

Name Value Summary
AsDestinationTree<IDocument>() DocumentPathTree<TDocument>
AsMetadataTree<IDocument>(string) DocumentMetadataTree<TDocument>
AsSourceTree<IDocument>() DocumentPathTree<TDocument>
Concat<IDocument>(IDocument) IEnumerable<T>
ContainsById(IDocument) bool
ExceptPipelines(string[]) DocumentList<IDocument>
Gets and concatenates all documents from multiple pipelines. Note that if a document exists in more than one pipeline it may appear multiple times in the result.
FilterAsync(Config<bool>, IExecutionContext) IAsyncEnumerable<IDocument>
Filters the documents.
FilterAsync(ICollection<Config<bool>>, IExecutionContext) IAsyncEnumerable<IDocument>
Filters the documents using "or" logic on multiple predicates.
FilterDestinations<IDocument>(IEnumerable<string>, bool, string) FilteredDocumentList<TDocument>
Filters the documents by destination.
FilterDestinations<IDocument>(string[]) FilteredDocumentList<TDocument>
Filters the documents by destination.
FilterSources<IDocument>(IEnumerable<string>, bool, string) FilteredDocumentList<TDocument>
Filters the documents by source.
FilterSources<IDocument>(string[]) FilteredDocumentList<TDocument>
Filters the documents by source.
FirstOrDefaultDestination<IDocument>(IEnumerable<string>, bool, string) TDocument
FirstOrDefaultDestination<IDocument>(string[]) TDocument
FirstOrDefaultSource<IDocument>(IEnumerable<string>, bool, string) TDocument
FirstOrDefaultSource<IDocument>(string[]) TDocument
Flatten<IDocument>(bool, string) DocumentList<TDocument>
Flattens a tree structure.
Flatten<IDocument>(string, string) DocumentList<TDocument>
Flattens a tree structure.
Flatten<IDocument>(string) DocumentList<TDocument>
Flattens a tree structure.
FromPipelines(string[]) DocumentList<IDocument>
Gets and concatenates all documents from multiple pipelines. Note that if a document exists in more than one pipeline it may appear multiple times in the result.
GetAncestorsOf<IDocument>(NormalizedPath, bool) DocumentList<TDocument>
GetAncestorsOf<IDocument>(NormalizedPath) DocumentList<TDocument>
GetAncestorsOf<IDocument>(IDocument) DocumentList<TDocument>
GetChildrenOf<IDocument>(NormalizedPath) DocumentList<TDocument>
GetDescendantsOf<IDocument>(NormalizedPath, bool) DocumentList<TDocument>
GetDescendantsOf<IDocument>(NormalizedPath) DocumentList<TDocument>
GetDescendantsOf<IDocument>(IDocument) DocumentList<TDocument>
GetNext<IDocument>(IDocument, IEqualityComparer<IDocument>) T
GetNext<IDocument>(IDocument) T
GetParentOf<IDocument>(NormalizedPath) TDocument
GetPrevious<IDocument>(IDocument, IEqualityComparer<IDocument>) T
GetPrevious<IDocument>(IDocument) T
GetSiblingsOf<IDocument>(NormalizedPath, bool) DocumentList<TDocument>
GetSiblingsOf<IDocument>(NormalizedPath) DocumentList<TDocument>
GetSiblingsOf<IDocument>(IDocument) DocumentList<TDocument>
GroupBy<TKey, TElement>(string, string, IEqualityComparer<TKey>) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence of documents and the values of a specified metadata key using the value of the specified element metadata for the elements of the group and compares the keys by using a specified comparer. If a document does not contain the specified key or element metadata keys, it is not included in the result set.
GroupBy<TKey, TElement>(string, string) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence of documents and the values of a specified metadata key using the value of the specified element metadata for the elements of the group. If a document does not contain the specified key or element metadata keys, it is not included in the result set.
GroupBy<TKey>(string, IEqualityComparer<TKey>) IEnumerable<IGrouping<TKey, IDocument>>
Groups the elements of a sequence of documents and the values of a specified metadata key and compares the keys by using a specified comparer. If a document does not contain the specified metadata key, it is not included in the result set.
GroupBy<TKey>(string) IEnumerable<IGrouping<TKey, IDocument>>
Groups the elements of a sequence of documents using the values of a specified metadata key. If a document does not contain the specified metadata key, it is not included in the result set.
GroupByMany<TKey, TElement>(string, string, IEqualityComparer<TKey>) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence of documents according to a specified metadata key that contains a sequence of keys. The keys are compared by using a comparer and each group's elements are obtained by using a specified metadata key.
GroupByMany<TKey, TElement>(string, string) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence of documents according to a specified metadata key that contains a sequence of keys and gets the elements for each group by using a specified metadata key.
GroupByMany<TKey>(string, IEqualityComparer<TKey>) IEnumerable<IGrouping<TKey, IDocument>>
Groups the elements of a sequence of documents according to a specified metadata key that contains a sequence of keys and compares the keys by using a specified comparer.
GroupByMany<TKey>(string) IEnumerable<IGrouping<TKey, IDocument>>
Groups the elements of a sequence of documents according to a specified metadata key that contains a sequence of keys.
GroupByMany<IDocument, TKey, TElement>(Func<IDocument, IEnumerable<TKey>>, Func<IDocument, TElement>, IEqualityComparer<TKey>) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence according to a specified key selector function that returns a sequence of keys. The keys are compared by using a comparer and each group's elements are projected by using a specified function.
GroupByMany<IDocument, TKey, TElement>(Func<IDocument, IEnumerable<TKey>>, Func<IDocument, TElement>) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence according to a specified key selector function that returns a sequence of keys and projects the elements for each group by using a specified function.
GroupByMany<IDocument, TKey>(Func<IDocument, IEnumerable<TKey>>, IEqualityComparer<TKey>) IEnumerable<IGrouping<TKey, TSource>>
Groups the elements of a sequence according to a specified key selector function that returns a sequence of keys and compares the keys by using a specified comparer.
GroupByMany<IDocument, TKey>(Func<IDocument, IEnumerable<TKey>>) IEnumerable<IGrouping<TKey, TSource>>
Groups the elements of a sequence according to a specified key selector function that returns a sequence of keys.
GroupByManyToMany<TKey, TElement>(string, string, IEqualityComparer<TKey>) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence of documents according to a specified metadata key that contains a sequence of keys. The keys are compared by using a comparer and each group's elements are obtained by using a specified metadata key.
GroupByManyToMany<TKey, TElement>(string, string) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence of documents according to a specified metadata key that contains a sequence of keys and gets the elements for each group by using a specified metadata key.
GroupByManyToMany<IDocument, TKey, TElement>(Func<IDocument, IEnumerable<TKey>>, Func<IDocument, IEnumerable<TElement>>, IEqualityComparer<TKey>) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence according to a specified key selector function that returns a sequence of keys. The keys are compared by using a comparer and each group's elements are projected by using a specified function that returns a sequence of elements.
GroupByManyToMany<IDocument, TKey, TElement>(Func<IDocument, IEnumerable<TKey>>, Func<IDocument, IEnumerable<TElement>>) IEnumerable<IGrouping<TKey, TElement>>
Groups the elements of a sequence according to a specified key selector function that returns a sequence of keys and projects the elements for each group by using a specified function that returns a sequence of elements.
ParallelForEachAsync<IDocument>(Func<IDocument, Task>, CancellationToken) Task
ParallelSelectAsync<IDocument, TResult>(Func<IDocument, Task<TResult>>, CancellationToken) Task<IEnumerable<TResult>>
Invokes an async selector in parallel.
ParallelSelectManyAsync<IDocument, TResult>(Func<IDocument, Task<IEnumerable<TResult>>>, CancellationToken) Task<IEnumerable<TResult>>
Invokes an async selector that returns multiple results in parallel.
ParallelWhereAsync<IDocument>(Func<IDocument, Task<bool>>, CancellationToken) Task<IEnumerable<TSource>>
RemoveTreePlaceholders<IDocument>(string) IEnumerable<TDocument>
Removes tree placeholder documents (this method will not flatten a tree).
ShouldHaveSingleWithDestination<IDocument>(NormalizedPath, string) TDocument
ShouldHaveSingleWithSource<IDocument>(NormalizedPath, string) TDocument
ShouldNotHaveDestination<IDocument>(NormalizedPath, string) void
ShouldNotHaveSource<IDocument>(NormalizedPath, string) void
StartsWith<IDocument>(IEnumerable<IDocument>, IEqualityComparer<IDocument>) bool
Determines whether the items starts with the specified values.
StartsWith<IDocument>(IEnumerable<IDocument>) bool
Determines whether the items starts with the specified values.
ThrowIfNull<IPipelineOutputs>(string) T
ToDocument<IPipelineOutputs>(IContentProvider) IDocument
ToDocument<IPipelineOutputs>(IEnumerable<KeyValuePair<string, object>>, IContentProvider) IDocument
ToDocument<IPipelineOutputs>(NormalizedPath, IContentProvider) IDocument
ToDocument<IPipelineOutputs>(NormalizedPath, IEnumerable<KeyValuePair<string, object>>, IContentProvider) IDocument
ToDocument<IPipelineOutputs>(NormalizedPath, NormalizedPath, IContentProvider) IDocument
ToDocument<IPipelineOutputs>(NormalizedPath, NormalizedPath, IEnumerable<KeyValuePair<string, object>>, IContentProvider) IDocument
ToDocumentList<IDocument>() DocumentList<TDocument>
ToDocuments<IDocument>(Func<IDocument, IContentProvider>) IEnumerable<IDocument>
ToDocuments<IDocument>(Func<IDocument, IEnumerable<KeyValuePair<string, object>>>, Func<IDocument, IContentProvider>) IEnumerable<IDocument>
ToDocuments<IDocument>(Func<IDocument, NormalizedPath>, Func<IDocument, IContentProvider>) IEnumerable<IDocument>
ToDocuments<IDocument>(Func<IDocument, NormalizedPath>, Func<IDocument, IEnumerable<KeyValuePair<string, object>>>, Func<IDocument, IContentProvider>) IEnumerable<IDocument>
ToDocuments<IDocument>(Func<IDocument, NormalizedPath>, Func<IDocument, NormalizedPath>, Func<IDocument, IContentProvider>) IEnumerable<IDocument>
ToDocuments<IDocument>(Func<IDocument, NormalizedPath>, Func<IDocument, NormalizedPath>, Func<IDocument, IEnumerable<KeyValuePair<string, object>>>, Func<IDocument, IContentProvider>) IEnumerable<IDocument>
ToImmutableDocumentArray<IDocument>() ImmutableArray<TDocument>
Creates an immutable array from the specified document collection and removes null items.
ToJson(JsonSerializerOptions) string
ToLookup<TKey, TElement>(string, string, IEqualityComparer<TKey>) ILookup<TKey, TElement>
Creates a lookup from a sequence of documents and the values of a specified metadata key using the value of the specified element metadata for the elements of the lookup and compares the keys by using a specified comparer. If a document does not contain the specified key or element metadata keys, it is not included in the result set.
ToLookup<TKey, TElement>(string, string) ILookup<TKey, TElement>
Creates a lookup from a sequence of documents and the values of a specified metadata key using the value of the specified element metadata for the elements of the lookup. If a document does not contain the specified key or element metadata keys, it is not included in the result set.
ToLookup<TKey>(string, IEqualityComparer<TKey>) ILookup<TKey, IDocument>
Creates a lookup from a sequence of documents and the values of a specified metadata key and compares the keys by using a specified comparer. If a document does not contain the specified metadata key, it is not included in the result set.
ToLookup<TKey>(string) ILookup<TKey, IDocument>
Creates a lookup from a sequence of documents using the values of a specified metadata key. If a document does not contain the specified metadata key, it is not included in the result set.
ToLookupMany<TKey, TElement>(string, string, IEqualityComparer<TKey>) ILookup<TKey, TElement>
Creates a lookup from a sequence of documents according to a specified metadata key that contains a sequence of keys. The keys are compared by using a comparer and each group's elements are obtained by using a specified metadata key.
ToLookupMany<TKey, TElement>(string, string) ILookup<TKey, TElement>
Creates a lookup from a sequence of documents according to a specified metadata key that contains a sequence of keys and gets the elements for each group by using a specified metadata key.
ToLookupMany<TKey>(string, IEqualityComparer<TKey>) ILookup<TKey, IDocument>
Creates a lookup from a sequence of documents according to a specified metadata key that contains a sequence of keys and compares the keys by using a specified comparer.
ToLookupMany<TKey>(string) ILookup<TKey, IDocument>
Creates a lookup from a sequence of documents according to a specified metadata key that contains a sequence of keys.
ToLookupMany<IDocument, TKey, TElement>(Func<IDocument, IEnumerable<TKey>>, Func<IDocument, TElement>, IEqualityComparer<TKey>) ILookup<TKey, TElement>
Creates a lookup from a sequence according to a specified key selector function that returns a sequence of keys. The keys are compared by using a comparer and each group's elements are projected by using a specified function.
ToLookupMany<IDocument, TKey, TElement>(Func<IDocument, IEnumerable<TKey>>, Func<IDocument, TElement>) ILookup<TKey, TElement>
Creates a lookup from a sequence according to a specified key selector function that returns a sequence of keys and projects the elements for each group by using a specified function.
ToLookupMany<IDocument, TKey>(Func<IDocument, IEnumerable<TKey>>, IEqualityComparer<TKey>) ILookup<TKey, TSource>
Creates a lookup from a sequence according to a specified key selector function that returns a sequence of keys and compares the keys by using a specified comparer.
ToLookupMany<IDocument, TKey>(Func<IDocument, IEnumerable<TKey>>) ILookup<TKey, TSource>
Creates a lookup from a sequence according to a specified key selector function that returns a sequence of keys.
ToLookupManyToMany<TKey, TElement>(string, string, IEqualityComparer<TKey>) ILookup<TKey, TElement>
Creates a lookup from a sequence of documents according to a specified metadata key that contains a sequence of keys. The keys are compared by using a comparer and each group's elements are obtained by using a specified metadata key.
ToLookupManyToMany<TKey, TElement>(string, string) ILookup<TKey, TElement>
Creates a lookup from a sequence of documents according to a specified metadata key that contains a sequence of keys and gets the elements for each group by using a specified metadata key.
ToLookupManyToMany<IDocument, TKey, TElement>(Func<IDocument, IEnumerable<TKey>>, Func<IDocument, IEnumerable<TElement>>, IEqualityComparer<TKey>) ILookup<TKey, TElement>
Creates a lookup from a sequence according to a specified key selector function that returns a sequence of keys. The keys are compared by using a comparer and each group's elements are projected by using a specified function that returns a sequence of elements.
ToLookupManyToMany<IDocument, TKey, TElement>(Func<IDocument, IEnumerable<TKey>>, Func<IDocument, IEnumerable<TElement>>) ILookup<TKey, TElement>
Creates a lookup from a sequence according to a specified key selector function that returns a sequence of keys and projects the elements for each group by using a specified function that returns a sequence of elements.
ToStringTable<IDocument>(string[], Func<IDocument, object>[]) string
WhereContainsAllKeys<IDocument>(string[]) DocumentList<TDocument>
Returns all documents that contain all of the specified metadata keys.
WhereContainsAnyKeys<IDocument>(string[]) DocumentList<TDocument>
Returns all documents that contain any of the specified metadata keys.
WhereContainsKey<IDocument>(string) DocumentList<TDocument>
Returns all documents that contain the specified metadata key.