@rcrsr/rill 0.8.6 → 0.10.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 (191) hide show
  1. package/dist/ast-nodes.d.ts +189 -49
  2. package/dist/ast-nodes.d.ts.map +1 -1
  3. package/dist/ast-unions.d.ts +1 -1
  4. package/dist/ast-unions.d.ts.map +1 -1
  5. package/dist/constants.d.ts +14 -0
  6. package/dist/constants.d.ts.map +1 -0
  7. package/dist/constants.js +30 -0
  8. package/dist/constants.js.map +1 -0
  9. package/dist/error-classes.d.ts +3 -1
  10. package/dist/error-classes.d.ts.map +1 -1
  11. package/dist/error-classes.js +11 -5
  12. package/dist/error-classes.js.map +1 -1
  13. package/dist/error-registry.d.ts.map +1 -1
  14. package/dist/error-registry.js +313 -11
  15. package/dist/error-registry.js.map +1 -1
  16. package/dist/ext/crypto/index.d.ts +2 -1
  17. package/dist/ext/crypto/index.d.ts.map +1 -1
  18. package/dist/ext/crypto/index.js +7 -0
  19. package/dist/ext/crypto/index.js.map +1 -1
  20. package/dist/ext/exec/index.d.ts +2 -1
  21. package/dist/ext/exec/index.d.ts.map +1 -1
  22. package/dist/ext/exec/index.js +6 -0
  23. package/dist/ext/exec/index.js.map +1 -1
  24. package/dist/ext/fetch/index.d.ts +2 -1
  25. package/dist/ext/fetch/index.d.ts.map +1 -1
  26. package/dist/ext/fetch/index.js +6 -0
  27. package/dist/ext/fetch/index.js.map +1 -1
  28. package/dist/ext/fs/index.d.ts +2 -1
  29. package/dist/ext/fs/index.d.ts.map +1 -1
  30. package/dist/ext/fs/index.js +3 -0
  31. package/dist/ext/fs/index.js.map +1 -1
  32. package/dist/ext/kv/index.d.ts +2 -1
  33. package/dist/ext/kv/index.d.ts.map +1 -1
  34. package/dist/ext/kv/index.js +5 -1
  35. package/dist/ext/kv/index.js.map +1 -1
  36. package/dist/generated/introspection-data.d.ts +1 -1
  37. package/dist/generated/introspection-data.d.ts.map +1 -1
  38. package/dist/generated/introspection-data.js +194 -185
  39. package/dist/generated/introspection-data.js.map +1 -1
  40. package/dist/generated/version-data.d.ts +1 -1
  41. package/dist/generated/version-data.d.ts.map +1 -1
  42. package/dist/generated/version-data.js +3 -3
  43. package/dist/generated/version-data.js.map +1 -1
  44. package/dist/highlight-map.d.ts.map +1 -1
  45. package/dist/highlight-map.js +8 -2
  46. package/dist/highlight-map.js.map +1 -1
  47. package/dist/index.d.ts +2 -1
  48. package/dist/index.d.ts.map +1 -1
  49. package/dist/index.js +5 -1
  50. package/dist/index.js.map +1 -1
  51. package/dist/lexer/operators.d.ts.map +1 -1
  52. package/dist/lexer/operators.js +0 -2
  53. package/dist/lexer/operators.js.map +1 -1
  54. package/dist/lexer/readers.d.ts +18 -1
  55. package/dist/lexer/readers.d.ts.map +1 -1
  56. package/dist/lexer/readers.js +55 -0
  57. package/dist/lexer/readers.js.map +1 -1
  58. package/dist/parser/helpers.d.ts +8 -13
  59. package/dist/parser/helpers.d.ts.map +1 -1
  60. package/dist/parser/helpers.js +42 -35
  61. package/dist/parser/helpers.js.map +1 -1
  62. package/dist/parser/index.d.ts +1 -0
  63. package/dist/parser/index.d.ts.map +1 -1
  64. package/dist/parser/index.js +1 -0
  65. package/dist/parser/index.js.map +1 -1
  66. package/dist/parser/parser-collect.d.ts.map +1 -1
  67. package/dist/parser/parser-collect.js +34 -5
  68. package/dist/parser/parser-collect.js.map +1 -1
  69. package/dist/parser/parser-control.d.ts +1 -1
  70. package/dist/parser/parser-control.d.ts.map +1 -1
  71. package/dist/parser/parser-control.js +11 -2
  72. package/dist/parser/parser-control.js.map +1 -1
  73. package/dist/parser/parser-expr.d.ts +3 -1
  74. package/dist/parser/parser-expr.d.ts.map +1 -1
  75. package/dist/parser/parser-expr.js +377 -100
  76. package/dist/parser/parser-expr.js.map +1 -1
  77. package/dist/parser/parser-extract.d.ts +3 -5
  78. package/dist/parser/parser-extract.d.ts.map +1 -1
  79. package/dist/parser/parser-extract.js +37 -69
  80. package/dist/parser/parser-extract.js.map +1 -1
  81. package/dist/parser/parser-functions.d.ts +2 -2
  82. package/dist/parser/parser-functions.d.ts.map +1 -1
  83. package/dist/parser/parser-functions.js +112 -36
  84. package/dist/parser/parser-functions.js.map +1 -1
  85. package/dist/parser/parser-literals.d.ts +5 -4
  86. package/dist/parser/parser-literals.d.ts.map +1 -1
  87. package/dist/parser/parser-literals.js +316 -47
  88. package/dist/parser/parser-literals.js.map +1 -1
  89. package/dist/parser/parser-script.d.ts.map +1 -1
  90. package/dist/parser/parser-script.js +25 -12
  91. package/dist/parser/parser-script.js.map +1 -1
  92. package/dist/parser/parser-shape.d.ts +13 -0
  93. package/dist/parser/parser-shape.d.ts.map +1 -0
  94. package/dist/parser/parser-shape.js +72 -0
  95. package/dist/parser/parser-shape.js.map +1 -0
  96. package/dist/parser/parser-types.d.ts +31 -0
  97. package/dist/parser/parser-types.d.ts.map +1 -0
  98. package/dist/parser/parser-types.js +78 -0
  99. package/dist/parser/parser-types.js.map +1 -0
  100. package/dist/parser/parser-variables.d.ts.map +1 -1
  101. package/dist/parser/parser-variables.js +10 -1
  102. package/dist/parser/parser-variables.js.map +1 -1
  103. package/dist/runtime/core/callable.d.ts +27 -22
  104. package/dist/runtime/core/callable.d.ts.map +1 -1
  105. package/dist/runtime/core/callable.js +30 -26
  106. package/dist/runtime/core/callable.js.map +1 -1
  107. package/dist/runtime/core/context.d.ts.map +1 -1
  108. package/dist/runtime/core/context.js +8 -8
  109. package/dist/runtime/core/context.js.map +1 -1
  110. package/dist/runtime/core/equals.d.ts.map +1 -1
  111. package/dist/runtime/core/equals.js +179 -30
  112. package/dist/runtime/core/equals.js.map +1 -1
  113. package/dist/runtime/core/eval/base.d.ts +2 -2
  114. package/dist/runtime/core/eval/base.d.ts.map +1 -1
  115. package/dist/runtime/core/eval/evaluator.d.ts.map +1 -1
  116. package/dist/runtime/core/eval/evaluator.js +3 -1
  117. package/dist/runtime/core/eval/evaluator.js.map +1 -1
  118. package/dist/runtime/core/eval/index.d.ts +18 -3
  119. package/dist/runtime/core/eval/index.d.ts.map +1 -1
  120. package/dist/runtime/core/eval/index.js +22 -2
  121. package/dist/runtime/core/eval/index.js.map +1 -1
  122. package/dist/runtime/core/eval/mixins/annotations.d.ts.map +1 -1
  123. package/dist/runtime/core/eval/mixins/annotations.js +14 -8
  124. package/dist/runtime/core/eval/mixins/annotations.js.map +1 -1
  125. package/dist/runtime/core/eval/mixins/closures.d.ts +0 -2
  126. package/dist/runtime/core/eval/mixins/closures.d.ts.map +1 -1
  127. package/dist/runtime/core/eval/mixins/closures.js +341 -105
  128. package/dist/runtime/core/eval/mixins/closures.js.map +1 -1
  129. package/dist/runtime/core/eval/mixins/collections.d.ts.map +1 -1
  130. package/dist/runtime/core/eval/mixins/collections.js +65 -25
  131. package/dist/runtime/core/eval/mixins/collections.js.map +1 -1
  132. package/dist/runtime/core/eval/mixins/control-flow.d.ts.map +1 -1
  133. package/dist/runtime/core/eval/mixins/control-flow.js +21 -17
  134. package/dist/runtime/core/eval/mixins/control-flow.js.map +1 -1
  135. package/dist/runtime/core/eval/mixins/conversion.d.ts +30 -0
  136. package/dist/runtime/core/eval/mixins/conversion.d.ts.map +1 -0
  137. package/dist/runtime/core/eval/mixins/conversion.js +212 -0
  138. package/dist/runtime/core/eval/mixins/conversion.js.map +1 -0
  139. package/dist/runtime/core/eval/mixins/core.d.ts.map +1 -1
  140. package/dist/runtime/core/eval/mixins/core.js +101 -32
  141. package/dist/runtime/core/eval/mixins/core.js.map +1 -1
  142. package/dist/runtime/core/eval/mixins/extraction.d.ts.map +1 -1
  143. package/dist/runtime/core/eval/mixins/extraction.js +136 -30
  144. package/dist/runtime/core/eval/mixins/extraction.js.map +1 -1
  145. package/dist/runtime/core/eval/mixins/list-dispatch.d.ts +17 -0
  146. package/dist/runtime/core/eval/mixins/list-dispatch.d.ts.map +1 -0
  147. package/dist/runtime/core/eval/mixins/list-dispatch.js +97 -0
  148. package/dist/runtime/core/eval/mixins/list-dispatch.js.map +1 -0
  149. package/dist/runtime/core/eval/mixins/literals.d.ts.map +1 -1
  150. package/dist/runtime/core/eval/mixins/literals.js +73 -83
  151. package/dist/runtime/core/eval/mixins/literals.js.map +1 -1
  152. package/dist/runtime/core/eval/mixins/types.d.ts +4 -0
  153. package/dist/runtime/core/eval/mixins/types.d.ts.map +1 -1
  154. package/dist/runtime/core/eval/mixins/types.js +323 -3
  155. package/dist/runtime/core/eval/mixins/types.js.map +1 -1
  156. package/dist/runtime/core/eval/mixins/variables.d.ts.map +1 -1
  157. package/dist/runtime/core/eval/mixins/variables.js +45 -7
  158. package/dist/runtime/core/eval/mixins/variables.js.map +1 -1
  159. package/dist/runtime/core/execute.d.ts.map +1 -1
  160. package/dist/runtime/core/execute.js +3 -16
  161. package/dist/runtime/core/execute.js.map +1 -1
  162. package/dist/runtime/core/field-descriptor.d.ts +29 -0
  163. package/dist/runtime/core/field-descriptor.d.ts.map +1 -0
  164. package/dist/runtime/core/field-descriptor.js +27 -0
  165. package/dist/runtime/core/field-descriptor.js.map +1 -0
  166. package/dist/runtime/core/types.d.ts +15 -6
  167. package/dist/runtime/core/types.d.ts.map +1 -1
  168. package/dist/runtime/core/types.js.map +1 -1
  169. package/dist/runtime/core/values.d.ts +114 -9
  170. package/dist/runtime/core/values.d.ts.map +1 -1
  171. package/dist/runtime/core/values.js +529 -43
  172. package/dist/runtime/core/values.js.map +1 -1
  173. package/dist/runtime/ext/builtins.d.ts.map +1 -1
  174. package/dist/runtime/ext/builtins.js +47 -107
  175. package/dist/runtime/ext/builtins.js.map +1 -1
  176. package/dist/runtime/ext/extensions.d.ts +21 -2
  177. package/dist/runtime/ext/extensions.d.ts.map +1 -1
  178. package/dist/runtime/ext/extensions.js.map +1 -1
  179. package/dist/runtime/index.d.ts +6 -4
  180. package/dist/runtime/index.d.ts.map +1 -1
  181. package/dist/runtime/index.js +7 -2
  182. package/dist/runtime/index.js.map +1 -1
  183. package/dist/token-types.d.ts +7 -2
  184. package/dist/token-types.d.ts.map +1 -1
  185. package/dist/token-types.js +9 -2
  186. package/dist/token-types.js.map +1 -1
  187. package/dist/value-types.d.ts +32 -1
  188. package/dist/value-types.d.ts.map +1 -1
  189. package/dist/value-types.js +1 -1
  190. package/dist/value-types.js.map +1 -1
  191. package/package.json +4 -1
