astn 0.105.0 → 0.110.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (298) hide show
  1. package/dist/format.d.ts +66 -0
  2. package/dist/format.js +173 -0
  3. package/dist/globals.d.ts +24 -0
  4. package/dist/globals.js +2 -0
  5. package/dist/index.d.ts +2 -9
  6. package/dist/index.js +3 -9
  7. package/dist/parse.d.ts +87 -0
  8. package/dist/parse.js +816 -0
  9. package/dist/types.d.ts +121 -0
  10. package/dist/types.js +3 -0
  11. package/package.json +10 -36
  12. package/data/Special ASTN characters.json +0 -88
  13. package/dist/esc/bin/normalizeFile.d.ts +0 -1
  14. package/dist/esc/bin/normalizeFile.js +0 -5
  15. package/dist/esc/bin/toJSON.d.ts +0 -1
  16. package/dist/esc/bin/toJSON.js +0 -5
  17. package/dist/esc/index.d.ts +0 -3
  18. package/dist/esc/index.js +0 -19
  19. package/dist/esc/legacy/notSureYet/formatCLI.d.ts +0 -5
  20. package/dist/esc/legacy/notSureYet/formatCLI.js +0 -31
  21. package/dist/esc/legacy/notSureYet/normalizeText.d.ts +0 -2
  22. package/dist/esc/legacy/notSureYet/normalizeText.js +0 -9
  23. package/dist/esc/legacy/notSureYet/toJSON.d.ts +0 -2
  24. package/dist/esc/legacy/notSureYet/toJSON.js +0 -9
  25. package/dist/modules/astn/esc/implementation/IChunk.d.ts +0 -6
  26. package/dist/modules/astn/esc/implementation/IChunk.js +0 -2
  27. package/dist/modules/astn/esc/implementation/ILocationState.d.ts +0 -6
  28. package/dist/modules/astn/esc/implementation/ILocationState.js +0 -2
  29. package/dist/modules/astn/esc/implementation/IPreTokenStreamConsumer.d.ts +0 -4
  30. package/dist/modules/astn/esc/implementation/IPreTokenStreamConsumer.js +0 -2
  31. package/dist/modules/astn/esc/implementation/IPreTokenizer.d.ts +0 -14
  32. package/dist/modules/astn/esc/implementation/IPreTokenizer.js +0 -2
  33. package/dist/modules/astn/esc/implementation/PreToken.d.ts +0 -89
  34. package/dist/modules/astn/esc/implementation/PreToken.js +0 -2
  35. package/dist/modules/astn/esc/implementation/TokenizerOptions.d.ts +0 -3
  36. package/dist/modules/astn/esc/implementation/TokenizerOptions.js +0 -2
  37. package/dist/modules/astn/esc/implementation/createASTNNormalizer.d.ts +0 -8
  38. package/dist/modules/astn/esc/implementation/createASTNNormalizer.js +0 -151
  39. package/dist/modules/astn/esc/implementation/createASTNSerializer.d.ts +0 -3
  40. package/dist/modules/astn/esc/implementation/createASTNSerializer.js +0 -46
  41. package/dist/modules/astn/esc/implementation/createAnnotater.d.ts +0 -2
  42. package/dist/modules/astn/esc/implementation/createAnnotater.js +0 -201
  43. package/dist/modules/astn/esc/implementation/createExpectContext.d.ts +0 -8
  44. package/dist/modules/astn/esc/implementation/createExpectContext.js +0 -582
  45. package/dist/modules/astn/esc/implementation/createFlattener.d.ts +0 -2
  46. package/dist/modules/astn/esc/implementation/createFlattener.js +0 -161
  47. package/dist/modules/astn/esc/implementation/createJSONFormatter.d.ts +0 -3
  48. package/dist/modules/astn/esc/implementation/createJSONFormatter.js +0 -140
  49. package/dist/modules/astn/esc/implementation/createJSONSerializer.d.ts +0 -3
  50. package/dist/modules/astn/esc/implementation/createJSONSerializer.js +0 -33
  51. package/dist/modules/astn/esc/implementation/createPreTokenizer.d.ts +0 -10
  52. package/dist/modules/astn/esc/implementation/createPreTokenizer.js +0 -922
  53. package/dist/modules/astn/esc/implementation/createStreamPreTokenizer.d.ts +0 -15
  54. package/dist/modules/astn/esc/implementation/createStreamPreTokenizer.js +0 -175
  55. package/dist/modules/astn/esc/implementation/createStructureParser.d.ts +0 -6
  56. package/dist/modules/astn/esc/implementation/createStructureParser.js +0 -214
  57. package/dist/modules/astn/esc/implementation/createTokenizer.d.ts +0 -11
  58. package/dist/modules/astn/esc/implementation/createTokenizer.js +0 -19
  59. package/dist/modules/astn/esc/implementation/createTokenizer2.d.ts +0 -9
  60. package/dist/modules/astn/esc/implementation/createTokenizer2.js +0 -455
  61. package/dist/modules/astn/esc/implementation/createTreeParser.d.ts +0 -3
  62. package/dist/modules/astn/esc/implementation/createTreeParser.js +0 -537
  63. package/dist/modules/astn/esc/implementation/dummyHandlers.d.ts +0 -7
  64. package/dist/modules/astn/esc/implementation/dummyHandlers.js +0 -51
  65. package/dist/modules/astn/esc/implementation/expect2.d.ts +0 -23
  66. package/dist/modules/astn/esc/implementation/expect2.js +0 -65
  67. package/dist/modules/astn/esc/implementation/getEndLocationFromRange.d.ts +0 -2
  68. package/dist/modules/astn/esc/implementation/getEndLocationFromRange.js +0 -9
  69. package/dist/modules/astn/esc/implementation/index.d.ts +0 -20
  70. package/dist/modules/astn/esc/implementation/index.js +0 -36
  71. package/dist/modules/astn/esc/implementation/printExpectIssue.d.ts +0 -2
  72. package/dist/modules/astn/esc/implementation/printExpectIssue.js +0 -129
  73. package/dist/modules/astn/esc/implementation/printExpectedValue.d.ts +0 -3
  74. package/dist/modules/astn/esc/implementation/printExpectedValue.js +0 -86
  75. package/dist/modules/astn/esc/implementation/printLocation.d.ts +0 -2
  76. package/dist/modules/astn/esc/implementation/printLocation.js +0 -7
  77. package/dist/modules/astn/esc/implementation/printRange.d.ts +0 -2
  78. package/dist/modules/astn/esc/implementation/printRange.js +0 -8
  79. package/dist/modules/astn/esc/implementation/printStructureError.d.ts +0 -2
  80. package/dist/modules/astn/esc/implementation/printStructureError.js +0 -49
  81. package/dist/modules/astn/esc/implementation/printTokenError.d.ts +0 -2
  82. package/dist/modules/astn/esc/implementation/printTokenError.js +0 -54
  83. package/dist/modules/astn/esc/implementation/printTokenizerError.d.ts +0 -2
  84. package/dist/modules/astn/esc/implementation/printTokenizerError.js +0 -44
  85. package/dist/modules/astn/esc/implementation/printTreeParserError.d.ts +0 -3
  86. package/dist/modules/astn/esc/implementation/printTreeParserError.js +0 -84
  87. package/dist/modules/astn/esc/implementation/stringSerialization.d.ts +0 -4
  88. package/dist/modules/astn/esc/implementation/stringSerialization.js +0 -60
  89. package/dist/modules/astn/esc/index.d.ts +0 -1
  90. package/dist/modules/astn/esc/index.js +0 -17
  91. package/dist/modules/astn/index.d.ts +0 -2
  92. package/dist/modules/astn/index.js +0 -18
  93. package/dist/modules/astn/interface/index.d.ts +0 -18
  94. package/dist/modules/astn/interface/index.js +0 -34
  95. package/dist/modules/astn/interface/interfaces/CreateASTNNormalizer.d.ts +0 -8
  96. package/dist/modules/astn/interface/interfaces/CreateASTNNormalizer.js +0 -2
  97. package/dist/modules/astn/interface/interfaces/CreateDummyTreeHandler.d.ts +0 -2
  98. package/dist/modules/astn/interface/interfaces/CreateDummyTreeHandler.js +0 -2
  99. package/dist/modules/astn/interface/interfaces/CreateDummyTypedHandler.d.ts +0 -2
  100. package/dist/modules/astn/interface/interfaces/CreateDummyTypedHandler.js +0 -2
  101. package/dist/modules/astn/interface/interfaces/CreateExpectContext.d.ts +0 -9
  102. package/dist/modules/astn/interface/interfaces/CreateExpectContext.js +0 -2
  103. package/dist/modules/astn/interface/interfaces/CreateFormatter.d.ts +0 -9
  104. package/dist/modules/astn/interface/interfaces/CreateFormatter.js +0 -2
  105. package/dist/modules/astn/interface/interfaces/CreateStructureParser.d.ts +0 -8
  106. package/dist/modules/astn/interface/interfaces/CreateStructureParser.js +0 -2
  107. package/dist/modules/astn/interface/interfaces/CreateTokenizer.d.ts +0 -15
  108. package/dist/modules/astn/interface/interfaces/CreateTokenizer.js +0 -2
  109. package/dist/modules/astn/interface/interfaces/CreateTreeParser.d.ts +0 -12
  110. package/dist/modules/astn/interface/interfaces/CreateTreeParser.js +0 -2
  111. package/dist/modules/astn/interface/interfaces/ExpectIssue.d.ts +0 -58
  112. package/dist/modules/astn/interface/interfaces/ExpectIssue.js +0 -2
  113. package/dist/modules/astn/interface/interfaces/IExpectContext.d.ts +0 -159
  114. package/dist/modules/astn/interface/interfaces/IExpectContext.js +0 -2
  115. package/dist/modules/astn/interface/interfaces/IStructureErrorHandler.d.ts +0 -5
  116. package/dist/modules/astn/interface/interfaces/IStructureErrorHandler.js +0 -2
  117. package/dist/modules/astn/interface/interfaces/OnExpectIssue.d.ts +0 -7
  118. package/dist/modules/astn/interface/interfaces/OnExpectIssue.js +0 -2
  119. package/dist/modules/astn/interface/types/ExpectedValue.d.ts +0 -5
  120. package/dist/modules/astn/interface/types/ExpectedValue.js +0 -2
  121. package/dist/modules/astn/interface/types/StructureError.d.ts +0 -1
  122. package/dist/modules/astn/interface/types/StructureError.js +0 -3
  123. package/dist/modules/astn/interface/types/TokenError.d.ts +0 -13
  124. package/dist/modules/astn/interface/types/TokenError.js +0 -2
  125. package/dist/modules/astn/interface/types/TokenizerError.d.ts +0 -3
  126. package/dist/modules/astn/interface/types/TokenizerError.js +0 -2
  127. package/dist/modules/astn/interface/types/TreeParserError.d.ts +0 -8
  128. package/dist/modules/astn/interface/types/TreeParserError.js +0 -2
  129. package/dist/modules/astn/interface/types/expect.d.ts +0 -2
  130. package/dist/modules/astn/interface/types/expect.js +0 -2
  131. package/dist/modules/astnTyped/esc/implementation/createASTNUnmarshaller.d.ts +0 -24
  132. package/dist/modules/astnTyped/esc/implementation/createASTNUnmarshaller.js +0 -212
  133. package/dist/modules/astnTyped/esc/implementation/createBuilder.d.ts +0 -3
  134. package/dist/modules/astnTyped/esc/implementation/createBuilder.js +0 -80
  135. package/dist/modules/astnTyped/esc/implementation/createCodeCompletionFinder.d.ts +0 -5
  136. package/dist/modules/astnTyped/esc/implementation/createCodeCompletionFinder.js +0 -57
  137. package/dist/modules/astnTyped/esc/implementation/createCodeCompletionsGenerator.d.ts +0 -5
  138. package/dist/modules/astnTyped/esc/implementation/createCodeCompletionsGenerator.js +0 -372
  139. package/dist/modules/astnTyped/esc/implementation/createDummyTypedHandler.d.ts +0 -2
  140. package/dist/modules/astnTyped/esc/implementation/createDummyTypedHandler.js +0 -64
  141. package/dist/modules/astnTyped/esc/implementation/createExternalSchemaLoader.d.ts +0 -22
  142. package/dist/modules/astnTyped/esc/implementation/createExternalSchemaLoader.js +0 -45
  143. package/dist/modules/astnTyped/esc/implementation/createHoverTextFinder.d.ts +0 -7
  144. package/dist/modules/astnTyped/esc/implementation/createHoverTextFinder.js +0 -28
  145. package/dist/modules/astnTyped/esc/implementation/createHoverTextsGenerator.d.ts +0 -5
  146. package/dist/modules/astnTyped/esc/implementation/createHoverTextsGenerator.js +0 -123
  147. package/dist/modules/astnTyped/esc/implementation/createMarshallInterface.d.ts +0 -3
  148. package/dist/modules/astnTyped/esc/implementation/createMarshallInterface.js +0 -107
  149. package/dist/modules/astnTyped/esc/implementation/createProcessorForASTNStreamWithContext.d.ts +0 -14
  150. package/dist/modules/astnTyped/esc/implementation/createProcessorForASTNStreamWithContext.js +0 -72
  151. package/dist/modules/astnTyped/esc/implementation/createSchemaHandler.d.ts +0 -6
  152. package/dist/modules/astnTyped/esc/implementation/createSchemaHandler.js +0 -54
  153. package/dist/modules/astnTyped/esc/implementation/createTreeUnmarshaller.d.ts +0 -12
  154. package/dist/modules/astnTyped/esc/implementation/createTreeUnmarshaller.js +0 -16
  155. package/dist/modules/astnTyped/esc/implementation/createTypedForker.d.ts +0 -2
  156. package/dist/modules/astnTyped/esc/implementation/createTypedForker.js +0 -77
  157. package/dist/modules/astnTyped/esc/implementation/createValueUnmarshaller.d.ts +0 -31
  158. package/dist/modules/astnTyped/esc/implementation/createValueUnmarshaller.js +0 -755
  159. package/dist/modules/astnTyped/esc/implementation/index.d.ts +0 -15
  160. package/dist/modules/astnTyped/esc/implementation/index.js +0 -31
  161. package/dist/modules/astnTyped/esc/implementation/isPositionBeforeLocation.d.ts +0 -6
  162. package/dist/modules/astnTyped/esc/implementation/isPositionBeforeLocation.js +0 -9
  163. package/dist/modules/astnTyped/esc/implementation/marshall.d.ts +0 -20
  164. package/dist/modules/astnTyped/esc/implementation/marshall.js +0 -345
  165. package/dist/modules/astnTyped/esc/implementation/printContextSchemaError.d.ts +0 -2
  166. package/dist/modules/astnTyped/esc/implementation/printContextSchemaError.js +0 -41
  167. package/dist/modules/astnTyped/esc/implementation/printDeserializeDiagnostic.d.ts +0 -2
  168. package/dist/modules/astnTyped/esc/implementation/printDeserializeDiagnostic.js +0 -63
  169. package/dist/modules/astnTyped/esc/implementation/printSchemaDeserializationError.d.ts +0 -2
  170. package/dist/modules/astnTyped/esc/implementation/printSchemaDeserializationError.js +0 -43
  171. package/dist/modules/astnTyped/esc/implementation/printSchemaSchemaError.d.ts +0 -2
  172. package/dist/modules/astnTyped/esc/implementation/printSchemaSchemaError.js +0 -50
  173. package/dist/modules/astnTyped/esc/implementation/printUnmarshallError.d.ts +0 -2
  174. package/dist/modules/astnTyped/esc/implementation/printUnmarshallError.js +0 -118
  175. package/dist/modules/astnTyped/esc/index.d.ts +0 -1
  176. package/dist/modules/astnTyped/esc/index.js +0 -17
  177. package/dist/modules/astnTyped/index.d.ts +0 -1
  178. package/dist/modules/astnTyped/index.js +0 -17
  179. package/dist/modules/etc/esc/implementation/index.d.ts +0 -1
  180. package/dist/modules/etc/esc/implementation/index.js +0 -17
  181. package/dist/modules/etc/esc/implementation/runProgram.d.ts +0 -2
  182. package/dist/modules/etc/esc/implementation/runProgram.js +0 -34
  183. package/dist/modules/etc/esc/index.d.ts +0 -1
  184. package/dist/modules/etc/esc/index.js +0 -17
  185. package/dist/modules/etc/index.d.ts +0 -2
  186. package/dist/modules/etc/index.js +0 -18
  187. package/dist/modules/etc/interface/index.d.ts +0 -4
  188. package/dist/modules/etc/interface/index.js +0 -20
  189. package/dist/modules/etc/interface/interfaces/CreateStreamConsumer.d.ts +0 -2
  190. package/dist/modules/etc/interface/interfaces/CreateStreamConsumer.js +0 -2
  191. package/dist/modules/etc/interface/interfaces/IResourceProvider.d.ts +0 -5
  192. package/dist/modules/etc/interface/interfaces/IResourceProvider.js +0 -2
  193. package/dist/modules/etc/interface/interfaces/IStreamConsumer.d.ts +0 -4
  194. package/dist/modules/etc/interface/interfaces/IStreamConsumer.js +0 -2
  195. package/dist/modules/etc/interface/types/DiagnosticSeverity.d.ts +0 -1
  196. package/dist/modules/etc/interface/types/DiagnosticSeverity.js +0 -2
  197. package/dist/modules/etc/interface/types/RetrievalError.d.ts +0 -6
  198. package/dist/modules/etc/interface/types/RetrievalError.js +0 -2
  199. package/dist/modules/grammar/index.d.ts +0 -1
  200. package/dist/modules/grammar/index.js +0 -17
  201. package/dist/modules/grammar/interface/index.d.ts +0 -11
  202. package/dist/modules/grammar/interface/index.js +0 -27
  203. package/dist/modules/grammar/interface/interfaces/CreateAnnotater.d.ts +0 -3
  204. package/dist/modules/grammar/interface/interfaces/CreateAnnotater.js +0 -2
  205. package/dist/modules/grammar/interface/interfaces/IAnnotatedHandler.d.ts +0 -55
  206. package/dist/modules/grammar/interface/interfaces/IAnnotatedHandler.js +0 -2
  207. package/dist/modules/grammar/interface/interfaces/IContentParser.d.ts +0 -5
  208. package/dist/modules/grammar/interface/interfaces/IContentParser.js +0 -2
  209. package/dist/modules/grammar/interface/interfaces/IStructureHandler.d.ts +0 -16
  210. package/dist/modules/grammar/interface/interfaces/IStructureHandler.js +0 -2
  211. package/dist/modules/grammar/interface/interfaces/IStructureParser.d.ts +0 -5
  212. package/dist/modules/grammar/interface/interfaces/IStructureParser.js +0 -2
  213. package/dist/modules/grammar/interface/interfaces/ITreeHandler.d.ts +0 -54
  214. package/dist/modules/grammar/interface/interfaces/ITreeHandler.js +0 -2
  215. package/dist/modules/grammar/interface/types/AnnotatedToken.d.ts +0 -4
  216. package/dist/modules/grammar/interface/types/AnnotatedToken.js +0 -2
  217. package/dist/modules/grammar/interface/types/ContentToken.d.ts +0 -15
  218. package/dist/modules/grammar/interface/types/ContentToken.js +0 -2
  219. package/dist/modules/grammar/interface/types/StackContext.d.ts +0 -7
  220. package/dist/modules/grammar/interface/types/StackContext.js +0 -2
  221. package/dist/modules/grammar/interface/types/StructureToken.d.ts +0 -4
  222. package/dist/modules/grammar/interface/types/StructureToken.js +0 -2
  223. package/dist/modules/grammar/interface/types/tokens.d.ts +0 -25
  224. package/dist/modules/grammar/interface/types/tokens.js +0 -2
  225. package/dist/modules/schema/esc/implementation/createASTNSchemaBuilder.generated.d.ts +0 -3
  226. package/dist/modules/schema/esc/implementation/createASTNSchemaBuilder.generated.js +0 -36
  227. package/dist/modules/schema/esc/implementation/createASTNSchemaDeserializer.generated.d.ts +0 -4
  228. package/dist/modules/schema/esc/implementation/createASTNSchemaDeserializer.generated.js +0 -448
  229. package/dist/modules/schema/esc/implementation/index.d.ts +0 -3
  230. package/dist/modules/schema/esc/implementation/index.js +0 -19
  231. package/dist/modules/schema/esc/implementation/serializeSchema.generated.d.ts +0 -3
  232. package/dist/modules/schema/esc/implementation/serializeSchema.generated.js +0 -193
  233. package/dist/modules/schema/index.d.ts +0 -2
  234. package/dist/modules/schema/index.js +0 -18
  235. package/dist/modules/schema/interface/index.d.ts +0 -2
  236. package/dist/modules/schema/interface/index.js +0 -18
  237. package/dist/modules/schema/interface/interfaces/generated_CreateASTNSchemaDeserializer.d.ts +0 -4
  238. package/dist/modules/schema/interface/interfaces/generated_CreateASTNSchemaDeserializer.js +0 -2
  239. package/dist/modules/schema/interface/types/generated_schema.d.ts +0 -44
  240. package/dist/modules/schema/interface/types/generated_schema.js +0 -2
  241. package/dist/modules/tokenLevel/index.d.ts +0 -1
  242. package/dist/modules/tokenLevel/index.js +0 -17
  243. package/dist/modules/tokenLevel/interface/index.d.ts +0 -5
  244. package/dist/modules/tokenLevel/interface/index.js +0 -21
  245. package/dist/modules/tokenLevel/interface/interfaces/FormatInstruction.d.ts +0 -8
  246. package/dist/modules/tokenLevel/interface/interfaces/FormatInstruction.js +0 -2
  247. package/dist/modules/tokenLevel/interface/interfaces/IFormatInstructionWriter.d.ts +0 -5
  248. package/dist/modules/tokenLevel/interface/interfaces/IFormatInstructionWriter.js +0 -2
  249. package/dist/modules/tokenLevel/interface/interfaces/Location.d.ts +0 -5
  250. package/dist/modules/tokenLevel/interface/interfaces/Location.js +0 -2
  251. package/dist/modules/tokenLevel/interface/interfaces/Range.d.ts +0 -18
  252. package/dist/modules/tokenLevel/interface/interfaces/Range.js +0 -2
  253. package/dist/modules/tokenLevel/interface/interfaces/TokenizerAnnotationData.d.ts +0 -5
  254. package/dist/modules/tokenLevel/interface/interfaces/TokenizerAnnotationData.js +0 -2
  255. package/dist/modules/typed/index.d.ts +0 -1
  256. package/dist/modules/typed/index.js +0 -17
  257. package/dist/modules/typed/interface/index.d.ts +0 -7
  258. package/dist/modules/typed/interface/index.js +0 -24
  259. package/dist/modules/typed/interface/interfaces/CreateTreeUnmarshaller.d.ts +0 -10
  260. package/dist/modules/typed/interface/interfaces/CreateTreeUnmarshaller.js +0 -2
  261. package/dist/modules/typed/interface/interfaces/Datastore.d.ts +0 -16
  262. package/dist/modules/typed/interface/interfaces/Datastore.js +0 -2
  263. package/dist/modules/typed/interface/interfaces/IMarshallableDataset.d.ts +0 -28
  264. package/dist/modules/typed/interface/interfaces/IMarshallableDataset.js +0 -2
  265. package/dist/modules/typed/interface/interfaces/ITypedTreeHandler.d.ts +0 -79
  266. package/dist/modules/typed/interface/interfaces/ITypedTreeHandler.js +0 -2
  267. package/dist/modules/typed/interface/interfaces/InternalSchemaSpecification.d.ts +0 -3
  268. package/dist/modules/typed/interface/interfaces/InternalSchemaSpecification.js +0 -2
  269. package/dist/modules/typed/interface/interfaces/SerializationStyle.d.ts +0 -3
  270. package/dist/modules/typed/interface/interfaces/SerializationStyle.js +0 -2
  271. package/dist/modules/typed/interface/interfaces/UnmarshallError.d.ts +0 -16
  272. package/dist/modules/typed/interface/interfaces/UnmarshallError.js +0 -2
  273. package/dist/modules/typed/interface/interfaces/definitions.d.ts +0 -14
  274. package/dist/modules/typed/interface/interfaces/definitions.js +0 -2
  275. package/dist/modules/typedTokenize/index.d.ts +0 -1
  276. package/dist/modules/typedTokenize/index.js +0 -17
  277. package/dist/modules/typedTokenize/interface/index.d.ts +0 -10
  278. package/dist/modules/typedTokenize/interface/index.js +0 -26
  279. package/dist/modules/typedTokenize/interface/interfaces/ASTNUnmarshallIssue.d.ts +0 -14
  280. package/dist/modules/typedTokenize/interface/interfaces/ASTNUnmarshallIssue.js +0 -2
  281. package/dist/modules/typedTokenize/interface/interfaces/ContextSchemaIssue.d.ts +0 -10
  282. package/dist/modules/typedTokenize/interface/interfaces/ContextSchemaIssue.js +0 -2
  283. package/dist/modules/typedTokenize/interface/interfaces/ContextSchemaResult.d.ts +0 -2
  284. package/dist/modules/typedTokenize/interface/interfaces/ContextSchemaResult.js +0 -2
  285. package/dist/modules/typedTokenize/interface/interfaces/CreateASTNUnmarshaller.d.ts +0 -13
  286. package/dist/modules/typedTokenize/interface/interfaces/CreateASTNUnmarshaller.js +0 -2
  287. package/dist/modules/typedTokenize/interface/interfaces/CreateExternalSchemaLoader.d.ts +0 -6
  288. package/dist/modules/typedTokenize/interface/interfaces/CreateExternalSchemaLoader.js +0 -2
  289. package/dist/modules/typedTokenize/interface/interfaces/CreateSchemaHandler.d.ts +0 -6
  290. package/dist/modules/typedTokenize/interface/interfaces/CreateSchemaHandler.js +0 -2
  291. package/dist/modules/typedTokenize/interface/interfaces/SchemaAndSideEffects.d.ts +0 -7
  292. package/dist/modules/typedTokenize/interface/interfaces/SchemaAndSideEffects.js +0 -2
  293. package/dist/modules/typedTokenize/interface/interfaces/SchemaDeserializationError.d.ts +0 -7
  294. package/dist/modules/typedTokenize/interface/interfaces/SchemaDeserializationError.js +0 -2
  295. package/dist/modules/typedTokenize/interface/interfaces/SchemaError.d.ts +0 -7
  296. package/dist/modules/typedTokenize/interface/interfaces/SchemaError.js +0 -2
  297. package/dist/modules/typedTokenize/interface/interfaces/SchemaSchemaBuilder.d.ts +0 -4
  298. package/dist/modules/typedTokenize/interface/interfaces/SchemaSchemaBuilder.js +0 -2
