| JsSuperVisitor |  | 0% | | n/a | 101 | 101 | 150 | 150 | 101 | 101 | 1 | 1 |
| NodeKind |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 | 1 | 1 |
| JsVisitor |  | 0% |  | 0% | 107 | 107 | 123 | 123 | 103 | 103 | 1 | 1 |
| JsModVisitor.ListContext |  | 0% |  | 0% | 14 | 14 | 33 | 33 | 11 | 11 | 1 | 1 |
| JsPropertyInitializer |   | 25% |   | 23% | 27 | 32 | 26 | 37 | 10 | 13 | 0 | 1 |
| JsNameRef |   | 17% |  | 0% | 24 | 28 | 24 | 33 | 14 | 18 | 0 | 1 |
| JsFunction |   | 40% |   | 44% | 26 | 36 | 31 | 53 | 19 | 27 | 0 | 1 |
| JavaScriptVerifier.new JsVisitor() {...} |  | 0% |  | 0% | 16 | 16 | 20 | 20 | 7 | 7 | 1 | 1 |
| JsInvocation |   | 19% |   | 12% | 13 | 17 | 22 | 29 | 9 | 13 | 0 | 1 |
| JsObjectLiteral |   | 18% |  | 0% | 19 | 22 | 22 | 28 | 11 | 14 | 0 | 1 |
| JsFor |   | 25% |   | 5% | 16 | 23 | 19 | 32 | 7 | 14 | 0 | 1 |
| JsArrayLiteral |   | 21% |  | 0% | 18 | 21 | 21 | 29 | 10 | 13 | 0 | 1 |
| JsIf |   | 15% |  | 0% | 15 | 19 | 21 | 29 | 7 | 11 | 0 | 1 |
| JsBinaryOperation |   | 13% |  | 0% | 16 | 17 | 21 | 26 | 10 | 11 | 0 | 1 |
| JsConditional |   | 16% |  | 0% | 14 | 18 | 17 | 25 | 8 | 12 | 0 | 1 |
| JavaScriptVerifier |  | 0% |  | 0% | 11 | 11 | 21 | 21 | 4 | 4 | 1 | 1 |
| JsModVisitor |  | 0% |  | 0% | 11 | 11 | 18 | 18 | 7 | 7 | 1 | 1 |
| JsPrefixOperation |  | 7% |  | 0% | 14 | 15 | 20 | 22 | 6 | 7 | 0 | 1 |
| JsRegExp |   | 14% |  | 0% | 15 | 18 | 17 | 23 | 10 | 13 | 0 | 1 |
| JsProgram |   | 56% |   | 28% | 12 | 21 | 13 | 31 | 6 | 14 | 0 | 1 |
| JsName |   | 37% |   | 7% | 16 | 22 | 17 | 30 | 9 | 15 | 0 | 1 |
| JsScope |   | 42% |   | 30% | 12 | 18 | 16 | 31 | 4 | 8 | 0 | 1 |
| JsNumberLiteral |  | 9% |  | 0% | 14 | 15 | 13 | 16 | 9 | 10 | 0 | 1 |
| JsNode |   | 23% |   | 30% | 9 | 12 | 12 | 18 | 4 | 7 | 0 | 1 |
| JsModVisitor.NodeContext |  | 0% |  | 0% | 10 | 10 | 17 | 17 | 9 | 9 | 1 | 1 |
| JsArrayAccess |  | 14% |  | 0% | 12 | 13 | 16 | 20 | 9 | 10 | 0 | 1 |
| JsCatch |   | 45% |   | 30% | 10 | 15 | 11 | 22 | 5 | 10 | 0 | 1 |
| JsStringLiteral |   | 21% |  | 0% | 11 | 13 | 12 | 16 | 8 | 10 | 0 | 1 |
| JsForIn |   | 33% |  | 0% | 8 | 13 | 12 | 23 | 6 | 11 | 0 | 1 |
| JsUnaryOperator |   | 75% |  | 0% | 13 | 15 | 6 | 15 | 6 | 8 | 0 | 1 |
| JsWhile |  | 18% |  | 0% | 8 | 9 | 14 | 18 | 7 | 8 | 0 | 1 |
| JsDoWhile |  | 18% |  | 0% | 8 | 9 | 14 | 18 | 7 | 8 | 0 | 1 |
| JsPositionMarker.Type |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 | 1 | 1 |
| JsUnaryOperation |  | 19% |  | 0% | 8 | 9 | 9 | 13 | 5 | 6 | 0 | 1 |
| JsBooleanLiteral |   | 37% |  | 0% | 10 | 13 | 9 | 15 | 7 | 10 | 0 | 1 |
| JsTry |   | 33% |  | 0% | 6 | 10 | 10 | 18 | 4 | 8 | 0 | 1 |
| JsBlock |   | 23% |  | 0% | 8 | 10 | 12 | 16 | 5 | 7 | 0 | 1 |
| JsBinaryOperator |   | 92% |  | 0% | 10 | 12 | 6 | 27 | 6 | 8 | 0 | 1 |
| JsNestingScope |   | 47% |   | 30% | 8 | 12 | 8 | 18 | 3 | 7 | 0 | 1 |
| JsNumericEntry |  | 0% | | n/a | 8 | 8 | 14 | 14 | 8 | 8 | 1 | 1 |
| JsReturn |  | 19% |  | 0% | 7 | 9 | 11 | 15 | 5 | 7 | 0 | 1 |
| JsNew |   | 47% |   | 25% | 7 | 10 | 9 | 18 | 5 | 8 | 0 | 1 |
| JsBreak |   | 28% |  | 0% | 7 | 9 | 8 | 13 | 4 | 6 | 0 | 1 |
| JsPositionMarker |  | 0% | | n/a | 6 | 6 | 11 | 11 | 6 | 6 | 1 | 1 |
| JsObjectLiteral.Builder |   | 59% |   | 50% | 4 | 7 | 7 | 18 | 3 | 6 | 0 | 1 |
| JsVars |   | 41% |  | 0% | 6 | 8 | 8 | 14 | 5 | 7 | 0 | 1 |
| JsVars.JsVar |  | 28% |  | 0% | 6 | 8 | 8 | 13 | 4 | 6 | 0 | 1 |
| JsThrow |  | 20% |  | 0% | 6 | 7 | 9 | 12 | 5 | 6 | 0 | 1 |
| JsSwitch |   | 38% |  | 0% | 4 | 7 | 7 | 13 | 3 | 6 | 0 | 1 |
| JsCase |  | 23% |  | 0% | 4 | 6 | 7 | 11 | 3 | 5 | 0 | 1 |
| JsExprStmt |  | 21% |  | 0% | 5 | 6 | 8 | 11 | 4 | 5 | 0 | 1 |
| JsNameOf |  | 0% |  | 0% | 7 | 7 | 10 | 10 | 6 | 6 | 1 | 1 |
| JsContinue |   | 32% |  | 0% | 6 | 8 | 8 | 13 | 4 | 6 | 0 | 1 |
| JsLabel |  | 30% |  | 0% | 5 | 7 | 7 | 12 | 4 | 6 | 0 | 1 |
| JsVisitor.new JsContext() {...} |  | 0% | | n/a | 8 | 8 | 8 | 8 | 8 | 8 | 1 | 1 |
| JsVisitor.new JsContext() {...} |  | 0% | | n/a | 8 | 8 | 8 | 8 | 8 | 8 | 1 | 1 |
| JsPostfixOperation |  | 20% |  | 0% | 5 | 6 | 8 | 10 | 4 | 5 | 0 | 1 |
| JsRootName |  | 27% | | n/a | 4 | 5 | 4 | 7 | 4 | 5 | 0 | 1 |
| JsNullLiteral |  | 33% | | n/a | 6 | 8 | 8 | 11 | 6 | 8 | 0 | 1 |
| JsRootScope |   | 98% |   | 62% | 7 | 14 | 4 | 19 | 4 | 10 | 0 | 1 |
| JsThisRef |  | 18% | | n/a | 5 | 6 | 7 | 9 | 5 | 6 | 0 | 1 |
| JsProgramFragment |   | 45% |  | 0% | 3 | 5 | 5 | 9 | 2 | 4 | 0 | 1 |
| JsDefault |  | 20% |  | 0% | 3 | 4 | 5 | 7 | 2 | 3 | 0 | 1 |
| JsParameter |  | 40% | | n/a | 3 | 4 | 5 | 9 | 3 | 4 | 0 | 1 |
| JavaScriptVerifier.new JsVisitor() {...} |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| JsEmpty |  | 25% | | n/a | 2 | 3 | 4 | 6 | 2 | 3 | 0 | 1 |
| JsDebugger |  | 25% | | n/a | 2 | 3 | 4 | 6 | 2 | 3 | 0 | 1 |
| JsRootName.SerializedForm | | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |
| JsModVisitor.LvalueContext | | 0% | | n/a | 2 | 2 | 2 | 2 | 2 | 2 | 1 | 1 |
| JsNormalScope |  | 90% | | n/a | 1 | 4 | 1 | 10 | 1 | 4 | 0 | 1 |
| JsCatchScope |  | 88% |  | 100% | 1 | 5 | 1 | 8 | 1 | 4 | 0 | 1 |
| JsStatement | | 50% | | n/a | 2 | 3 | 2 | 4 | 2 | 3 | 0 | 1 |
| JsValueLiteral | | 50% | | n/a | 2 | 3 | 2 | 4 | 2 | 3 | 0 | 1 |
| JsExpression | | 84% | | n/a | 1 | 3 | 1 | 4 | 1 | 3 | 0 | 1 |
| JsLiteral | | 66% | | n/a | 1 | 2 | 1 | 3 | 1 | 2 | 0 | 1 |
| JsGlobalBlock | | 66% | | n/a | 1 | 2 | 1 | 3 | 1 | 2 | 0 | 1 |
| JsRootScope.SerializedForm | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
| JsSwitchMember |  | 100% | | n/a | 0 | 2 | 0 | 4 | 0 | 2 | 0 | 1 |