@@ -1 +1 @@
1
- {"version":3,"file":"highlight-map.js","sourceRoot":"","sources":["../src/highlight-map.ts"],"names":[],"mappings":"AAkBA,+DAA+D;AAC/D,sBAAsB;AACtB,+DAA+D;AAE/D,MAAM,CAAC,MAAM,mBAAmB,GAC9B,IAAI,GAAG,CAA+B;IACpC,WAAW;IACX,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,OAAO,EAAE,MAAM,CAAC;IAEjB,WAAW;IACX,CAAC,SAAS,EAAE,SAAS,CAAC;IAEtB,WAAW;IACX,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,KAAK,EAAE,SAAS,CAAC;IAClB,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrB,CAAC,OAAO,EAAE,SAAS,CAAC;IACpB,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrB,CAAC,MAAM,EAAE,SAAS,CAAC;IACnB,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrB,CAAC,OAAO,EAAE,SAAS,CAAC;IAEpB,YAAY;IACZ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAC1B,CAAC,UAAU,EAAE,cAAc,CAAC;IAC5B,CAAC,YAAY,EAAE,cAAc,CAAC;IAC9B,CAAC,YAAY,EAAE,cAAc,CAAC;IAE9B,YAAY;IACZ,CAAC,OAAO,EAAE,UAAU,CAAC;IACrB,CAAC,eAAe,EAAE,UAAU,CAAC;IAC7B,CAAC,QAAQ,EAAE,UAAU,CAAC;IACtB,CAAC,MAAM,EAAE,UAAU,CAAC;IACpB,CAAC,OAAO,EAAE,UAAU,CAAC;IACrB,CAAC,MAAM,EAAE,UAAU,CAAC;IACpB,CAAC,OAAO,EAAE,UAAU,CAAC;IACrB,CAAC,SAAS,EAAE,UAAU,CAAC;IACvB,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,KAAK,EAAE,UAAU,CAAC;IACnB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,MAAM,EAAE,UAAU,CAAC;IACpB,CAAC,kBAAkB,EAAE,UAAU,CAAC;IAChC,CAAC,cAAc,EAAE,UAAU,CAAC;IAC5B,CAAC,SAAS,EAAE,UAAU,CAAC;IACvB,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,OAAO,EAAE,UAAU,CAAC;IACrB,CAAC,WAAW,EAAE,UAAU,CAAC;IAEzB,cAAc;IACd,CAAC,KAAK,EAAE,aAAa,CAAC;IACtB,CAAC,cAAc,EAAE,aAAa,CAAC;IAC/B,CAAC,OAAO,EAAE,aAAa,CAAC;IACxB,CAAC,UAAU,EAAE,aAAa,CAAC;IAC3B,CAAC,OAAO,EAAE,aAAa,CAAC;IAExB,WAAW;IACX,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrB,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrB,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrB,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrB,CAAC,UAAU,EAAE,SAAS,CAAC;IACvB,CAAC,UAAU,EAAE,SAAS,CAAC;IAEvB,OAAO;IACP,CAAC,mBAAmB,EAAE,MAAM,CAAC;IAE7B,uCAAuC;CACxC,CAAC,CAAC"}
1
+ {"version":3,"file":"highlight-map.js","sourceRoot":"","sources":["../src/highlight-map.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -5,8 +5,9 @@
5
5
  export { LexerError, tokenize, type TokenizeOptions } from './lexer/index.js';
6
6
  export { parse, parseWithRecovery } from './parser/index.js';
7
7
  export type { ParseResult, RecoveryErrorNode, ErrorNode } from './types.js';
8
- export { type ApplicationCallable, BreakSignal, callable, type CallableFn, type CallableParam, type CallFrame, type CaptureEvent, createRuntimeContext, createStepper, createVector, type DocumentationCoverageResult, emitExtensionEvent, type ErrorEvent, execute, type ExecutionResult, type ExecutionStepper, type ExtensionEvent, type ExtensionFactory, type ExtensionResult, type FsExtensionContract, type FunctionMetadata, hoistExtension, type HoistedExtension, type HostCallEvent, type HostFunctionDefinition, type HostFunctionParam, type FunctionReturnEvent, getCallStack, getDocumentationCoverage, getFunctions, getLanguageReference, isApplicationCallable, isTuple, isCallable, isDict, isReservedMethod, isRillIterator, isRuntimeCallable, isScriptCallable, isVector, type KvExtensionContract, type LlmExtensionContract, type SchemaEntry, type ObservabilityCallbacks, type ParamMetadata, popCallFrame, prefixFunctions, pushCallFrame, RESERVED_DICT_METHODS, ReturnSignal, type RillCallable, type RillFunctionReturnType, type RillIterator, type RillTuple, type RillValue, type RillVector, type RuntimeCallable, type RuntimeCallbacks, type RuntimeContext, type RuntimeOptions, type ScriptCallable, type StepEndEvent, type StepResult, type StepStartEvent, type VectorExtensionContract, validateHostFunctionArgs, validateReturnType, VERSION, VERSION_INFO, type VersionInfo, } from './runtime/index.js';
8
+ export { type ApplicationCallable, BreakSignal, callable, type CallableFn, type CallableParam, type CallFrame, type CaptureEvent, type ConfigFieldDescriptor, createRuntimeContext, createStepper, createTuple, createVector, type DocumentationCoverageResult, emitExtensionEvent, type ErrorEvent, execute, type ExecutionResult, type ExecutionStepper, type ExtensionConfigSchema, type ExtensionEvent, type ExtensionFactory, type ExtensionResult, type FsExtensionContract, type FunctionMetadata, hoistExtension, type HoistedExtension, type HostCallEvent, type HostFunctionDefinition, type HostFunctionParam, type FunctionReturnEvent, getCallStack, getDocumentationCoverage, getFunctions, getLanguageReference, buildFieldDescriptor, formatStructuralType, inferElementType, inferStructuralType, inferType, invokeCallable, isApplicationCallable, isTuple, isCallable, isDict, isReservedMethod, isRillIterator, isRuntimeCallable, isScriptCallable, isTypeValue, isVector, type KvExtensionContract, type NativeArray, type NativePlainObject, type NativeResult, type NativeValue, type LlmExtensionContract, type SchemaEntry, type ObservabilityCallbacks, type ParamMetadata, popCallFrame, prefixFunctions, pushCallFrame, RESERVED_DICT_METHODS, ReturnSignal, type RillCallable, type RillStructuralType, type RillFunctionReturnType, type RillIterator, type RillTuple, type RillTypeValue, type RillValue, type RillVector, type RuntimeCallable, type RuntimeCallbacks, type RuntimeContext, type RuntimeOptions, type ScriptCallable, type StepEndEvent, type StepResult, type StepStartEvent, type VectorExtensionContract, structuralTypeEquals, structuralTypeMatches, toNative, validateHostFunctionArgs, VERSION, VERSION_INFO, type VersionInfo, } from './runtime/index.js';
9
9
  export { type ErrorCategory, type ErrorDefinition, type ErrorSeverity, ERROR_REGISTRY, renderMessage, getHelpUrl, createError, } from './types.js';
10
+ export { VALID_TYPE_NAMES } from './constants.js';
10
11
  export { type HighlightCategory, TOKEN_HIGHLIGHT_MAP, } from './highlight-map.js';
11
12
  export * from './types.js';
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5E,OAAO,EACL,KAAK,mBAAmB,EACxB,WAAW,EACX,QAAQ,EACR,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,oBAAoB,EACpB,aAAa,EACb,YAAY,EACZ,KAAK,2BAA2B,EAChC,kBAAkB,EAClB,KAAK,UAAU,EACf,OAAO,EACP,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,YAAY,EACZ,wBAAwB,EACxB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,OAAO,EACP,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,QAAQ,EACR,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,wBAAwB,EACxB,kBAAkB,EAClB,OAAO,EACP,YAAY,EACZ,KAAK,WAAW,GACjB,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,cAAc,EACd,aAAa,EACb,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AAKpB,OAAO,EACL,KAAK,iBAAiB,EACtB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAE5B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,YAAY,EAAE,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5E,OAAO,EACL,KAAK,mBAAmB,EACxB,WAAW,EACX,QAAQ,EACR,KAAK,UAAU,EACf,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,YAAY,EACjB,KAAK,qBAAqB,EAC1B,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,KAAK,2BAA2B,EAChC,kBAAkB,EAClB,KAAK,UAAU,EACf,OAAO,EACP,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,YAAY,EACZ,wBAAwB,EACxB,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,SAAS,EACT,cAAc,EACd,qBAAqB,EACrB,OAAO,EACP,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,oBAAoB,EACzB,KAAK,WAAW,EAChB,KAAK,sBAAsB,EAC3B,KAAK,aAAa,EAClB,YAAY,EACZ,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,SAAS,EACd,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC5B,oBAAoB,EACpB,qBAAqB,EACrB,QAAQ,EACR,wBAAwB,EACxB,OAAO,EACP,YAAY,EACZ,KAAK,WAAW,GACjB,MAAM,oBAAoB,CAAC;AAK5B,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,cAAc,EACd,aAAa,EACb,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AAKpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAKlD,OAAO,EACL,KAAK,iBAAiB,EACtB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAE5B,cAAc,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -4,12 +4,16 @@
4
4
  */
5
5
  export { LexerError, tokenize } from './lexer/index.js';
6
6
  export { parse, parseWithRecovery } from './parser/index.js';
7
- export { BreakSignal, callable, createRuntimeContext, createStepper, createVector, emitExtensionEvent, execute, hoistExtension, getCallStack, getDocumentationCoverage, getFunctions, getLanguageReference, isApplicationCallable, isTuple, isCallable, isDict, isReservedMethod, isRillIterator, isRuntimeCallable, isScriptCallable, isVector, popCallFrame, prefixFunctions, pushCallFrame, RESERVED_DICT_METHODS, ReturnSignal, validateHostFunctionArgs, validateReturnType, VERSION, VERSION_INFO, } from './runtime/index.js';
7
+ export { BreakSignal, callable, createRuntimeContext, createStepper, createTuple, createVector, emitExtensionEvent, execute, hoistExtension, getCallStack, getDocumentationCoverage, getFunctions, getLanguageReference, buildFieldDescriptor, formatStructuralType, inferElementType, inferStructuralType, inferType, invokeCallable, isApplicationCallable, isTuple, isCallable, isDict, isReservedMethod, isRillIterator, isRuntimeCallable, isScriptCallable, isTypeValue, isVector, popCallFrame, prefixFunctions, pushCallFrame, RESERVED_DICT_METHODS, ReturnSignal, structuralTypeEquals, structuralTypeMatches, toNative, validateHostFunctionArgs, VERSION, VERSION_INFO, } from './runtime/index.js';
8
8
  // ============================================================
9
9
  // ERROR TAXONOMY
10
10
  // ============================================================
11
11
  export { ERROR_REGISTRY, renderMessage, getHelpUrl, createError, } from './types.js';
12
12
  // ============================================================
13
+ // CONSTANTS
14
+ // ============================================================
15
+ export { VALID_TYPE_NAMES } from './constants.js';
16
+ // ============================================================
13
17
  // SYNTAX HIGHLIGHTING
14
18
  // ============================================================
15
19
  export { TOKEN_HIGHLIGHT_MAP, } from './highlight-map.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAwB,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAEL,WAAW,EACX,QAAQ,EAKR,oBAAoB,EACpB,aAAa,EACb,YAAY,EAEZ,kBAAkB,EAElB,OAAO,EAQP,cAAc,EAMd,YAAY,EACZ,wBAAwB,EACxB,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,OAAO,EACP,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,QAAQ,EAMR,YAAY,EACZ,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,YAAY,EAgBZ,wBAAwB,EACxB,kBAAkB,EAClB,OAAO,EACP,YAAY,GAEb,MAAM,oBAAoB,CAAC;AAE5B,+DAA+D;AAC/D,iBAAiB;AACjB,+DAA+D;AAC/D,OAAO,EAIL,cAAc,EACd,aAAa,EACb,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,+DAA+D;AAC/D,sBAAsB;AACtB,+DAA+D;AAC/D,OAAO,EAEL,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAE5B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAwB,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAEL,WAAW,EACX,QAAQ,EAMR,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,YAAY,EAEZ,kBAAkB,EAElB,OAAO,EASP,cAAc,EAMd,YAAY,EACZ,wBAAwB,EACxB,YAAY,EACZ,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,mBAAmB,EACnB,SAAS,EACT,cAAc,EACd,qBAAqB,EACrB,OAAO,EACP,UAAU,EACV,MAAM,EACN,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,QAAQ,EAUR,YAAY,EACZ,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,YAAY,EAkBZ,oBAAoB,EACpB,qBAAqB,EACrB,QAAQ,EACR,wBAAwB,EACxB,OAAO,EACP,YAAY,GAEb,MAAM,oBAAoB,CAAC;AAE5B,+DAA+D;AAC/D,iBAAiB;AACjB,+DAA+D;AAC/D,OAAO,EAIL,cAAc,EACd,aAAa,EACb,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,+DAA+D;AAC/D,YAAY;AACZ,+DAA+D;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,+DAA+D;AAC/D,sBAAsB;AACtB,+DAA+D;AAC/D,OAAO,EAEL,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAE5B,cAAc,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"operators.d.ts","sourceRoot":"","sources":["../../src/lexer/operators.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,0CAA0C;AAC1C,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAcxD,CAAC;AAEF,6CAA6C;AAC7C,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAwB3D,CAAC;AAEF,2BAA2B;AAC3B,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAY9C,CAAC"}
1
+ {"version":3,"file":"operators.d.ts","sourceRoot":"","sources":["../../src/lexer/operators.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAG7C,0CAA0C;AAC1C,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAYxD,CAAC;AAEF,6CAA6C;AAC7C,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAwB3D,CAAC;AAEF,2BAA2B;AAC3B,eAAO,MAAM,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAY9C,CAAC"}
@@ -6,8 +6,6 @@ import { TOKEN_TYPES } from '../types.js';
6
6
  export const TWO_CHAR_OPERATORS = {
7
7
  '->': TOKEN_TYPES.ARROW,
8
8
  '=>': TOKEN_TYPES.CAPTURE_ARROW,
9
- '*<': TOKEN_TYPES.STAR_LT,
10
- '/<': TOKEN_TYPES.SLASH_LT,
11
9
  '&&': TOKEN_TYPES.AND,
12
10
  '||': TOKEN_TYPES.OR,
13
11
  '==': TOKEN_TYPES.EQ,
@@ -1 +1 @@
1
- {"version":3,"file":"operators.js","sourceRoot":"","sources":["../../src/lexer/operators.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,0CAA0C;AAC1C,MAAM,CAAC,MAAM,kBAAkB,GAA8B;IAC3D,IAAI,EAAE,WAAW,CAAC,KAAK;IACvB,IAAI,EAAE,WAAW,CAAC,aAAa;IAC/B,IAAI,EAAE,WAAW,CAAC,OAAO;IACzB,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,IAAI,EAAE,WAAW,CAAC,GAAG;IACrB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,gBAAgB;IAClC,IAAI,EAAE,WAAW,CAAC,YAAY;IAC9B,IAAI,EAAE,WAAW,CAAC,YAAY;CAC/B,CAAC;AAEF,6CAA6C;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAA8B;IAC9D,GAAG,EAAE,WAAW,CAAC,GAAG;IACpB,GAAG,EAAE,WAAW,CAAC,QAAQ;IACzB,GAAG,EAAE,WAAW,CAAC,EAAE;IACnB,GAAG,EAAE,WAAW,CAAC,KAAK;IACtB,GAAG,EAAE,WAAW,CAAC,KAAK;IACtB,GAAG,EAAE,WAAW,CAAC,IAAI;IACrB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,EAAE;IACnB,GAAG,EAAE,WAAW,CAAC,EAAE;IACnB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,QAAQ;IACzB,GAAG,EAAE,WAAW,CAAC,QAAQ;IACzB,GAAG,EAAE,WAAW,CAAC,QAAQ;IACzB,GAAG,EAAE,WAAW,CAAC,IAAI;IACrB,GAAG,EAAE,WAAW,CAAC,KAAK;IACtB,GAAG,EAAE,WAAW,CAAC,IAAI;IACrB,GAAG,EAAE,WAAW,CAAC,KAAK;IACtB,GAAG,EAAE,WAAW,CAAC,OAAO;IACxB,GAAG,EAAE,WAAW,CAAC,SAAS;IAC1B,GAAG,EAAE,WAAW,CAAC,KAAK;CACvB,CAAC;AAEF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,QAAQ,GAA8B;IACjD,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,KAAK,EAAE,WAAW,CAAC,KAAK;IACxB,KAAK,EAAE,WAAW,CAAC,KAAK;IACxB,MAAM,EAAE,WAAW,CAAC,MAAM;IAC1B,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,MAAM,EAAE,WAAW,CAAC,MAAM;IAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;IACxB,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,GAAG,EAAE,WAAW,CAAC,GAAG;IACpB,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,MAAM,EAAE,WAAW,CAAC,MAAM;CAC3B,CAAC"}
1
+ {"version":3,"file":"operators.js","sourceRoot":"","sources":["../../src/lexer/operators.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,0CAA0C;AAC1C,MAAM,CAAC,MAAM,kBAAkB,GAA8B;IAC3D,IAAI,EAAE,WAAW,CAAC,KAAK;IACvB,IAAI,EAAE,WAAW,CAAC,aAAa;IAC/B,IAAI,EAAE,WAAW,CAAC,GAAG;IACrB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,EAAE;IACpB,IAAI,EAAE,WAAW,CAAC,gBAAgB;IAClC,IAAI,EAAE,WAAW,CAAC,YAAY;IAC9B,IAAI,EAAE,WAAW,CAAC,YAAY;CAC/B,CAAC;AAEF,6CAA6C;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAA8B;IAC9D,GAAG,EAAE,WAAW,CAAC,GAAG;IACpB,GAAG,EAAE,WAAW,CAAC,QAAQ;IACzB,GAAG,EAAE,WAAW,CAAC,EAAE;IACnB,GAAG,EAAE,WAAW,CAAC,KAAK;IACtB,GAAG,EAAE,WAAW,CAAC,KAAK;IACtB,GAAG,EAAE,WAAW,CAAC,IAAI;IACrB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,EAAE;IACnB,GAAG,EAAE,WAAW,CAAC,EAAE;IACnB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,MAAM;IACvB,GAAG,EAAE,WAAW,CAAC,QAAQ;IACzB,GAAG,EAAE,WAAW,CAAC,QAAQ;IACzB,GAAG,EAAE,WAAW,CAAC,QAAQ;IACzB,GAAG,EAAE,WAAW,CAAC,IAAI;IACrB,GAAG,EAAE,WAAW,CAAC,KAAK;IACtB,GAAG,EAAE,WAAW,CAAC,IAAI;IACrB,GAAG,EAAE,WAAW,CAAC,KAAK;IACtB,GAAG,EAAE,WAAW,CAAC,OAAO;IACxB,GAAG,EAAE,WAAW,CAAC,SAAS;IAC1B,GAAG,EAAE,WAAW,CAAC,KAAK;CACvB,CAAC;AAEF,2BAA2B;AAC3B,MAAM,CAAC,MAAM,QAAQ,GAA8B;IACjD,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,KAAK,EAAE,WAAW,CAAC,KAAK;IACxB,KAAK,EAAE,WAAW,CAAC,KAAK;IACxB,MAAM,EAAE,WAAW,CAAC,MAAM;IAC1B,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,MAAM,EAAE,WAAW,CAAC,MAAM;IAC1B,KAAK,EAAE,WAAW,CAAC,KAAK;IACxB,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,GAAG,EAAE,WAAW,CAAC,GAAG;IACpB,IAAI,EAAE,WAAW,CAAC,IAAI;IACtB,MAAM,EAAE,WAAW,CAAC,MAAM;CAC3B,CAAC"}
@@ -2,8 +2,25 @@
2
2
  * Token Readers
3
3
  * Functions to read specific token types from source
4
4
  */
5
- import type { Token } from '../types.js';
5
+ import type { Token, TokenType } from '../types.js';
6
6
  import { type LexerState } from './state.js';
7
+ /** Named shape returned by tokenizeCompoundKeyword. */
8
+ export type CompoundToken = {
9
+ keyword: string;
10
+ bracket: string;
11
+ tokenType: TokenType;
12
+ };
13
+ /** Returns true when the identifier is one of the six collection keywords. */
14
+ export declare function isCollectionKeyword(identifier: string): boolean;
15
+ /**
16
+ * Attempts to recognize a compound token at the given position in source.
17
+ * Checks whether the character sequence starting at `position` is a collection
18
+ * keyword immediately (zero whitespace) followed by its bracket character.
19
+ * Returns null when the condition is not met.
20
+ *
21
+ * This function is informational: the caller must consume the characters.
22
+ */
23
+ export declare function tokenizeCompoundKeyword(source: string, position: number): CompoundToken | null;
7
24
  export declare function readString(state: LexerState): Token;
8
25
  export declare function readTripleQuoteString(state: LexerState): Token;
9
26
  export declare function readNumber(state: LexerState): Token;
@@ -1 +1 @@
1
- {"version":3,"file":"readers.d.ts","sourceRoot":"","sources":["../../src/lexer/readers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAUzC,OAAO,EAIL,KAAK,UAAU,EAEhB,MAAM,YAAY,CAAC;AAyBpB,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAoCnD;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAmF9D;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAgBnD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAUvD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAiBrD"}
1
+ {"version":3,"file":"readers.d.ts","sourceRoot":"","sources":["../../src/lexer/readers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAUpD,OAAO,EAIL,KAAK,UAAU,EAEhB,MAAM,YAAY,CAAC;AAMpB,uDAAuD;AACvD,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAkBF,8EAA8E;AAC9E,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,aAAa,GAAG,IAAI,CAatB;AAyBD,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAoCnD;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAmF9D;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAgBnD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAmCvD;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK,CAiBrD"}
@@ -7,6 +7,42 @@ import { LexerError } from './errors.js';
7
7
  import { isDigit, isIdentifierChar, isIdentifierStart, makeToken, } from './helpers.js';
8
8
  import { KEYWORDS } from './operators.js';
9
9
  import { advance, currentLocation, isAtEnd, peek, } from './state.js';
10
+ /**
11
+ * Mapping from collection keyword to its expected bracket character
12
+ * and the compound token type emitted when the bracket immediately follows.
13
+ */
14
+ const COMPOUND_KEYWORD_MAP = {
15
+ list: { bracket: '[', tokenType: TOKEN_TYPES.LIST_LBRACKET },
16
+ dict: { bracket: '[', tokenType: TOKEN_TYPES.DICT_LBRACKET },
17
+ tuple: { bracket: '[', tokenType: TOKEN_TYPES.TUPLE_LBRACKET },
18
+ ordered: { bracket: '[', tokenType: TOKEN_TYPES.ORDERED_LBRACKET },
19
+ destruct: { bracket: '<', tokenType: TOKEN_TYPES.DESTRUCT_LANGLE },
20
+ slice: { bracket: '<', tokenType: TOKEN_TYPES.SLICE_LANGLE },
21
+ };
22
+ /** Returns true when the identifier is one of the six collection keywords. */
23
+ export function isCollectionKeyword(identifier) {
24
+ return Object.prototype.hasOwnProperty.call(COMPOUND_KEYWORD_MAP, identifier);
25
+ }
26
+ /**
27
+ * Attempts to recognize a compound token at the given position in source.
28
+ * Checks whether the character sequence starting at `position` is a collection
29
+ * keyword immediately (zero whitespace) followed by its bracket character.
30
+ * Returns null when the condition is not met.
31
+ *
32
+ * This function is informational: the caller must consume the characters.
33
+ */
34
+ export function tokenizeCompoundKeyword(source, position) {
35
+ for (const [keyword, { bracket, tokenType }] of Object.entries(COMPOUND_KEYWORD_MAP)) {
36
+ const end = position + keyword.length;
37
+ if (source.slice(position, end) === keyword) {
38
+ // The character immediately after the keyword must be the bracket (no whitespace).
39
+ if (source[end] === bracket) {
40
+ return { keyword, bracket, tokenType };
41
+ }
42
+ }
43
+ }
44
+ return null;
45
+ }
10
46
  /** Process escape sequence and return the unescaped character */
11
47
  function processEscape(state) {
12
48
  const escaped = advance(state);
@@ -149,6 +185,25 @@ export function readNumber(state) {
149
185
  }
150
186
  export function readIdentifier(state) {
151
187
  const start = currentLocation(state);
188
+ // Check for compound keyword (e.g. list[, dict[, destruct<) before consuming
189
+ // any characters, so we can emit a single compound token when the bracket
190
+ // immediately follows the keyword with zero whitespace.
191
+ //
192
+ // Guard: skip compound check when the character immediately before this
193
+ // identifier is '$'. That handles variable names that happen to match a
194
+ // collection keyword (e.g. `$list[0]` is subscript access, not a list literal).
195
+ const prevChar = state.pos > 0 ? state.source[state.pos - 1] : '';
196
+ if (prevChar !== '$') {
197
+ const compound = tokenizeCompoundKeyword(state.source, state.pos);
198
+ if (compound !== null) {
199
+ // Consume keyword + bracket character (keyword.length + 1)
200
+ const totalLen = compound.keyword.length + 1;
201
+ for (let i = 0; i < totalLen; i++)
202
+ advance(state);
203
+ const value = compound.keyword + compound.bracket;
204
+ return makeToken(compound.tokenType, value, start, currentLocation(state));
205
+ }
206
+ }
152
207
  let value = '';
153
208
  while (!isAtEnd(state) && isIdentifierChar(peek(state))) {
154
209
  value += advance(state);
@@ -1 +1 @@
1
- {"version":3,"file":"readers.js","sourceRoot":"","sources":["../../src/lexer/readers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"readers.js","sourceRoot":"","sources":["../../src/lexer/readers.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,11 @@
3
3
  * Lookahead predicates and utility parsing functions
4
4
  * @internal This module contains internal parser utilities
5
5
  */
6
- import type { BlockNode, HostCallNode, SourceSpan } from '../types.js';
6
+ import type { BlockNode, HostCallNode, HostRefNode, SourceSpan } from '../types.js';
7
7
  import { type ParserState } from './state.js';
8
+ import { VALID_TYPE_NAMES } from '../constants.js';
8
9
  /** @internal */
9
- export declare const VALID_TYPE_NAMES: readonly ["string", "number", "bool", "closure", "list", "dict", "tuple"];
10
- /** @internal */
11
- export declare const FUNC_PARAM_TYPES: readonly ["string", "number", "bool"];
10
+ export { VALID_TYPE_NAMES };
12
11
  /**
13
12
  * Check if token can be used as an identifier in function names
14
13
  * (identifiers or keywords)
@@ -47,10 +46,10 @@ export declare function canStartPipeInvoke(state: ParserState): boolean;
47
46
  */
48
47
  export declare function isMethodCall(state: ParserState): boolean;
49
48
  /**
50
- * Check for sequential spread target: @$ or @[ (not @{ which is for-loop)
49
+ * Check for annotation access: .^identifier
51
50
  * @internal
52
51
  */
53
- export declare function isClosureChainTarget(state: ParserState): boolean;
52
+ export declare function isAnnotationAccess(state: ParserState): boolean;
54
53
  /**
55
54
  * Check for negative number: -42
56
55
  * @internal
@@ -71,11 +70,6 @@ export declare function isMethodCallWithArgs(state: ParserState): boolean;
71
70
  * @internal
72
71
  */
73
72
  export declare function isLiteralStart(state: ParserState): boolean;
74
- /**
75
- * Check if current token can start an expression (for bare spread detection)
76
- * @internal
77
- */
78
- export declare function canStartExpression(state: ParserState): boolean;
79
73
  /**
80
74
  * Check for closure start: | or ||
81
75
  * - |params| body
@@ -96,8 +90,9 @@ export declare function parseTypeName<T extends string>(state: ParserState, vali
96
90
  export declare function makeBoolLiteralBlock(value: boolean, span: SourceSpan): BlockNode;
97
91
  /**
98
92
  * Parse a bare function name (no parens): `func` or `ns::func` or `ns::sub::func`
99
- * Returns a HostCallNode with empty args.
93
+ * Returns a HostRefNode for namespaced names (ns::name) and a HostCallNode
94
+ * with empty args for simple bare identifiers (no ::).
100
95
  * @internal
101
96
  */
102
- export declare function parseBareHostCall(state: ParserState): HostCallNode;
97
+ export declare function parseBareHostCall(state: ParserState): HostCallNode | HostRefNode;
103
98
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/parser/helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEvE,OAAO,EAAE,KAAK,WAAW,EAAgC,MAAM,YAAY,CAAC;AAM5E,gBAAgB;AAChB,eAAO,MAAM,gBAAgB,2EAQnB,CAAC;AAEX,gBAAgB;AAChB,eAAO,MAAM,gBAAgB,uCAAwC,CAAC;AAMtE;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAetE;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAyBtD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAMzD;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAanE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAK9D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAKxD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAMhE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAK5D;AAaD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CA+CvD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAKhE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAS1D;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAmB9D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAE1D;AAMD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAC5C,KAAK,EAAE,WAAW,EAClB,UAAU,EAAE,SAAS,CAAC,EAAE,GACvB,CAAC,CAUH;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,UAAU,GACf,SAAS,CAwBX;AASD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,YAAY,CA6BlE"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/parser/helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,EACX,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,KAAK,WAAW,EAAgC,MAAM,YAAY,CAAC;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAMnD,gBAAgB;AAChB,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAM5B;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAetE;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAgCtD;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAMzD;AAED;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAcnE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAK9D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAKxD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAI9D;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAK5D;AAaD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CA+CvD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAKhE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAa1D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAE1D;AAMD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAC5C,KAAK,EAAE,WAAW,EAClB,UAAU,EAAE,SAAS,CAAC,EAAE,GACvB,CAAC,CAUH;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,UAAU,GACf,SAAS,CAwBX;AASD;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,WAAW,GACjB,YAAY,GAAG,WAAW,CA0C5B"}
@@ -5,21 +5,12 @@
5
5
  */
6
6
  import { ParseError, TOKEN_TYPES } from '../types.js';
7
7
  import { check, peek, expect, current } from './state.js';
8
+ import { VALID_TYPE_NAMES } from '../constants.js';
8
9
  // ============================================================
9
10
  // VALID TYPE NAMES
10
11
  // ============================================================
11
12
  /** @internal */
12
- export const VALID_TYPE_NAMES = [
13
- 'string',
14
- 'number',
15
- 'bool',
16
- 'closure',
17
- 'list',
18
- 'dict',
19
- 'tuple',
20
- ];
21
- /** @internal */
22
- export const FUNC_PARAM_TYPES = ['string', 'number', 'bool'];
13
+ export { VALID_TYPE_NAMES };
23
14
  // ============================================================
24
15
  // LOOKAHEAD PREDICATES
25
16
  // ============================================================
@@ -54,7 +45,10 @@ export function isHostCall(state) {
54
45
  return false;
55
46
  }
56
47
  // Simple case: identifier(
57
- if (peek(state, 1).type === TOKEN_TYPES.LPAREN) {
48
+ let simpleOffset = 1;
49
+ while (peek(state, simpleOffset).type === TOKEN_TYPES.NEWLINE)
50
+ simpleOffset++;
51
+ if (peek(state, simpleOffset).type === TOKEN_TYPES.LPAREN) {
58
52
  return true;
59
53
  }
60
54
  // Namespaced case: identifier::identifier(
@@ -68,8 +62,13 @@ export function isHostCall(state) {
68
62
  }
69
63
  offset++; // skip identifier/keyword
70
64
  }
71
- // If we consumed at least one ::, check for (
72
- return offset > 1 && peek(state, offset).type === TOKEN_TYPES.LPAREN;
65
+ // If we consumed at least one ::, skip newlines then check for (
66
+ if (offset > 1) {
67
+ while (peek(state, offset).type === TOKEN_TYPES.NEWLINE)
68
+ offset++;
69
+ return peek(state, offset).type === TOKEN_TYPES.LPAREN;
70
+ }
71
+ return false;
73
72
  }
74
73
  /**
75
74
  * Check for simple closure call: $name(
@@ -77,9 +76,14 @@ export function isHostCall(state) {
77
76
  * @internal
78
77
  */
79
78
  export function isClosureCall(state) {
80
- return (check(state, TOKEN_TYPES.DOLLAR) &&
81
- peek(state, 1).type === TOKEN_TYPES.IDENTIFIER &&
82
- peek(state, 2).type === TOKEN_TYPES.LPAREN);
79
+ if (!check(state, TOKEN_TYPES.DOLLAR))
80
+ return false;
81
+ if (peek(state, 1).type !== TOKEN_TYPES.IDENTIFIER)
82
+ return false;
83
+ let offset = 2;
84
+ while (peek(state, offset).type === TOKEN_TYPES.NEWLINE)
85
+ offset++;
86
+ return peek(state, offset).type === TOKEN_TYPES.LPAREN;
83
87
  }
84
88
  /**
85
89
  * Check for closure call with property access: $name( or $name.prop...(
@@ -99,6 +103,8 @@ export function isClosureCallWithAccess(state) {
99
103
  return false;
100
104
  offset++; // skip identifier
101
105
  }
106
+ while (peek(state, offset).type === TOKEN_TYPES.NEWLINE)
107
+ offset++;
102
108
  return peek(state, offset).type === TOKEN_TYPES.LPAREN;
103
109
  }
104
110
  /**
@@ -118,13 +124,11 @@ export function isMethodCall(state) {
118
124
  peek(state, 1).type === TOKEN_TYPES.IDENTIFIER);
119
125
  }
120
126
  /**
121
- * Check for sequential spread target: @$ or @[ (not @{ which is for-loop)
127
+ * Check for annotation access: .^identifier
122
128
  * @internal
123
129
  */
124
- export function isClosureChainTarget(state) {
125
- return (check(state, TOKEN_TYPES.AT) &&
126
- (peek(state, 1).type === TOKEN_TYPES.DOLLAR ||
127
- peek(state, 1).type === TOKEN_TYPES.LBRACKET));
130
+ export function isAnnotationAccess(state) {
131
+ return (check(state, TOKEN_TYPES.DOT) && peek(state, 1).type === TOKEN_TYPES.CARET);
128
132
  }
129
133
  /**
130
134
  * Check for negative number: -42
@@ -200,16 +204,7 @@ export function isMethodCallWithArgs(state) {
200
204
  * @internal
201
205
  */
202
206
  export function isLiteralStart(state) {
203
- return check(state, TOKEN_TYPES.STRING, TOKEN_TYPES.NUMBER, TOKEN_TYPES.TRUE, TOKEN_TYPES.FALSE, TOKEN_TYPES.LBRACKET);
204
- }
205
- /**
206
- * Check if current token can start an expression (for bare spread detection)
207
- * @internal
208
- */
209
- export function canStartExpression(state) {
210
- return (isLiteralStart(state) ||
211
- isClosureStart(state) ||
212
- check(state, TOKEN_TYPES.DOLLAR, TOKEN_TYPES.PIPE_VAR, TOKEN_TYPES.IDENTIFIER, TOKEN_TYPES.DOT, TOKEN_TYPES.LPAREN, TOKEN_TYPES.LBRACE, TOKEN_TYPES.AT, TOKEN_TYPES.QUESTION, TOKEN_TYPES.BANG, TOKEN_TYPES.STAR, TOKEN_TYPES.MINUS));
207
+ return check(state, TOKEN_TYPES.STRING, TOKEN_TYPES.NUMBER, TOKEN_TYPES.TRUE, TOKEN_TYPES.FALSE, TOKEN_TYPES.LBRACKET, TOKEN_TYPES.LIST_LBRACKET, TOKEN_TYPES.DICT_LBRACKET, TOKEN_TYPES.TUPLE_LBRACKET, TOKEN_TYPES.ORDERED_LBRACKET);
213
208
  }
214
209
  /**
215
210
  * Check for closure start: | or ||
@@ -267,19 +262,22 @@ export function makeBoolLiteralBlock(value, span) {
267
262
  // Note: parseArgumentList is defined in expressions.ts to avoid circular dependencies
268
263
  // since it depends on parseExpression
269
264
  // ============================================================
270
- // BARE HOST CALL PARSING
265
+ // BARE HOST CALL / REF PARSING
271
266
  // ============================================================
272
267
  /**
273
268
  * Parse a bare function name (no parens): `func` or `ns::func` or `ns::sub::func`
274
- * Returns a HostCallNode with empty args.
269
+ * Returns a HostRefNode for namespaced names (ns::name) and a HostCallNode
270
+ * with empty args for simple bare identifiers (no ::).
275
271
  * @internal
276
272
  */
277
273
  export function parseBareHostCall(state) {
278
274
  const start = state.tokens[state.pos].span.start;
279
275
  let name = expect(state, TOKEN_TYPES.IDENTIFIER, 'Expected identifier').value;
276
+ let hasNamespace = false;
280
277
  // Collect namespaced name: ident::ident::...
281
278
  while (check(state, TOKEN_TYPES.DOUBLE_COLON)) {
282
279
  state.pos++; // consume ::
280
+ hasNamespace = true;
283
281
  // After ::, accept identifier or keyword
284
282
  const token = current(state);
285
283
  if (!isIdentifierOrKeyword(token)) {
@@ -288,11 +286,20 @@ export function parseBareHostCall(state) {
288
286
  name += '::' + token.value;
289
287
  state.pos++; // consume the identifier or keyword
290
288
  }
289
+ const span = { start, end: state.tokens[state.pos - 1].span.end };
290
+ // Namespaced bare identifier → host function reference (IR-4)
291
+ if (hasNamespace) {
292
+ return {
293
+ type: 'HostRef',
294
+ name,
295
+ span,
296
+ };
297
+ }
291
298
  return {
292
299
  type: 'HostCall',
293
300
  name,
294
301
  args: [],
295
- span: { start, end: state.tokens[state.pos - 1].span.end },
302
+ span,
296
303
  };
297
304
  }
298
305
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/parser/helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/parser/helpers.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,7 @@ import './parser-control.js';
11
11
  import './parser-functions.js';
12
12
  import './parser-collect.js';
13
13
  import './parser-extract.js';
14
+ import './parser-shape.js';
14
15
  /**
15
16
  * Parse rill source code into an AST.
16
17
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAc,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAK5E,OAAO,oBAAoB,CAAC;AAC5B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,qBAAqB,CAAC;AAM7B;;;;;;;;;;;;GAYG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAIhD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAkD7D;AAOD,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAGjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAc,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAK5E,OAAO,oBAAoB,CAAC;AAC5B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,mBAAmB,CAAC;AAM3B;;;;;;;;;;;;GAYG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,CAIhD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAkD7D;AAOD,OAAO,EAAE,iBAAiB,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAGjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
@@ -15,6 +15,7 @@ import './parser-control.js';
15
15
  import './parser-functions.js';
16
16
  import './parser-collect.js';
17
17
  import './parser-extract.js';
18
+ import './parser-shape.js';
18
19
  // ============================================================
19
20
  // MAIN ENTRY POINT
20
21
  // ============================================================
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAqC,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,oEAAoE;AACpE,yEAAyE;AACzE,OAAO,oBAAoB,CAAC;AAC5B,OAAO,kBAAkB,CAAC;AAC1B,OAAO,sBAAsB,CAAC;AAC9B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,uBAAuB,CAAC;AAC/B,OAAO,qBAAqB,CAAC;AAC7B,OAAO,qBAAqB,CAAC;AAE7B,+DAA+D;AAC/D,mBAAmB;AACnB,+DAA+D;AAE/D;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,KAAK,CAAC,MAAc;IAClC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACnE,OAAO,MAAM,CAAC,KAAK,EAAE,CAAC;AACxB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAc;IAC9C,kEAAkE;IAClE,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,0EAA0E;QAC1E,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;YACtD,MAAM,QAAQ,GAAG,GAEhB,CAAC;YACF,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,IAAI;gBACpC,IAAI,EAAE,CAAC;gBACP,MAAM,EAAE,CAAC;gBACT,MAAM,EAAE,CAAC;aACV,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,UAAU,CAC/B,WAAW,EACX,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC,EACpD,QAAQ,CACT,CAAC;YAEF,uCAAuC;YACvC,MAAM,WAAW,GAAe;gBAC9B,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,EAAE;gBACd,IAAI,EAAE;oBACJ,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;oBACxC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;iBACvC;aACF,CAAC;YAEF,OAAO;gBACL,GAAG,EAAE,WAAW;gBAChB,MAAM,EAAE,CAAC,UAAU,CAAC;gBACpB,OAAO,EAAE,KAAK;aACf,CAAC;QACJ,CAAC;QACD,MAAM,GAAG,CAAC,CAAC,6BAA6B;IAC1C,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAClE,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAE3B,OAAO;QACL,GAAG;QACH,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;KACpC,CAAC;AACJ,CAAC;AAED,+DAA+D;AAC/D,aAAa;AACb,+DAA+D;AAE/D,6BAA6B;AAC7B,OAAO,EAAE,iBAAiB,EAAoB,MAAM,YAAY,CAAC;AAEjE,oCAAoC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser-collect.d.ts","sourceRoot":"","sources":["../../src/parser/parser-collect.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,WAAW,EACZ,MAAM,aAAa,CAAC;AAMrB,OAAO,QAAQ,aAAa,CAAC;IAC3B,UAAU,MAAM;QACd,iBAAiB,IAAI,YAAY,CAAC;QAClC,oBAAoB,IAAI,OAAO,CAAC;QAChC,aAAa,IAAI,YAAY,CAAC;QAC9B,YAAY,IAAI,WAAW,CAAC;QAC5B,aAAa,IAAI,YAAY,CAAC;QAC9B,eAAe,IAAI,cAAc,CAAC;KACnC;CACF"}
1
+ {"version":3,"file":"parser-collect.d.ts","sourceRoot":"","sources":["../../src/parser/parser-collect.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAEV,YAAY,EACZ,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,WAAW,EACZ,MAAM,aAAa,CAAC;AAMrB,OAAO,QAAQ,aAAa,CAAC;IAC3B,UAAU,MAAM;QACd,iBAAiB,IAAI,YAAY,CAAC;QAClC,oBAAoB,IAAI,OAAO,CAAC;QAChC,aAAa,IAAI,YAAY,CAAC;QAC9B,YAAY,IAAI,WAAW,CAAC;QAC5B,aAAa,IAAI,YAAY,CAAC;QAC9B,eAAe,IAAI,cAAc,CAAC;KACnC;CACF"}