@calcit/procs 0.13.39 → 0.13.40
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.
package/.yarn/install-state.gz
CHANGED
|
Binary file
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# option:fold shared callback return type
|
|
2
|
+
|
|
3
|
+
- Higher-order callback matching must reuse the enclosing generic binding map.
|
|
4
|
+
A fresh map per callback makes repeated variables such as `option:fold`'s
|
|
5
|
+
return `U` independent and silently accepts incompatible branch results.
|
|
6
|
+
- Unhinted zero-argument thunks may safely retain a concrete return type from
|
|
7
|
+
their final expression. This supplies the none-branch binding for `U` while
|
|
8
|
+
keeping unhinted callbacks with parameters dynamic, avoiding retroactive
|
|
9
|
+
tightening of existing higher-order call sites.
|
|
10
|
+
- The inferred thunk annotation must preserve `SchemaKind::Macro` for
|
|
11
|
+
`defmacro` forms, matching the explicit-hint path; a dedicated regression
|
|
12
|
+
test prevents zero-argument macros from being exposed as ordinary functions.
|
|
13
|
+
- Callback signature matching stages generic bindings and commits them only on
|
|
14
|
+
success, so a rejected nested callback cannot constrain a later argument.
|
|
15
|
+
`option:fold` additionally recovers a concrete return type for unhinted
|
|
16
|
+
callback bodies during its own argument check, including parameterized
|
|
17
|
+
callbacks, without globally tightening unrelated higher-order calls.
|
|
18
|
+
- Preprocessing regressions cover direct folds, parameterized callbacks, and a
|
|
19
|
+
user macro expanding to `option:fold`; empty unhinted functions remain
|
|
20
|
+
dynamic rather than treating their parameter list as a return value.
|
|
21
|
+
- Regression coverage includes the shared-binding matcher and literal thunk
|
|
22
|
+
inference. The CLI reproduction now fails during preprocessing when a
|
|
23
|
+
`String` none branch is combined with a numeric Option payload and `identity`.
|
package/lib/package.json
CHANGED