Include fan-out operators in the operator index (#27028)

This commit is contained in:
Arnout Engelen 2019-05-31 12:56:25 +02:00 committed by Johan Andrén
parent e61703bb4a
commit eca459e461
12 changed files with 58 additions and 19 deletions

View file

@ -32,8 +32,7 @@ object StreamOperatorsIndexGenerator extends AutoPlugin {
"Nesting and flattening operators",
"Time aware operators",
"Fan-in operators",
// TODO these don't show up as def's yet so don't show up in the index..
// "Fan-out operators",
"Fan-out operators",
"Watching status operators",
"Actor interop operators",
"Error handling"
@ -125,6 +124,8 @@ object StreamOperatorsIndexGenerator extends AutoPlugin {
def isPending(element: String, opName: String) =
pendingTestCases.get(element).exists(_.contains(opName))
val noElement = " "
def generateAlphabeticalIndex(dir: SettingKey[File], locate: File => File) = Def.task[Seq[File]] {
val file = locate(dir.value)
@ -170,7 +171,13 @@ object StreamOperatorsIndexGenerator extends AutoPlugin {
.filter(op => !ignore.contains(op))
.map(_.replaceAll("Mat$", ""))
.map(method => (element, method))
}
} ++ List(
(noElement, "Partition"),
(noElement, "Broadcast"),
(noElement, "Balance"),
(noElement, "Unzip"),
(noElement, "UnzipWith")
)
val sourceAndFlow = defs.collect { case ("Source", method) => method } intersect defs.collect { case ("Flow", method) => method }
@ -178,6 +185,8 @@ object StreamOperatorsIndexGenerator extends AutoPlugin {
defs.map {
case (element @ ("Source" | "Flow"), method) if sourceAndFlow.contains(method) =>
("Source/Flow", method, s"Source-or-Flow/$method.md")
case (`noElement`, method) =>
(noElement, method, s"$method.md")
case (element, method) =>
(element, method, s"$element/$method.md")
}.distinct