marko 2.11.1 → 2.11.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (231) hide show
  1. package/compiler/TemplateBuilder.js +1 -1
  2. package/compiler/TypeConverter.js +1 -1
  3. package/compiler/expression-parser.js +1 -1
  4. package/compiler/util/stringify.js +169 -0
  5. package/package.json +2 -3
  6. package/taglibs/core/ForNode.js +1 -1
  7. package/taglibs/core/IncludeNode.js +1 -1
  8. package/taglibs/core/TagHandlerNode.js +1 -1
  9. package/.npmignore +0 -1
  10. package/coverage/coverage.json +0 -1
  11. package/coverage/lcov-report/base.css +0 -213
  12. package/coverage/lcov-report/index.html +0 -496
  13. package/coverage/lcov-report/marko-v4/bin/index.html +0 -93
  14. package/coverage/lcov-report/marko-v4/bin/markoc.js.html +0 -1160
  15. package/coverage/lcov-report/marko-v4/browser-refresh/index.html +0 -93
  16. package/coverage/lcov-report/marko-v4/browser-refresh/index.js.html +0 -191
  17. package/coverage/lcov-report/marko-v4/compiler/Builder.js.html +0 -1859
  18. package/coverage/lcov-report/marko-v4/compiler/CodeGenerator.js.html +0 -998
  19. package/coverage/lcov-report/marko-v4/compiler/CodeWriter.js.html +0 -851
  20. package/coverage/lcov-report/marko-v4/compiler/CompileContext.js.html +0 -1955
  21. package/coverage/lcov-report/marko-v4/compiler/CompileError.js.html +0 -206
  22. package/coverage/lcov-report/marko-v4/compiler/Compiler.js.html +0 -473
  23. package/coverage/lcov-report/marko-v4/compiler/HtmlJsParser.js.html +0 -341
  24. package/coverage/lcov-report/marko-v4/compiler/InlineCompiler.js.html +0 -317
  25. package/coverage/lcov-report/marko-v4/compiler/Parser.js.html +0 -1271
  26. package/coverage/lcov-report/marko-v4/compiler/Walker.js.html +0 -521
  27. package/coverage/lcov-report/marko-v4/compiler/ast/ArrayContainer.js.html +0 -653
  28. package/coverage/lcov-report/marko-v4/compiler/ast/ArrayExpression.js.html +0 -278
  29. package/coverage/lcov-report/marko-v4/compiler/ast/Assignment.js.html +0 -299
  30. package/coverage/lcov-report/marko-v4/compiler/ast/AttributePlaceholder.js.html +0 -173
  31. package/coverage/lcov-report/marko-v4/compiler/ast/BinaryExpression.js.html +0 -428
  32. package/coverage/lcov-report/marko-v4/compiler/ast/Code.js.html +0 -149
  33. package/coverage/lcov-report/marko-v4/compiler/ast/ConditionalExpression.js.html +0 -239
  34. package/coverage/lcov-report/marko-v4/compiler/ast/Container.js.html +0 -101
  35. package/coverage/lcov-report/marko-v4/compiler/ast/ContainerNode.js.html +0 -122
  36. package/coverage/lcov-report/marko-v4/compiler/ast/CustomTag.js.html +0 -1250
  37. package/coverage/lcov-report/marko-v4/compiler/ast/Declaration.js.html +0 -146
  38. package/coverage/lcov-report/marko-v4/compiler/ast/DocumentType.js.html +0 -146
  39. package/coverage/lcov-report/marko-v4/compiler/ast/Else.js.html +0 -161
  40. package/coverage/lcov-report/marko-v4/compiler/ast/ElseIf.js.html +0 -152
  41. package/coverage/lcov-report/marko-v4/compiler/ast/Expression.js.html +0 -152
  42. package/coverage/lcov-report/marko-v4/compiler/ast/ForEach.js.html +0 -314
  43. package/coverage/lcov-report/marko-v4/compiler/ast/ForEachProp.js.html +0 -290
  44. package/coverage/lcov-report/marko-v4/compiler/ast/ForRange.js.html +0 -374
  45. package/coverage/lcov-report/marko-v4/compiler/ast/ForStatement.js.html +0 -245
  46. package/coverage/lcov-report/marko-v4/compiler/ast/FunctionCall.js.html +0 -374
  47. package/coverage/lcov-report/marko-v4/compiler/ast/FunctionDeclaration.js.html +0 -296
  48. package/coverage/lcov-report/marko-v4/compiler/ast/Html.js.html +0 -311
  49. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlAttribute/html/generateCode.js.html +0 -473
  50. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlAttribute/html/index.html +0 -93
  51. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlAttribute/index.html +0 -93
  52. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlAttribute/index.js.html +0 -317
  53. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlAttribute/vdom/generateCode.js.html +0 -128
  54. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlAttribute/vdom/index.html +0 -93
  55. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlAttributeCollection.js.html +0 -521
  56. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlComment.js.html +0 -182
  57. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/html/EndTag.js.html +0 -131
  58. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/html/StartTag.js.html +0 -227
  59. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/html/generateCode.js.html +0 -299
  60. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/html/index.html +0 -119
  61. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/index.html +0 -93
  62. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/index.js.html +0 -578
  63. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/vdom/EndElementVDOM.js.html +0 -104
  64. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/vdom/HtmlElementVDOM.js.html +0 -620
  65. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/vdom/generateCode.js.html +0 -326
  66. package/coverage/lcov-report/marko-v4/compiler/ast/HtmlElement/vdom/index.html +0 -119
  67. package/coverage/lcov-report/marko-v4/compiler/ast/Identifier.js.html +0 -137
  68. package/coverage/lcov-report/marko-v4/compiler/ast/If.js.html +0 -347
  69. package/coverage/lcov-report/marko-v4/compiler/ast/InvokeMacro.js.html +0 -425
  70. package/coverage/lcov-report/marko-v4/compiler/ast/Literal.js.html +0 -320
  71. package/coverage/lcov-report/marko-v4/compiler/ast/LogicalExpression.js.html +0 -359
  72. package/coverage/lcov-report/marko-v4/compiler/ast/Macro.js.html +0 -176
  73. package/coverage/lcov-report/marko-v4/compiler/ast/MemberExpression.js.html +0 -308
  74. package/coverage/lcov-report/marko-v4/compiler/ast/NewExpression.js.html +0 -395
  75. package/coverage/lcov-report/marko-v4/compiler/ast/Node.js.html +0 -1235
  76. package/coverage/lcov-report/marko-v4/compiler/ast/ObjectExpression.js.html +0 -290
  77. package/coverage/lcov-report/marko-v4/compiler/ast/Program.js.html +0 -134
  78. package/coverage/lcov-report/marko-v4/compiler/ast/Property.js.html +0 -257
  79. package/coverage/lcov-report/marko-v4/compiler/ast/Return.js.html +0 -170
  80. package/coverage/lcov-report/marko-v4/compiler/ast/Scriptlet.js.html +0 -152
  81. package/coverage/lcov-report/marko-v4/compiler/ast/SelfInvokingFunction.js.html +0 -155
  82. package/coverage/lcov-report/marko-v4/compiler/ast/TemplateRoot.js.html +0 -344
  83. package/coverage/lcov-report/marko-v4/compiler/ast/Text/html/generateCode.js.html +0 -245
  84. package/coverage/lcov-report/marko-v4/compiler/ast/Text/html/index.html +0 -93
  85. package/coverage/lcov-report/marko-v4/compiler/ast/Text/index.html +0 -93
  86. package/coverage/lcov-report/marko-v4/compiler/ast/Text/index.js.html +0 -215
  87. package/coverage/lcov-report/marko-v4/compiler/ast/Text/vdom/TextVDOM.js.html +0 -407
  88. package/coverage/lcov-report/marko-v4/compiler/ast/Text/vdom/generateCode.js.html +0 -179
  89. package/coverage/lcov-report/marko-v4/compiler/ast/Text/vdom/index.html +0 -106
  90. package/coverage/lcov-report/marko-v4/compiler/ast/ThisExpression.js.html +0 -131
  91. package/coverage/lcov-report/marko-v4/compiler/ast/UnaryExpression.js.html +0 -365
  92. package/coverage/lcov-report/marko-v4/compiler/ast/UpdateExpression.js.html +0 -341
  93. package/coverage/lcov-report/marko-v4/compiler/ast/VariableDeclarator.js.html +0 -221
  94. package/coverage/lcov-report/marko-v4/compiler/ast/Vars.js.html +0 -290
  95. package/coverage/lcov-report/marko-v4/compiler/ast/WhileStatement.js.html +0 -173
  96. package/coverage/lcov-report/marko-v4/compiler/ast/index.html +0 -678
  97. package/coverage/lcov-report/marko-v4/compiler/config.js.html +0 -194
  98. package/coverage/lcov-report/marko-v4/compiler/index.html +0 -236
  99. package/coverage/lcov-report/marko-v4/compiler/index.js.html +0 -695
  100. package/coverage/lcov-report/marko-v4/compiler/taglib-finder/index-browser.js.html +0 -158
  101. package/coverage/lcov-report/marko-v4/compiler/taglib-finder/index.html +0 -106
  102. package/coverage/lcov-report/marko-v4/compiler/taglib-finder/index.js.html +0 -632
  103. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/DependencyChain.js.html +0 -113
  104. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/Taglib/Attribute.js.html +0 -155
  105. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/Taglib/ImportedVariable.js.html +0 -140
  106. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/Taglib/NestedVariable.js.html +0 -134
  107. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/Taglib/Property.js.html +0 -140
  108. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/Taglib/Tag.js.html +0 -797
  109. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/Taglib/Taglib.js.html +0 -440
  110. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/Taglib/Transformer.js.html +0 -236
  111. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/Taglib/index.html +0 -184
  112. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/Taglib/index.js.html +0 -65
  113. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/handleAttributes.js.html +0 -161
  114. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/index.html +0 -236
  115. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/index.js.html +0 -191
  116. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/json-file-reader-browser.js.html +0 -143
  117. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/json-file-reader.js.html +0 -155
  118. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/loader-attribute.js.html +0 -659
  119. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/loader-tag.js.html +0 -1931
  120. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/loader-taglib.js.html +0 -1010
  121. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/loader.js.html +0 -119
  122. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/scanTagsDir-browser.js.html +0 -119
  123. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/scanTagsDir.js.html +0 -548
  124. package/coverage/lcov-report/marko-v4/compiler/taglib-loader/tag-def-from-code.js.html +0 -287
  125. package/coverage/lcov-report/marko-v4/compiler/taglib-lookup/TaglibLookup.js.html +0 -1205
  126. package/coverage/lcov-report/marko-v4/compiler/taglib-lookup/index.html +0 -106
  127. package/coverage/lcov-report/marko-v4/compiler/taglib-lookup/index.js.html +0 -302
  128. package/coverage/lcov-report/marko-v4/compiler/util/PosInfo.js.html +0 -140
  129. package/coverage/lcov-report/marko-v4/compiler/util/UniqueVars.js.html +0 -227
  130. package/coverage/lcov-report/marko-v4/compiler/util/adjustIndent.js.html +0 -272
  131. package/coverage/lcov-report/marko-v4/compiler/util/deresolve-browser.js.html +0 -119
  132. package/coverage/lcov-report/marko-v4/compiler/util/deresolve.js.html +0 -113
  133. package/coverage/lcov-report/marko-v4/compiler/util/fingerprint.js.html +0 -83
  134. package/coverage/lcov-report/marko-v4/compiler/util/index.html +0 -366
  135. package/coverage/lcov-report/marko-v4/compiler/util/isCompoundExpression.js.html +0 -92
  136. package/coverage/lcov-report/marko-v4/compiler/util/isJavaScriptReservedWord.js.html +0 -80
  137. package/coverage/lcov-report/marko-v4/compiler/util/isValidJavaScriptIdentifier.js.html +0 -80
  138. package/coverage/lcov-report/marko-v4/compiler/util/isValidJavaScriptVarName.js.html +0 -95
  139. package/coverage/lcov-report/marko-v4/compiler/util/javaScriptReservedWords.js.html +0 -260
  140. package/coverage/lcov-report/marko-v4/compiler/util/macros.js.html +0 -326
  141. package/coverage/lcov-report/marko-v4/compiler/util/parseExpression.js.html +0 -77
  142. package/coverage/lcov-report/marko-v4/compiler/util/parseJavaScript.js.html +0 -833
  143. package/coverage/lcov-report/marko-v4/compiler/util/parseJavaScriptArgs.js.html +0 -101
  144. package/coverage/lcov-report/marko-v4/compiler/util/parseStatement.js.html +0 -77
  145. package/coverage/lcov-report/marko-v4/compiler/util/removeComments.js.html +0 -221
  146. package/coverage/lcov-report/marko-v4/compiler/util/removeDashes.js.html +0 -77
  147. package/coverage/lcov-report/marko-v4/compiler/util/resolve-browser.js.html +0 -125
  148. package/coverage/lcov-report/marko-v4/compiler/util/resolve.js.html +0 -128
  149. package/coverage/lcov-report/marko-v4/compiler/util/safeVarName.js.html +0 -116
  150. package/coverage/lcov-report/marko-v4/compiler/util/tokenizer.js.html +0 -173
  151. package/coverage/lcov-report/marko-v4/compiler/util/vdom/VDOMOptimizer.js.html +0 -560
  152. package/coverage/lcov-report/marko-v4/compiler/util/vdom/index.html +0 -119
  153. package/coverage/lcov-report/marko-v4/compiler/util/vdom/index.js.html +0 -119
  154. package/coverage/lcov-report/marko-v4/compiler/util/vdom/isStaticValue.js.html +0 -212
  155. package/coverage/lcov-report/marko-v4/defineRenderer.js.html +0 -206
  156. package/coverage/lcov-report/marko-v4/express.js.html +0 -161
  157. package/coverage/lcov-report/marko-v4/helpers/empty.js.html +0 -77
  158. package/coverage/lcov-report/marko-v4/helpers/index.html +0 -106
  159. package/coverage/lcov-report/marko-v4/helpers/notEmpty.js.html +0 -95
  160. package/coverage/lcov-report/marko-v4/hot-reload/index.html +0 -93
  161. package/coverage/lcov-report/marko-v4/hot-reload/index.js.html +0 -524
  162. package/coverage/lcov-report/marko-v4/index.html +0 -158
  163. package/coverage/lcov-report/marko-v4/node-require-browser.js.html +0 -113
  164. package/coverage/lcov-report/marko-v4/node-require.js.html +0 -434
  165. package/coverage/lcov-report/marko-v4/runtime/deprecate.js.html +0 -131
  166. package/coverage/lcov-report/marko-v4/runtime/forEachPropStatusVar.js.html +0 -158
  167. package/coverage/lcov-report/marko-v4/runtime/helpers.js.html +0 -839
  168. package/coverage/lcov-report/marko-v4/runtime/html/helpers.js.html +0 -506
  169. package/coverage/lcov-report/marko-v4/runtime/html/index.html +0 -106
  170. package/coverage/lcov-report/marko-v4/runtime/html/index.js.html +0 -914
  171. package/coverage/lcov-report/marko-v4/runtime/index.html +0 -145
  172. package/coverage/lcov-report/marko-v4/runtime/inline.js.html +0 -65
  173. package/coverage/lcov-report/marko-v4/runtime/loader/index-browser-dynamic.js.html +0 -128
  174. package/coverage/lcov-report/marko-v4/runtime/loader/index-browser.js.html +0 -119
  175. package/coverage/lcov-report/marko-v4/runtime/loader/index.html +0 -119
  176. package/coverage/lcov-report/marko-v4/runtime/loader/index.js.html +0 -548
  177. package/coverage/lcov-report/marko-v4/runtime/stream.js.html +0 -224
  178. package/coverage/lcov-report/marko-v4/runtime/vdom/helpers.js.html +0 -350
  179. package/coverage/lcov-report/marko-v4/runtime/vdom/index.html +0 -106
  180. package/coverage/lcov-report/marko-v4/runtime/vdom/index.js.html +0 -893
  181. package/coverage/lcov-report/marko-v4/stream.js.html +0 -98
  182. package/coverage/lcov-report/marko-v4/taglibs/async/async-fragment-to-await-transformer.js.html +0 -221
  183. package/coverage/lcov-report/marko-v4/taglibs/async/await-nested-tag-transformer.js.html +0 -140
  184. package/coverage/lcov-report/marko-v4/taglibs/async/await-reorderer-tag.js.html +0 -278
  185. package/coverage/lcov-report/marko-v4/taglibs/async/await-tag-transformer.js.html +0 -353
  186. package/coverage/lcov-report/marko-v4/taglibs/async/await-tag.js.html +0 -779
  187. package/coverage/lcov-report/marko-v4/taglibs/async/client-reorder-browser.js.html +0 -65
  188. package/coverage/lcov-report/marko-v4/taglibs/async/client-reorder-runtime.js.html +0 -167
  189. package/coverage/lcov-report/marko-v4/taglibs/async/client-reorder-runtime.min.js.html +0 -65
  190. package/coverage/lcov-report/marko-v4/taglibs/async/client-reorder.js.html +0 -98
  191. package/coverage/lcov-report/marko-v4/taglibs/async/index.html +0 -197
  192. package/coverage/lcov-report/marko-v4/taglibs/cache/cached-fragment-tag-transformer.js.html +0 -89
  193. package/coverage/lcov-report/marko-v4/taglibs/cache/cached-fragment-tag.js.html +0 -266
  194. package/coverage/lcov-report/marko-v4/taglibs/cache/default-cache-manager.js.html +0 -173
  195. package/coverage/lcov-report/marko-v4/taglibs/cache/index.html +0 -119
  196. package/coverage/lcov-report/marko-v4/taglibs/core/assign-tag.js.html +0 -116
  197. package/coverage/lcov-report/marko-v4/taglibs/core/core-transformer.js.html +0 -683
  198. package/coverage/lcov-report/marko-v4/taglibs/core/else-if-tag.js.html +0 -140
  199. package/coverage/lcov-report/marko-v4/taglibs/core/else-tag.js.html +0 -170
  200. package/coverage/lcov-report/marko-v4/taglibs/core/for-tag.js.html +0 -131
  201. package/coverage/lcov-report/marko-v4/taglibs/core/if-tag.js.html +0 -140
  202. package/coverage/lcov-report/marko-v4/taglibs/core/include-html-tag-browser.js.html +0 -113
  203. package/coverage/lcov-report/marko-v4/taglibs/core/include-html-tag.js.html +0 -152
  204. package/coverage/lcov-report/marko-v4/taglibs/core/include-tag.js.html +0 -248
  205. package/coverage/lcov-report/marko-v4/taglibs/core/include-text-tag-browser.js.html +0 -113
  206. package/coverage/lcov-report/marko-v4/taglibs/core/include-text-tag.js.html +0 -152
  207. package/coverage/lcov-report/marko-v4/taglibs/core/index.html +0 -314
  208. package/coverage/lcov-report/marko-v4/taglibs/core/invoke-tag.js.html +0 -116
  209. package/coverage/lcov-report/marko-v4/taglibs/core/macro-body-tag.js.html +0 -83
  210. package/coverage/lcov-report/marko-v4/taglibs/core/macro-tag.js.html +0 -131
  211. package/coverage/lcov-report/marko-v4/taglibs/core/marko-preserve-whitespace-tag.js.html +0 -71
  212. package/coverage/lcov-report/marko-v4/taglibs/core/unless-tag.js.html +0 -143
  213. package/coverage/lcov-report/marko-v4/taglibs/core/util/createLoopNode.js.html +0 -128
  214. package/coverage/lcov-report/marko-v4/taglibs/core/util/index.html +0 -119
  215. package/coverage/lcov-report/marko-v4/taglibs/core/util/parseFor.js.html +0 -1145
  216. package/coverage/lcov-report/marko-v4/taglibs/core/util/parseJavaScriptIdentifier.js.html +0 -131
  217. package/coverage/lcov-report/marko-v4/taglibs/core/var-tag.js.html +0 -152
  218. package/coverage/lcov-report/marko-v4/taglibs/core/while-tag.js.html +0 -95
  219. package/coverage/lcov-report/marko-v4/taglibs/html/html-comment-tag.js.html +0 -146
  220. package/coverage/lcov-report/marko-v4/taglibs/html/index.html +0 -93
  221. package/coverage/lcov-report/marko-v4/taglibs/layout/index.html +0 -132
  222. package/coverage/lcov-report/marko-v4/taglibs/layout/placeholder-tag.js.html +0 -107
  223. package/coverage/lcov-report/marko-v4/taglibs/layout/put-tag.js.html +0 -77
  224. package/coverage/lcov-report/marko-v4/taglibs/layout/use-tag-transformer.js.html +0 -137
  225. package/coverage/lcov-report/marko-v4/taglibs/layout/use-tag.js.html +0 -134
  226. package/coverage/lcov-report/marko-v4/vdom.js.html +0 -65
  227. package/coverage/lcov-report/prettify.css +0 -1
  228. package/coverage/lcov-report/prettify.js +0 -1
  229. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  230. package/coverage/lcov-report/sorter.js +0 -158
  231. package/coverage/lcov.info +0 -13662
