Package io.cucumber.query
Interface LineageReducer<T>
-
- Type Parameters:
T- the type reduced to.
- All Known Implementing Classes:
NamingStrategy
public interface LineageReducer<T>Visit theLineageof a GherkinDocument element orPickleand reduce it.Because we are using messages we can not express the hierarchy of elements in a
GherkinDocumentprogrammatically as a tree of nodes. But we can still express the operations that would be typically done this way as an operation on the lineage of those messages.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceLineageReducer.Collector<T>Collect theLineageof a GherkinDocument element orPickleand reduce it to a single result.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Modifier and Type Method Description static <T> LineageReducer<T>ascending(Supplier<? extends LineageReducer.Collector<T>> collector)static <T> LineageReducer<T>descending(Supplier<? extends LineageReducer.Collector<T>> collector)Treduce(Lineage lineage)Treduce(Lineage lineage, io.cucumber.messages.types.Pickle pickle)
-
-
-
Method Detail
-
descending
static <T> LineageReducer<T> descending(Supplier<? extends LineageReducer.Collector<T>> collector)
-
ascending
static <T> LineageReducer<T> ascending(Supplier<? extends LineageReducer.Collector<T>> collector)
-
-