Skip to content

Commit 69d9c27

Browse files
committed
Clean up
1 parent 8f5514d commit 69d9c27

File tree

1 file changed

+8
-13
lines changed
  • workflow-trace-viewer/src/jvmMain/kotlin/com/squareup/workflow1/traceviewer/util

1 file changed

+8
-13
lines changed

workflow-trace-viewer/src/jvmMain/kotlin/com/squareup/workflow1/traceviewer/util/JsonParser.kt

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -32,23 +32,18 @@ internal suspend fun parseTrace(
3232
workflowAdapter.fromJson(jsonString) ?: return ParseResult.Failure(
3333
IllegalArgumentException("Provided trace file is empty or malformed.")
3434
)
35-
/*
36-
this parsing method can never be called without a provided file, so we can assume that there
37-
will always be at least one render pass in the trace. If not, then Moshi would catch any
38-
malformed JSON and throw an error beforehand.
39-
*/
4035
} catch (e: Exception) {
4136
return ParseResult.Failure(e)
4237
}
4338

44-
val parsedTrace = parsedRenderPasses.map { renderPass -> getFrameFromRenderPass(renderPass) }
39+
val parsedFrames = parsedRenderPasses.map { renderPass -> getFrameFromRenderPass(renderPass) }
4540
val frameTrees = mutableListOf<Node>()
46-
parsedTrace.fold(parsedTrace[0]) { tree, frame ->
41+
parsedFrames.fold(parsedFrames[0]) { tree, frame ->
4742
val mergedTree = mergeFrameIntoMainTree(frame, tree)
4843
frameTrees.add(mergedTree)
4944
mergedTree
5045
}
51-
return ParseResult.Success(parsedTrace, frameTrees, parsedRenderPasses)
46+
return ParseResult.Success(parsedFrames, frameTrees, parsedRenderPasses)
5247
}
5348

5449
/**
@@ -109,12 +104,12 @@ internal fun mergeFrameIntoMainTree(
109104
throw IllegalArgumentException("Frame root ID does not match main tree root ID.")
110105
}
111106

112-
return frame.children.fold(main) { mergedTree, child ->
113-
val parent = mergedTree.children.singleOrNull { it.id == child.id }
114-
if (parent != null) {
115-
mergedTree.replaceChild(mergeFrameIntoMainTree(child, parent))
107+
return frame.children.fold(main) { mergedTree, frameChild ->
108+
val mainTreeChild = mergedTree.children.singleOrNull { it.id == frameChild.id }
109+
if (mainTreeChild != null) {
110+
mergedTree.replaceChild(mergeFrameIntoMainTree(frameChild, mainTreeChild))
116111
} else {
117-
mergedTree.addChild(child)
112+
mergedTree.addChild(frameChild)
118113
}
119114
}
120115
}

0 commit comments

Comments
 (0)