@@ -1,755 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
- Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.createValueUnmarshaller = exports.defaultInitializeValue = void 0;
27
- /* eslint
28
- "@typescript-eslint/no-shadow": "off"
29
- */
30
- const pr = __importStar(require("pareto-runtime"));
31
- function createGroupContext(definition, isOuterGroup, subHandler) {
32
- const expectedElements = [];
33
- definition.properties.forEach((propDefinition, propKey) => {
34
- expectedElements.push({
35
- name: propKey,
36
- handler: subHandler,
37
- definition: propDefinition.value,
38
- });
39
- });
40
- return ["group", {
41
- elements: expectedElements,
42
- isOuterGroup: isOuterGroup,
43
- handler: subHandler,
44
- index: 0,
45
- }];
46
- }
47
- function createShorthandParsingState(groupDefinition, groupHandler) {
48
- const stateImp = {
49
- stack: [],
50
- currentContext: createGroupContext(groupDefinition, true, groupHandler),
51
- optionContext: null,
52
- };
53
- return {
54
- pushTaggedUnion: (definition, taggedUnionHandler, optionHandler) => {
55
- stateImp.optionContext = {
56
- definition: definition,
57
- taggedUnionHandler: taggedUnionHandler,
58
- optionHandler: optionHandler,
59
- };
60
- },
61
- pushGroup: (definition, handler) => {
62
- stateImp.stack.push(stateImp.currentContext);
63
- stateImp.currentContext = createGroupContext(definition, false, handler.onGroup({
64
- type: ["mixin", {}],
65
- definition: definition,
66
- }));
67
- },
68
- wrapup: (annotation, onError) => {
69
- function wrapupImp(state) {
70
- if (stateImp.optionContext !== null) {
71
- defaultInitializeValue(stateImp.optionContext.definition.value, stateImp.optionContext.optionHandler, onError);
72
- stateImp.optionContext = null;
73
- }
74
- switch (state.currentContext[0]) {
75
- case "group":
76
- const $ = state.currentContext[1];
77
- const missing = $.elements.length - $.index;
78
- if (missing > 0) {
79
- onError(["missing elements", { elements: $.elements.slice($.index).map((ee) => ee.name) }], annotation, ["error", {}]);
80
- for (let x = $.index; x !== $.elements.length; x += 1) {
81
- const ee = pr.getElement($.elements, x);
82
- defaultInitializeValue(ee.definition, ee.handler.onProperty({
83
- key: ee.name,
84
- token: null,
85
- definition: ee.definition,
86
- }), onError);
87
- }
88
- }
89
- $.handler.onClose({
90
- token: $.isOuterGroup
91
- ? {
92
- token: {},
93
- annotation: annotation,
94
- }
95
- : null,
96
- });
97
- break;
98
- default:
99
- pr.au(state.currentContext[0]);
100
- }
101
- const previousContext = state.stack.pop();
102
- if (previousContext !== undefined) {
103
- state.currentContext = previousContext;
104
- wrapupImp(state);
105
- }
106
- }
107
- wrapupImp(stateImp);
108
- },
109
- findNextValue: () => {
110
- function findNextValueImp() {
111
- if (stateImp.optionContext !== null) {
112
- const tmp = stateImp.optionContext;
113
- stateImp.optionContext = null;
114
- return {
115
- definition: tmp.definition.value,
116
- handler: tmp.optionHandler,
117
- };
118
- }
119
- switch (stateImp.currentContext[0]) {
120
- case "group":
121
- const $ = stateImp.currentContext[1];
122
- const ee = pr.getElement($.elements, $.index);
123
- $.index++;
124
- if (ee !== undefined) {
125
- return {
126
- definition: ee.definition,
127
- handler: ee.handler.onProperty({
128
- token: null,
129
- key: ee.name,
130
- definition: ee.definition,
131
- }),
132
- };
133
- }
134
- else {
135
- //end of array of properties
136
- $.handler.onClose({
137
- token: null,
138
- });
139
- const previousContext = stateImp.stack.pop();
140
- if (previousContext === undefined) {
141
- return null;
142
- }
143
- else {
144
- stateImp.currentContext = previousContext;
145
- return findNextValueImp();
146
- }
147
- }
148
- default:
149
- return pr.au(stateImp.currentContext[0]);
150
- }
151
- }
152
- return findNextValueImp();
153
- },
154
- };
155
- }
156
- function wrap(handler, onMissing) {
157
- return {
158
- exists: handler,
159
- missing: () => {
160
- onMissing();
161
- },
162
- };
163
- }
164
- function createUnexpectedArrayHandler(message, annotation, onError, dummyHandlers) {
165
- onError(message, annotation, ["error", {}]);
166
- return dummyHandlers.array();
167
- }
168
- function createUnexpectedObjectHandler(message, annotation, onError, dummyHandlers) {
169
- onError(message, annotation, ["error", {}]);
170
- return dummyHandlers.object();
171
- }
172
- function createUnexpectedTaggedUnionHandler(message, annotation, onError, dummyHandlers) {
173
- onError(message, annotation, ["error", {}]);
174
- return dummyHandlers.taggedUnion();
175
- }
176
- function createUnexpectedStringHandler(message, annotation, onError, dummyHandlers) {
177
- onError(message, annotation, ["error", {}]);
178
- }
179
- function defaultInitializeValue(definition, handler, onError) {
180
- switch (definition.type[0]) {
181
- case "dictionary": {
182
- handler.onDictionary({
183
- token: null,
184
- definition: definition.type[1],
185
- }).onClose({
186
- token: null,
187
- });
188
- break;
189
- }
190
- case "list": {
191
- handler.onList({
192
- token: null,
193
- definition: definition.type[1],
194
- }).onClose({
195
- token: null,
196
- });
197
- break;
198
- }
199
- case "type reference": {
200
- const $e = definition.type[1];
201
- defaultInitializeValue($e.type.get().value, handler.onTypeReference({
202
- definition: $e,
203
- }), onError);
204
- break;
205
- }
206
- case "tagged union": {
207
- const $e = definition.type[1];
208
- const defOpt = $e["default option"].get();
209
- defaultInitializeValue(defOpt.value, handler.onTaggedUnion({
210
- definition: $e,
211
- token: null,
212
- }).onOption({
213
- name: $e["default option"].name,
214
- token: null,
215
- definition: defOpt,
216
- }), onError);
217
- break;
218
- }
219
- case "simple string": {
220
- const $e = definition.type[1];
221
- handler.onSimpleString({
222
- value: $e["default value"],
223
- token: null,
224
- definition: $e,
225
- });
226
- break;
227
- }
228
- case "multiline string": {
229
- const $e = definition.type[1];
230
- handler.onMultilineString({
231
- token: null,
232
- definition: $e,
233
- });
234
- break;
235
- }
236
- case "group": {
237
- const $e = definition.type[1];
238
- const groupHandler = handler.onGroup({
239
- type: ["omitted", {}],
240
- definition: $e,
241
- });
242
- $e.properties.forEach((propDef, key) => {
243
- defaultInitializeValue(propDef.value, groupHandler.onProperty({
244
- key: key,
245
- token: null,
246
- definition: propDef.value,
247
- }), onError);
248
- });
249
- break;
250
- }
251
- default:
252
- pr.au(definition.type[0]);
253
- }
254
- }
255
- exports.defaultInitializeValue = defaultInitializeValue;
256
- function createValueUnmarshaller(definition, handler, onError, flagNonDefaultPropertiesFound, mixedIn, dummyHandlers) {
257
- function defInitializeValue() {
258
- defaultInitializeValue(definition, handler, onError);
259
- }
260
- switch (definition.type[0]) {
261
- case "dictionary": {
262
- const $d = definition.type[1];
263
- return {
264
- array: ($e) => {
265
- defInitializeValue();
266
- return createUnexpectedArrayHandler(["expected a dictionary", {}], $e.token.annotation, onError, dummyHandlers);
267
- },
268
- object: ($e) => {
269
- const foundKeys = [];
270
- if ($e.token.token.type[0] !== "dictionary") {
271
- onError(["object is not a dictionary", {}], $e.token.annotation, ["warning", {}]);
272
- }
273
- const dictHandler = handler.onDictionary({
274
- token: {
275
- token: $e.token.token,
276
- annotation: $e.token.annotation,
277
- },
278
- definition: $d,
279
- });
280
- return {
281
- property: ($p) => {
282
- if ($p.token.token.wrapping[0] !== "quote") {
283
- onError(["entry key does not have quotes", {}], $p.token.annotation, ["warning", {}]);
284
- }
285
- if (foundKeys.includes($p.token.token.value)) {
286
- onError(["double key", {}], $p.token.annotation, ["error", {}]);
287
- }
288
- foundKeys.push($p.token.token.value);
289
- flagNonDefaultPropertiesFound();
290
- const entryHandler = dictHandler.onEntry({
291
- token: {
292
- token: $p.token.token,
293
- annotation: $p.token.annotation,
294
- },
295
- });
296
- return wrap(createValueUnmarshaller($d.value, entryHandler, onError, () => { }, null, dummyHandlers), () => {
297
- defaultInitializeValue($d.value, entryHandler, onError);
298
- });
299
- },
300
- onEnd: ($ee) => {
301
- dictHandler.onClose({
302
- token: {
303
- token: {},
304
- annotation: $ee.token.annotation,
305
- },
306
- });
307
- },
308
- };
309
- },
310
- taggedUnion: ($e) => {
311
- defInitializeValue();
312
- return createUnexpectedTaggedUnionHandler(["expected a dictionary", {}], $e.token.annotation, onError, dummyHandlers);
313
- },
314
- simpleString: ($e) => {
315
- defInitializeValue();
316
- return createUnexpectedStringHandler(["expected a dictionary", {}], $e.token.annotation, onError, dummyHandlers);
317
- },
318
- multilineString: ($e) => {
319
- defInitializeValue();
320
- return createUnexpectedStringHandler(["expected a dictionary", {}], $e.token.annotation, onError, dummyHandlers);
321
- },
322
- };
323
- }
324
- case "list": {
325
- const $d = definition.type[1];
326
- return {
327
- array: ($e) => {
328
- if ($e.token.token.type[0] !== "list") {
329
- onError(["array is not a list", {}], $e.token.annotation, ["error", {}]);
330
- }
331
- const listHandler = handler.onList({
332
- token: {
333
- token: $e.token.token,
334
- annotation: $e.token.annotation,
335
- },
336
- definition: $d,
337
- });
338
- return {
339
- element: ($) => {
340
- flagNonDefaultPropertiesFound();
341
- // const entry = collBuilder.createEntry(_errorMessage => {
342
- // //onError(errorMessage, svData)
343
- // })
344
- const elementSideEffects = listHandler.onElement({});
345
- return createValueUnmarshaller($d.value, elementSideEffects, onError, () => { }, null, dummyHandlers);
346
- },
347
- onEnd: ($) => {
348
- listHandler.onClose({
349
- token: {
350
- token: {},
351
- annotation: $.token.annotation,
352
- },
353
- });
354
- },
355
- };
356
- },
357
- object: ($e) => {
358
- defInitializeValue();
359
- return createUnexpectedObjectHandler(["expected a list", {}], $e.token.annotation, onError, dummyHandlers);
360
- },
361
- taggedUnion: ($e) => {
362
- defInitializeValue();
363
- return createUnexpectedTaggedUnionHandler(["expected a list", {}], $e.token.annotation, onError, dummyHandlers);
364
- },
365
- simpleString: ($e) => {
366
- defInitializeValue();
367
- return createUnexpectedStringHandler(["expected a list", {}], $e.token.annotation, onError, dummyHandlers);
368
- },
369
- multilineString: ($e) => {
370
- defInitializeValue();
371
- return createUnexpectedStringHandler(["expected a list", {}], $e.token.annotation, onError, dummyHandlers);
372
- },
373
- };
374
- }
375
- case "type reference": {
376
- const $e = definition.type[1];
377
- return createValueUnmarshaller($e.type.get().value, handler.onTypeReference({
378
- definition: $e,
379
- }), onError, flagNonDefaultPropertiesFound, mixedIn, dummyHandlers);
380
- }
381
- case "tagged union": {
382
- const $d = definition.type[1];
383
- function doOption(optionToken, definition, tuHandler, unknownCallback, knownCallback) {
384
- return definition.options.find(optionToken.token.value, (optionDefinition) => {
385
- if (optionDefinition !== definition["default option"].get()) {
386
- flagNonDefaultPropertiesFound();
387
- }
388
- return knownCallback(optionDefinition, tuHandler.onOption({
389
- definition: optionDefinition,
390
- name: optionToken.token.value,
391
- token: optionToken,
392
- }));
393
- }, (keys) => {
394
- onError(["unknown option", {
395
- "known options": keys,
396
- }], optionToken.annotation, ["error", {}]);
397
- defaultInitializeValue(definition["default option"].get().value, tuHandler.onUnexpectedOption({
398
- defaultOption: definition["default option"].name,
399
- expectedOptions: keys,
400
- token: optionToken,
401
- //stateGroupDefinition: $e,
402
- }), onError);
403
- return unknownCallback();
404
- });
405
- }
406
- return {
407
- array: ($e) => {
408
- defInitializeValue();
409
- return createUnexpectedArrayHandler(["expected a tagged union", {}], $e.token.annotation, onError, dummyHandlers);
410
- },
411
- object: ($e) => {
412
- defInitializeValue();
413
- return createUnexpectedObjectHandler(["expected a tagged union", {}], $e.token.annotation, onError, dummyHandlers);
414
- },
415
- taggedUnion: ($tu) => {
416
- const tuHandler = handler.onTaggedUnion({
417
- definition: $d,
418
- token: $tu.token,
419
- });
420
- return {
421
- option: ($e) => {
422
- return doOption($e.token, $d, tuHandler, () => dummyHandlers.requiredValue(), (option, subHandler) => {
423
- return wrap(createValueUnmarshaller(option.value, subHandler, onError, flagNonDefaultPropertiesFound, mixedIn, dummyHandlers), () => {
424
- defaultInitializeValue(option.value, subHandler, onError);
425
- });
426
- });
427
- },
428
- missingOption: () => {
429
- onError(["missing option", {}], $tu.token.annotation, ["error", {}]);
430
- defaultInitializeValue($d["default option"].get().value, tuHandler.onOption({
431
- name: $d["default option"].name,
432
- token: null,
433
- definition: $d["default option"].get(),
434
- }), onError);
435
- },
436
- end: ($) => {
437
- tuHandler.onEnd({});
438
- },
439
- };
440
- },
441
- simpleString: ($e) => {
442
- if (mixedIn !== null) {
443
- if ($e.token.token.wrapping[0] === "apostrophe") {
444
- const tuHandler = handler.onTaggedUnion({
445
- definition: $d,
446
- token: null,
447
- });
448
- return doOption($e.token, $d, tuHandler, () => { }, (option, subHandler) => {
449
- mixedIn.pushTaggedUnion(option, tuHandler, subHandler);
450
- });
451
- }
452
- else {
453
- defInitializeValue();
454
- return createUnexpectedStringHandler(["expected a tagged union", {}], $e.token.annotation, onError, dummyHandlers);
455
- }
456
- }
457
- else {
458
- defInitializeValue();
459
- return createUnexpectedStringHandler(["expected a tagged union", {}], $e.token.annotation, onError, dummyHandlers);
460
- }
461
- },
462
- multilineString: ($e) => {
463
- defInitializeValue();
464
- return createUnexpectedStringHandler(["expected a tagged union", {}], $e.token.annotation, onError, dummyHandlers);
465
- },
466
- };
467
- }
468
- case "simple string": {
469
- const $d = definition.type[1];
470
- const error = $d.quoted
471
- ? ["expected an unquoted string", {}]
472
- : ["expected a quoted string", {}];
473
- return {
474
- array: ($e) => {
475
- defInitializeValue();
476
- return createUnexpectedArrayHandler(error, $e.token.annotation, onError, dummyHandlers);
477
- },
478
- object: ($e) => {
479
- defInitializeValue();
480
- return createUnexpectedObjectHandler(error, $e.token.annotation, onError, dummyHandlers);
481
- },
482
- taggedUnion: ($e) => {
483
- defInitializeValue();
484
- return createUnexpectedTaggedUnionHandler(error, $e.token.annotation, onError, dummyHandlers);
485
- },
486
- multilineString: ($e) => {
487
- defInitializeValue();
488
- return createUnexpectedStringHandler(error, $e.token.annotation, onError, dummyHandlers);
489
- },
490
- simpleString: ($e) => {
491
- const value = $e.token.token.value;
492
- if (value !== $d["default value"]) {
493
- flagNonDefaultPropertiesFound();
494
- }
495
- handler.onSimpleString({
496
- value: $e.token.token.value,
497
- token: {
498
- token: $e.token.token,
499
- annotation: $e.token.annotation,
500
- },
501
- definition: $d,
502
- // valueBuilder: valueBuilder,
503
- // $e
504
- });
505
- switch ($e.token.token.wrapping[0]) {
506
- case "none": {
507
- if ($d.quoted) {
508
- onError(["value should have quotes", {}], $e.token.annotation, ["warning", {}]);
509
- }
510
- break;
511
- }
512
- case "quote": {
513
- if (!$d.quoted) {
514
- onError(["value should not have quotes", {}], $e.token.annotation, ["warning", {}]);
515
- }
516
- break;
517
- }
518
- case "apostrophe": {
519
- onError($d.quoted ? ["value should have quotes instead of apostrophes", {}] : ["value should not have apostrophes", {}], $e.token.annotation, ["warning", {}]);
520
- break;
521
- }
522
- default:
523
- pr.au($e.token.token.wrapping[0]);
524
- }
525
- },
526
- };
527
- }
528
- case "multiline string": {
529
- const $d = definition.type[1];
530
- return {
531
- array: ($e) => {
532
- defInitializeValue();
533
- return createUnexpectedArrayHandler(["expected a multiline string", {}], $e.token.annotation, onError, dummyHandlers);
534
- },
535
- object: ($e) => {
536
- defInitializeValue();
537
- return createUnexpectedObjectHandler(["expected a multiline string", {}], $e.token.annotation, onError, dummyHandlers);
538
- },
539
- taggedUnion: ($e) => {
540
- defInitializeValue();
541
- return createUnexpectedTaggedUnionHandler(["expected a multiline string", {}], $e.token.annotation, onError, dummyHandlers);
542
- },
543
- multilineString: ($e) => {
544
- if ($e.token.token.lines.length > 1) {
545
- flagNonDefaultPropertiesFound();
546
- }
547
- else {
548
- if ($e.token.token.lines.length === 1 && pr.getElement($e.token.token.lines, 0) !== "") {
549
- flagNonDefaultPropertiesFound();
550
- }
551
- }
552
- handler.onMultilineString({
553
- token: {
554
- token: $e.token.token,
555
- annotation: $e.token.annotation,
556
- },
557
- definition: $d,
558
- });
559
- },
560
- simpleString: ($e) => {
561
- defInitializeValue();
562
- return createUnexpectedStringHandler(["expected a multiline string", {}], $e.token.annotation, onError, dummyHandlers);
563
- },
564
- };
565
- }
566
- case "group": {
567
- const $d = definition.type[1];
568
- return {
569
- array: ($e) => {
570
- if ($e.token.token.type[0] !== "shorthand group") {
571
- if (mixedIn === null) {
572
- onError(["expected a group", {}], $e.token.annotation, ["error", {}]);
573
- defInitializeValue();
574
- return dummyHandlers.array();
575
- }
576
- else {
577
- return mixedIn.pushGroup($d, handler).array($e);
578
- }
579
- }
580
- else {
581
- //start a shorthand group
582
- const state = createShorthandParsingState($d, handler.onGroup({
583
- type: ["shorthand", {
584
- token: $e.token.token,
585
- annotation: $e.token.annotation,
586
- }],
587
- definition: $d,
588
- }));
589
- function createUnmarshallerForNextValue() {
590
- const nextValue = state.findNextValue();
591
- if (nextValue === null) {
592
- return {
593
- array: ($) => {
594
- onError(["superfluous element", {}], $.token.annotation, ["error", {}]);
595
- return dummyHandlers.array();
596
- },
597
- object: ($) => {
598
- onError(["superfluous element", {}], $.token.annotation, ["error", {}]);
599
- return dummyHandlers.object();
600
- },
601
- taggedUnion: ($) => {
602
- onError(["superfluous element", {}], $.token.annotation, ["error", {}]);
603
- return dummyHandlers.taggedUnion();
604
- },
605
- simpleString: ($) => {
606
- onError(["superfluous element", {}], $.token.annotation, ["error", {}]);
607
- },
608
- multilineString: ($) => {
609
- onError(["superfluous element", {}], $.token.annotation, ["error", {}]);
610
- },
611
- };
612
- }
613
- else {
614
- return createValueUnmarshaller(nextValue.definition, nextValue.handler, onError, flagNonDefaultPropertiesFound, {
615
- pushGroup: (definition, handler) => {
616
- state.pushGroup(definition, handler);
617
- return createUnmarshallerForNextValue();
618
- },
619
- pushTaggedUnion: (definition, taggedUnionHandler, optionHandler) => {
620
- state.pushTaggedUnion(definition, taggedUnionHandler, optionHandler);
621
- },
622
- }, dummyHandlers);
623
- }
624
- }
625
- return {
626
- element: () => {
627
- return createUnmarshallerForNextValue();
628
- },
629
- onEnd: ($e) => {
630
- state.wrapup($e.token.annotation, onError);
631
- },
632
- };
633
- }
634
- },
635
- object: ($e) => {
636
- if ($e.token.token.type[0] !== "verbose group") {
637
- if (mixedIn === null) {
638
- onError(["expected a group", {}], $e.token.annotation, ["error", {}]);
639
- defInitializeValue();
640
- return dummyHandlers.object();
641
- }
642
- else {
643
- return mixedIn.pushGroup($d, handler).object($e);
644
- }
645
- }
646
- else {
647
- //start a verbose group
648
- const groupHandler = handler.onGroup({
649
- type: ["verbose", {
650
- annotation: $e.token.annotation,
651
- token: $e.token.token,
652
- }],
653
- definition: $d,
654
- });
655
- const processedProperties = {};
656
- return {
657
- property: ($p) => {
658
- const key = $p.token.token.value;
659
- if ($p.token.token.wrapping[0] !== "apostrophe") {
660
- onError(["property key does not have apostrophes", {}], $p.token.annotation, ["warning", {}]);
661
- }
662
- return $d.properties.find(key, (propertyDefinition) => {
663
- const pp = {
664
- annotation: $p.token.annotation,
665
- isNonDefault: false,
666
- };
667
- processedProperties[key] = pp;
668
- const propertyHandler = groupHandler.onProperty({
669
- key: $p.token.token.value,
670
- token: $p.token,
671
- definition: propertyDefinition.value,
672
- });
673
- return wrap(createValueUnmarshaller(propertyDefinition.value, propertyHandler, onError, () => {
674
- pp.isNonDefault = true;
675
- }, null, dummyHandlers), () => {
676
- defaultInitializeValue(propertyDefinition.value, propertyHandler, onError);
677
- });
678
- }, (keys) => {
679
- onError(["unknown property", { "known properties": keys }], $p.token.annotation, ["error", {}]);
680
- groupHandler.onUnexpectedProperty({
681
- token: $p.token,
682
- groupDefinition: $d,
683
- expectedProperties: keys,
684
- });
685
- return dummyHandlers.requiredValue();
686
- });
687
- },
688
- onEnd: ($$) => {
689
- let hadNonDefaultProperties = false;
690
- $d.properties.forEach((propDefinition, propKey) => {
691
- const pp = processedProperties[propKey];
692
- if (pp === undefined) {
693
- defaultInitializeValue(propDefinition.value, groupHandler.onProperty({
694
- key: propKey,
695
- token: null,
696
- definition: propDefinition.value,
697
- }), onError);
698
- }
699
- else {
700
- if (!pp.isNonDefault) {
701
- onError(["property has default value, remove", {}], pp.annotation, ["warning", {}]);
702
- }
703
- else {
704
- hadNonDefaultProperties = true;
705
- }
706
- }
707
- });
708
- if (hadNonDefaultProperties) {
709
- flagNonDefaultPropertiesFound();
710
- }
711
- groupHandler.onClose({
712
- token: {
713
- token: {},
714
- annotation: $$.token.annotation,
715
- },
716
- });
717
- },
718
- };
719
- }
720
- },
721
- taggedUnion: ($e) => {
722
- if (mixedIn === null) {
723
- onError(["expected a group", {}], $e.token.annotation, ["error", {}]);
724
- defInitializeValue();
725
- return dummyHandlers.taggedUnion();
726
- }
727
- else {
728
- return mixedIn.pushGroup($d, handler).taggedUnion($e);
729
- }
730
- },
731
- simpleString: ($e) => {
732
- if (mixedIn === null) {
733
- onError(["expected a group", {}], $e.token.annotation, ["error", {}]);
734
- defInitializeValue();
735
- }
736
- else {
737
- return mixedIn.pushGroup($d, handler).simpleString($e);
738
- }
739
- },
740
- multilineString: ($e) => {
741
- if (mixedIn === null) {
742
- onError(["expected a group", {}], $e.token.annotation, ["error", {}]);
743
- defInitializeValue();
744
- }
745
- else {
746
- mixedIn.pushGroup($d, handler).multilineString($e);
747
- }
748
- },
749
- };
750
- }
751
- default:
752
- return pr.au(definition.type[0]);
753
- }
754
- }
755
- exports.createValueUnmarshaller = createValueUnmarshaller;