@@ -1,290 +0,0 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <title>Code coverage report for marko-v4/compiler/ast/ForEachProp.js</title>
5
- <meta charset="utf-8" />
6
- <link rel="stylesheet" href="../../../prettify.css" />
7
- <link rel="stylesheet" href="../../../base.css" />
8
- <meta name="viewport" content="width=device-width, initial-scale=1">
9
- <style type='text/css'>
10
- .coverage-summary .sorter {
11
- background-image: url(../../../sort-arrow-sprite.png);
12
- }
13
- </style>
14
- </head>
15
- <body>
16
- <div class='wrapper'>
17
- <div class='pad1'>
18
- <h1>
19
- <a href="../../../index.html">all files</a> / <a href="index.html">marko-v4/compiler/ast/</a> ForEachProp.js
20
- </h1>
21
- <div class='clearfix'>
22
- <div class='fl pad1y space-right2'>
23
- <span class="strong">89.19% </span>
24
- <span class="quiet">Statements</span>
25
- <span class='fraction'>33/37</span>
26
- </div>
27
- <div class='fl pad1y space-right2'>
28
- <span class="strong">100% </span>
29
- <span class="quiet">Branches</span>
30
- <span class='fraction'>8/8</span>
31
- </div>
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">66.67% </span>
34
- <span class="quiet">Functions</span>
35
- <span class='fraction'>2/3</span>
36
- </div>
37
- <div class='fl pad1y space-right2'>
38
- <span class="strong">89.19% </span>
39
- <span class="quiet">Lines</span>
40
- <span class='fraction'>33/37</span>
41
- </div>
42
- </div>
43
- </div>
44
- <div class='status-line high'></div>
45
- <pre><table class="coverage">
46
- <tr><td class="line-count quiet">1
47
- 2
48
- 3
49
- 4
50
- 5
51
- 6
52
- 7
53
- 8
54
- 9
55
- 10
56
- 11
57
- 12
58
- 13
59
- 14
60
- 15
61
- 16
62
- 17
63
- 18
64
- 19
65
- 20
66
- 21
67
- 22
68
- 23
69
- 24
70
- 25
71
- 26
72
- 27
73
- 28
74
- 29
75
- 30
76
- 31
77
- 32
78
- 33
79
- 34
80
- 35
81
- 36
82
- 37
83
- 38
84
- 39
85
- 40
86
- 41
87
- 42
88
- 43
89
- 44
90
- 45
91
- 46
92
- 47
93
- 48
94
- 49
95
- 50
96
- 51
97
- 52
98
- 53
99
- 54
100
- 55
101
- 56
102
- 57
103
- 58
104
- 59
105
- 60
106
- 61
107
- 62
108
- 63
109
- 64
110
- 65
111
- 66
112
- 67
113
- 68
114
- 69
115
- 70
116
- 71
117
- 72
118
- 73
119
- 74
120
- 75
121
- 76</td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
122
- <span class="cline-any cline-yes">1×</span>
123
- <span class="cline-any cline-yes">1×</span>
124
- <span class="cline-any cline-neutral">&nbsp;</span>
125
- <span class="cline-any cline-neutral">&nbsp;</span>
126
- <span class="cline-any cline-neutral">&nbsp;</span>
127
- <span class="cline-any cline-yes">11×</span>
128
- <span class="cline-any cline-yes">11×</span>
129
- <span class="cline-any cline-yes">11×</span>
130
- <span class="cline-any cline-yes">11×</span>
131
- <span class="cline-any cline-yes">11×</span>
132
- <span class="cline-any cline-yes">11×</span>
133
- <span class="cline-any cline-yes">11×</span>
134
- <span class="cline-any cline-neutral">&nbsp;</span>
135
- <span class="cline-any cline-yes">11×</span>
136
- <span class="cline-any cline-yes">11×</span>
137
- <span class="cline-any cline-yes">11×</span>
138
- <span class="cline-any cline-neutral">&nbsp;</span>
139
- <span class="cline-any cline-neutral">&nbsp;</span>
140
- <span class="cline-any cline-neutral">&nbsp;</span>
141
- <span class="cline-any cline-yes">11×</span>
142
- <span class="cline-any cline-yes">11×</span>
143
- <span class="cline-any cline-yes">11×</span>
144
- <span class="cline-any cline-yes">11×</span>
145
- <span class="cline-any cline-yes">11×</span>
146
- <span class="cline-any cline-yes">11×</span>
147
- <span class="cline-any cline-yes">11×</span>
148
- <span class="cline-any cline-neutral">&nbsp;</span>
149
- <span class="cline-any cline-yes">11×</span>
150
- <span class="cline-any cline-yes">2×</span>
151
- <span class="cline-any cline-neutral">&nbsp;</span>
152
- <span class="cline-any cline-neutral">&nbsp;</span>
153
- <span class="cline-any cline-yes">11×</span>
154
- <span class="cline-any cline-neutral">&nbsp;</span>
155
- <span class="cline-any cline-yes">11×</span>
156
- <span class="cline-any cline-yes">6×</span>
157
- <span class="cline-any cline-yes">6×</span>
158
- <span class="cline-any cline-yes">6×</span>
159
- <span class="cline-any cline-neutral">&nbsp;</span>
160
- <span class="cline-any cline-yes">6×</span>
161
- <span class="cline-any cline-yes">4×</span>
162
- <span class="cline-any cline-neutral">&nbsp;</span>
163
- <span class="cline-any cline-neutral">&nbsp;</span>
164
- <span class="cline-any cline-neutral">&nbsp;</span>
165
- <span class="cline-any cline-yes">4×</span>
166
- <span class="cline-any cline-neutral">&nbsp;</span>
167
- <span class="cline-any cline-yes">4×</span>
168
- <span class="cline-any cline-neutral">&nbsp;</span>
169
- <span class="cline-any cline-neutral">&nbsp;</span>
170
- <span class="cline-any cline-neutral">&nbsp;</span>
171
- <span class="cline-any cline-neutral">&nbsp;</span>
172
- <span class="cline-any cline-neutral">&nbsp;</span>
173
- <span class="cline-any cline-neutral">&nbsp;</span>
174
- <span class="cline-any cline-yes">6×</span>
175
- <span class="cline-any cline-neutral">&nbsp;</span>
176
- <span class="cline-any cline-neutral">&nbsp;</span>
177
- <span class="cline-any cline-neutral">&nbsp;</span>
178
- <span class="cline-any cline-neutral">&nbsp;</span>
179
- <span class="cline-any cline-yes">5×</span>
180
- <span class="cline-any cline-neutral">&nbsp;</span>
181
- <span class="cline-any cline-neutral">&nbsp;</span>
182
- <span class="cline-any cline-neutral">&nbsp;</span>
183
- <span class="cline-any cline-neutral">&nbsp;</span>
184
- <span class="cline-any cline-neutral">&nbsp;</span>
185
- <span class="cline-any cline-neutral">&nbsp;</span>
186
- <span class="cline-any cline-neutral">&nbsp;</span>
187
- <span class="cline-any cline-neutral">&nbsp;</span>
188
- <span class="cline-any cline-neutral">&nbsp;</span>
189
- <span class="cline-any cline-no">&nbsp;</span>
190
- <span class="cline-any cline-no">&nbsp;</span>
191
- <span class="cline-any cline-no">&nbsp;</span>
192
- <span class="cline-any cline-no">&nbsp;</span>
193
- <span class="cline-any cline-neutral">&nbsp;</span>
194
- <span class="cline-any cline-neutral">&nbsp;</span>
195
- <span class="cline-any cline-neutral">&nbsp;</span>
196
- <span class="cline-any cline-yes">1×</span></td><td class="text"><pre class="prettyprint lang-js">'use strict';
197
- var ok = require('assert').ok;
198
- var Node = require('./Node');
199
- &nbsp;
200
- class ForEachProp extends Node {
201
- constructor(def) {
202
- super('ForEachProp');
203
- this.nameVarName = def.nameVarName;
204
- this.valueVarName = def.valueVarName;
205
- this.in = def.in;
206
- this.separator = def.separator;
207
- this.statusVarName = def.statusVarName;
208
- this.body = this.makeContainer(def.body);
209
- &nbsp;
210
- ok(this.nameVarName, '"nameVarName" is required');
211
- ok(this.valueVarName != null, '"valueVarName" is required');
212
- ok(this.in != null, '"in" is required');
213
- }
214
- &nbsp;
215
- generateCode(codegen) {
216
- var context = codegen.context;
217
- var nameVarName = this.nameVarName;
218
- var valueVarName = this.valueVarName;
219
- var inExpression = this.in;
220
- var body = this.body;
221
- var separator = this.separator;
222
- var statusVarName = this.statusVarName;
223
- &nbsp;
224
- if (separator &amp;&amp; !statusVarName) {
225
- statusVarName = '__loop';
226
- }
227
- &nbsp;
228
- var builder = codegen.builder;
229
- &nbsp;
230
- if (statusVarName) {
231
- let helperVar = builder.require(builder.literal('marko/runtime/forEachPropStatusVar'));
232
- let forEachVarName = codegen.addStaticVar('forEacPropStatusVar', helperVar);
233
- let body = this.body;
234
- &nbsp;
235
- if (separator) {
236
- let isNotLastTest = builder.functionCall(
237
- builder.memberExpression(statusVarName, builder.identifier('isLast')),
238
- []);
239
- &nbsp;
240
- isNotLastTest = builder.negate(isNotLastTest);
241
- &nbsp;
242
- body = body.items.concat([
243
- builder.ifStatement(isNotLastTest, [
244
- builder.text(separator)
245
- ])
246
- ]);
247
- }
248
- &nbsp;
249
- return builder.functionCall(forEachVarName, [
250
- inExpression,
251
- builder.functionDeclaration(null, [nameVarName, valueVarName, statusVarName], body)
252
- ]);
253
- } else {
254
- return builder.functionCall(
255
- context.helper('forEachProp'),
256
- [
257
- inExpression,
258
- builder.functionDeclaration(null, [nameVarName, valueVarName], body)
259
- ]);
260
- }
261
- }
262
- &nbsp;
263
- walk<span class="fstat-no" title="function not covered" >(walker) {</span>
264
- <span class="cstat-no" title="statement not covered" > this.nameVarName = walker.walk(this.nameVarName);</span>
265
- <span class="cstat-no" title="statement not covered" > this.valueVarName = walker.walk(this.valueVarName);</span>
266
- <span class="cstat-no" title="statement not covered" > this.in = walker.walk(this.in);</span>
267
- <span class="cstat-no" title="statement not covered" > this.body = walker.walk(this.body);</span>
268
- }
269
- }
270
- &nbsp;
271
- module.exports = ForEachProp;</pre></td></tr>
272
- </table></pre>
273
- <div class='push'></div><!-- for sticky footer -->
274
- </div><!-- /wrapper -->
275
- <div class='footer quiet pad2 space-top1 center small'>
276
- Code coverage
277
- generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Tue Oct 18 2016 14:11:32 GMT-0700 (PDT)
278
- </div>
279
- </div>
280
- <script src="../../../prettify.js"></script>
281
- <script>
282
- window.onload = function () {
283
- if (typeof prettyPrint === 'function') {
284
- prettyPrint();
285
- }
286
- };
287
- </script>
288
- <script src="../../../sorter.js"></script>
289
- </body>
290
- </html>
@@ -1,374 +0,0 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <title>Code coverage report for marko-v4/compiler/ast/ForRange.js</title>
5
- <meta charset="utf-8" />
6
- <link rel="stylesheet" href="../../../prettify.css" />
7
- <link rel="stylesheet" href="../../../base.css" />
8
- <meta name="viewport" content="width=device-width, initial-scale=1">
9
- <style type='text/css'>
10
- .coverage-summary .sorter {
11
- background-image: url(../../../sort-arrow-sprite.png);
12
- }
13
- </style>
14
- </head>
15
- <body>
16
- <div class='wrapper'>
17
- <div class='pad1'>
18
- <h1>
19
- <a href="../../../index.html">all files</a> / <a href="index.html">marko-v4/compiler/ast/</a> ForRange.js
20
- </h1>
21
- <div class='clearfix'>
22
- <div class='fl pad1y space-right2'>
23
- <span class="strong">86.21% </span>
24
- <span class="quiet">Statements</span>
25
- <span class='fraction'>50/58</span>
26
- </div>
27
- <div class='fl pad1y space-right2'>
28
- <span class="strong">85.29% </span>
29
- <span class="quiet">Branches</span>
30
- <span class='fraction'>29/34</span>
31
- </div>
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">66.67% </span>
34
- <span class="quiet">Functions</span>
35
- <span class='fraction'>2/3</span>
36
- </div>
37
- <div class='fl pad1y space-right2'>
38
- <span class="strong">86.21% </span>
39
- <span class="quiet">Lines</span>
40
- <span class='fraction'>50/58</span>
41
- </div>
42
- </div>
43
- </div>
44
- <div class='status-line high'></div>
45
- <pre><table class="coverage">
46
- <tr><td class="line-count quiet">1
47
- 2
48
- 3
49
- 4
50
- 5
51
- 6
52
- 7
53
- 8
54
- 9
55
- 10
56
- 11
57
- 12
58
- 13
59
- 14
60
- 15
61
- 16
62
- 17
63
- 18
64
- 19
65
- 20
66
- 21
67
- 22
68
- 23
69
- 24
70
- 25
71
- 26
72
- 27
73
- 28
74
- 29
75
- 30
76
- 31
77
- 32
78
- 33
79
- 34
80
- 35
81
- 36
82
- 37
83
- 38
84
- 39
85
- 40
86
- 41
87
- 42
88
- 43
89
- 44
90
- 45
91
- 46
92
- 47
93
- 48
94
- 49
95
- 50
96
- 51
97
- 52
98
- 53
99
- 54
100
- 55
101
- 56
102
- 57
103
- 58
104
- 59
105
- 60
106
- 61
107
- 62
108
- 63
109
- 64
110
- 65
111
- 66
112
- 67
113
- 68
114
- 69
115
- 70
116
- 71
117
- 72
118
- 73
119
- 74
120
- 75
121
- 76
122
- 77
123
- 78
124
- 79
125
- 80
126
- 81
127
- 82
128
- 83
129
- 84
130
- 85
131
- 86
132
- 87
133
- 88
134
- 89
135
- 90
136
- 91
137
- 92
138
- 93
139
- 94
140
- 95
141
- 96
142
- 97
143
- 98
144
- 99
145
- 100
146
- 101
147
- 102
148
- 103
149
- 104</td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
150
- <span class="cline-any cline-yes">1×</span>
151
- <span class="cline-any cline-yes">1×</span>
152
- <span class="cline-any cline-yes">1×</span>
153
- <span class="cline-any cline-yes">1×</span>
154
- <span class="cline-any cline-neutral">&nbsp;</span>
155
- <span class="cline-any cline-neutral">&nbsp;</span>
156
- <span class="cline-any cline-neutral">&nbsp;</span>
157
- <span class="cline-any cline-yes">15×</span>
158
- <span class="cline-any cline-yes">15×</span>
159
- <span class="cline-any cline-yes">15×</span>
160
- <span class="cline-any cline-yes">15×</span>
161
- <span class="cline-any cline-yes">15×</span>
162
- <span class="cline-any cline-yes">15×</span>
163
- <span class="cline-any cline-neutral">&nbsp;</span>
164
- <span class="cline-any cline-yes">15×</span>
165
- <span class="cline-any cline-yes">15×</span>
166
- <span class="cline-any cline-neutral">&nbsp;</span>
167
- <span class="cline-any cline-neutral">&nbsp;</span>
168
- <span class="cline-any cline-neutral">&nbsp;</span>
169
- <span class="cline-any cline-yes">15×</span>
170
- <span class="cline-any cline-yes">15×</span>
171
- <span class="cline-any cline-yes">15×</span>
172
- <span class="cline-any cline-yes">15×</span>
173
- <span class="cline-any cline-neutral">&nbsp;</span>
174
- <span class="cline-any cline-yes">15×</span>
175
- <span class="cline-any cline-neutral">&nbsp;</span>
176
- <span class="cline-any cline-yes">15×</span>
177
- <span class="cline-any cline-neutral">&nbsp;</span>
178
- <span class="cline-any cline-yes">15×</span>
179
- <span class="cline-any cline-yes">14×</span>
180
- <span class="cline-any cline-neutral">&nbsp;</span>
181
- <span class="cline-any cline-neutral">&nbsp;</span>
182
- <span class="cline-any cline-yes">15×</span>
183
- <span class="cline-any cline-neutral">&nbsp;</span>
184
- <span class="cline-any cline-yes">15×</span>
185
- <span class="cline-any cline-yes">8×</span>
186
- <span class="cline-any cline-yes">8×</span>
187
- <span class="cline-any cline-neutral">&nbsp;</span>
188
- <span class="cline-any cline-yes">8×</span>
189
- <span class="cline-any cline-yes">4×</span>
190
- <span class="cline-any cline-yes">2×</span>
191
- <span class="cline-any cline-yes">2×</span>
192
- <span class="cline-any cline-neutral">&nbsp;</span>
193
- <span class="cline-any cline-yes">2×</span>
194
- <span class="cline-any cline-neutral">&nbsp;</span>
195
- <span class="cline-any cline-neutral">&nbsp;</span>
196
- <span class="cline-any cline-neutral">&nbsp;</span>
197
- <span class="cline-any cline-yes">7×</span>
198
- <span class="cline-any cline-neutral">&nbsp;</span>
199
- <span class="cline-any cline-yes">7×</span>
200
- <span class="cline-any cline-yes">6×</span>
201
- <span class="cline-any cline-yes">1×</span>
202
- <span class="cline-any cline-yes">1×</span>
203
- <span class="cline-any cline-neutral">&nbsp;</span>
204
- <span class="cline-any cline-neutral">&nbsp;</span>
205
- <span class="cline-any cline-yes">7×</span>
206
- <span class="cline-any cline-yes">7×</span>
207
- <span class="cline-any cline-yes">4×</span>
208
- <span class="cline-any cline-neutral">&nbsp;</span>
209
- <span class="cline-any cline-neutral">&nbsp;</span>
210
- <span class="cline-any cline-yes">7×</span>
211
- <span class="cline-any cline-no">&nbsp;</span>
212
- <span class="cline-any cline-yes">7×</span>
213
- <span class="cline-any cline-yes">2×</span>
214
- <span class="cline-any cline-yes">5×</span>
215
- <span class="cline-any cline-yes">3×</span>
216
- <span class="cline-any cline-yes">2×</span>
217
- <span class="cline-any cline-no">&nbsp;</span>
218
- <span class="cline-any cline-yes">2×</span>
219
- <span class="cline-any cline-yes">2×</span>
220
- <span class="cline-any cline-yes">2×</span>
221
- <span class="cline-any cline-neutral">&nbsp;</span>
222
- <span class="cline-any cline-neutral">&nbsp;</span>
223
- <span class="cline-any cline-no">&nbsp;</span>
224
- <span class="cline-any cline-neutral">&nbsp;</span>
225
- <span class="cline-any cline-neutral">&nbsp;</span>
226
- <span class="cline-any cline-neutral">&nbsp;</span>
227
- <span class="cline-any cline-yes">15×</span>
228
- <span class="cline-any cline-yes">4×</span>
229
- <span class="cline-any cline-neutral">&nbsp;</span>
230
- <span class="cline-any cline-neutral">&nbsp;</span>
231
- <span class="cline-any cline-yes">15×</span>
232
- <span class="cline-any cline-neutral">&nbsp;</span>
233
- <span class="cline-any cline-neutral">&nbsp;</span>
234
- <span class="cline-any cline-neutral">&nbsp;</span>
235
- <span class="cline-any cline-neutral">&nbsp;</span>
236
- <span class="cline-any cline-neutral">&nbsp;</span>
237
- <span class="cline-any cline-neutral">&nbsp;</span>
238
- <span class="cline-any cline-neutral">&nbsp;</span>
239
- <span class="cline-any cline-neutral">&nbsp;</span>
240
- <span class="cline-any cline-neutral">&nbsp;</span>
241
- <span class="cline-any cline-neutral">&nbsp;</span>
242
- <span class="cline-any cline-neutral">&nbsp;</span>
243
- <span class="cline-any cline-neutral">&nbsp;</span>
244
- <span class="cline-any cline-no">&nbsp;</span>
245
- <span class="cline-any cline-no">&nbsp;</span>
246
- <span class="cline-any cline-no">&nbsp;</span>
247
- <span class="cline-any cline-no">&nbsp;</span>
248
- <span class="cline-any cline-no">&nbsp;</span>
249
- <span class="cline-any cline-neutral">&nbsp;</span>
250
- <span class="cline-any cline-neutral">&nbsp;</span>
251
- <span class="cline-any cline-neutral">&nbsp;</span>
252
- <span class="cline-any cline-yes">1×</span></td><td class="text"><pre class="prettyprint lang-js">'use strict';
253
- var ok = require('assert').ok;
254
- var Node = require('./Node');
255
- var Literal = require('./Literal');
256
- var Identifier = require('./Identifier');
257
- &nbsp;
258
- class ForRange extends Node {
259
- constructor(def) {
260
- super('ForRange');
261
- this.varName = def.varName;
262
- this.body = this.makeContainer(def.body);
263
- this.from = def.from;
264
- this.to = def.to;
265
- this.step = def.step;
266
- &nbsp;
267
- ok(this.varName, '"varName" is required');
268
- ok(this.from != null, '"from" is required');
269
- }
270
- &nbsp;
271
- generateCode(codegen) {
272
- var varName = this.varName;
273
- var from = this.from;
274
- var to = this.to;
275
- var step = this.step;
276
- &nbsp;
277
- var builder = codegen.builder;
278
- &nbsp;
279
- var comparison = '&lt;=';
280
- &nbsp;
281
- if (varName instanceof Identifier) {
282
- varName = varName.name;
283
- }
284
- &nbsp;
285
- var updateExpression;
286
- &nbsp;
287
- if (step == null) {
288
- let fromLiteral = (from instanceof Literal) &amp;&amp; from.value;
289
- let toLiteral = (to instanceof Literal) &amp;&amp; to.value;
290
- &nbsp;
291
- if (typeof fromLiteral === 'number' &amp;&amp; typeof toLiteral === 'number') {
292
- if (fromLiteral &gt; toLiteral) {
293
- updateExpression = varName + '--';
294
- comparison = '&gt;=';
295
- } else {
296
- updateExpression = varName + '++';
297
- }
298
- }
299
- } else {
300
- let stepLiteral;
301
- &nbsp;
302
- if (step instanceof Literal) {
303
- stepLiteral = step.value;
304
- } else <span class="missing-if-branch" title="else path not taken" >E</span>if (typeof step === 'number') {
305
- stepLiteral = step;
306
- }
307
- &nbsp;
308
- <span class="missing-if-branch" title="else path not taken" >E</span>if (typeof stepLiteral === 'number') {
309
- if (stepLiteral &lt; 0) {
310
- comparison = '&gt;=';
311
- }
312
- &nbsp;
313
- <span class="missing-if-branch" title="if path not taken" >I</span>if (stepLiteral === 1) {
314
- <span class="cstat-no" title="statement not covered" > updateExpression = varName + '++';</span>
315
- } else if (stepLiteral === -1) {
316
- updateExpression = varName + '--';
317
- } else if (stepLiteral &gt; 0) {
318
- updateExpression = varName + ' += ' + stepLiteral;
319
- } else <span class="missing-if-branch" title="if path not taken" >I</span>if (stepLiteral === 0) {
320
- <span class="cstat-no" title="statement not covered" > throw new Error('Invalid step of 0');</span>
321
- } else <span class="missing-if-branch" title="else path not taken" >E</span>if (stepLiteral &lt; 0) {
322
- stepLiteral = 0-stepLiteral; // Make the step positive and switch to -=
323
- updateExpression = varName + ' -= ' + stepLiteral;
324
- }
325
- } else {
326
- <span class="cstat-no" title="statement not covered" > updateExpression = builder.assignment(varName, step, '+=');</span>
327
- }
328
- }
329
- &nbsp;
330
- if (updateExpression == null) {
331
- updateExpression = varName + '++';
332
- }
333
- &nbsp;
334
- return builder.selfInvokingFunction([
335
- builder.forStatement({
336
- init: [
337
- builder.vars([ { id: varName, init: from }])
338
- ],
339
- test: builder.binaryExpression(varName, comparison, to),
340
- update: updateExpression,
341
- body: this.body
342
- })
343
- ]);
344
- }
345
- &nbsp;
346
- walk<span class="fstat-no" title="function not covered" >(walker) {</span>
347
- <span class="cstat-no" title="statement not covered" > this.varName = walker.walk(this.varName);</span>
348
- <span class="cstat-no" title="statement not covered" > this.body = walker.walk(this.body);</span>
349
- <span class="cstat-no" title="statement not covered" > this.from = walker.walk(this.from);</span>
350
- <span class="cstat-no" title="statement not covered" > this.to = walker.walk(this.to);</span>
351
- <span class="cstat-no" title="statement not covered" > this.step = walker.walk(this.step);</span>
352
- }
353
- }
354
- &nbsp;
355
- module.exports = ForRange;</pre></td></tr>
356
- </table></pre>
357
- <div class='push'></div><!-- for sticky footer -->
358
- </div><!-- /wrapper -->
359
- <div class='footer quiet pad2 space-top1 center small'>
360
- Code coverage
361
- generated by <a href="http://istanbul-js.org/" target="_blank">istanbul</a> at Tue Oct 18 2016 14:11:32 GMT-0700 (PDT)
362
- </div>
363
- </div>
364
- <script src="../../../prettify.js"></script>
365
- <script>
366
- window.onload = function () {
367
- if (typeof prettyPrint === 'function') {
368
- prettyPrint();
369
- }
370
- };
371
- </script>
372
- <script src="../../../sorter.js"></script>
373
- </body>
374
- </html>