@quolu/lattice 0.43.0 → 0.44.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 (113) hide show
  1. package/package.json +4 -2
  2. package/sensor/dist/bin/lattice-sensor.js +14 -0
  3. package/sensor/dist/db/index.d.ts +114 -0
  4. package/sensor/dist/db/index.d.ts.map +1 -1
  5. package/sensor/dist/db/index.js +235 -7
  6. package/sensor/dist/db/index.js.map +1 -1
  7. package/sensor/dist/db/queries.d.ts +26 -4
  8. package/sensor/dist/db/queries.d.ts.map +1 -1
  9. package/sensor/dist/db/queries.js +72 -10
  10. package/sensor/dist/db/queries.js.map +1 -1
  11. package/sensor/dist/db/wal-valve.d.ts +15 -2
  12. package/sensor/dist/db/wal-valve.d.ts.map +1 -1
  13. package/sensor/dist/db/wal-valve.js +88 -6
  14. package/sensor/dist/db/wal-valve.js.map +1 -1
  15. package/sensor/dist/extraction/extraction-version.d.ts +1 -1
  16. package/sensor/dist/extraction/extraction-version.d.ts.map +1 -1
  17. package/sensor/dist/extraction/extraction-version.js +5 -1
  18. package/sensor/dist/extraction/extraction-version.js.map +1 -1
  19. package/sensor/dist/extraction/function-ref.d.ts.map +1 -1
  20. package/sensor/dist/extraction/function-ref.js +6 -0
  21. package/sensor/dist/extraction/function-ref.js.map +1 -1
  22. package/sensor/dist/extraction/grammars.d.ts.map +1 -1
  23. package/sensor/dist/extraction/grammars.js +46 -0
  24. package/sensor/dist/extraction/grammars.js.map +1 -1
  25. package/sensor/dist/extraction/index.d.ts +11 -1
  26. package/sensor/dist/extraction/index.d.ts.map +1 -1
  27. package/sensor/dist/extraction/index.js +50 -11
  28. package/sensor/dist/extraction/index.js.map +1 -1
  29. package/sensor/dist/extraction/kernel/decode.d.ts.map +1 -1
  30. package/sensor/dist/extraction/kernel/decode.js +9 -3
  31. package/sensor/dist/extraction/kernel/decode.js.map +1 -1
  32. package/sensor/dist/extraction/kernel/index.d.ts +2 -0
  33. package/sensor/dist/extraction/kernel/index.d.ts.map +1 -1
  34. package/sensor/dist/extraction/kernel/index.js +122 -8
  35. package/sensor/dist/extraction/kernel/index.js.map +1 -1
  36. package/sensor/dist/extraction/kernel/layout.d.ts +10 -1
  37. package/sensor/dist/extraction/kernel/layout.d.ts.map +1 -1
  38. package/sensor/dist/extraction/kernel/layout.js +11 -2
  39. package/sensor/dist/extraction/kernel/layout.js.map +1 -1
  40. package/sensor/dist/extraction/kernel/loader.d.ts +42 -0
  41. package/sensor/dist/extraction/kernel/loader.d.ts.map +1 -1
  42. package/sensor/dist/extraction/kernel/loader.js.map +1 -1
  43. package/sensor/dist/extraction/languages/c-cpp.d.ts +13 -0
  44. package/sensor/dist/extraction/languages/c-cpp.d.ts.map +1 -1
  45. package/sensor/dist/extraction/languages/c-cpp.js +809 -13
  46. package/sensor/dist/extraction/languages/c-cpp.js.map +1 -1
  47. package/sensor/dist/extraction/store-worker.js +29 -0
  48. package/sensor/dist/extraction/store-worker.js.map +1 -1
  49. package/sensor/dist/extraction/tree-sitter.d.ts +4 -1
  50. package/sensor/dist/extraction/tree-sitter.d.ts.map +1 -1
  51. package/sensor/dist/extraction/tree-sitter.js +20 -4
  52. package/sensor/dist/extraction/tree-sitter.js.map +1 -1
  53. package/sensor/dist/extraction/wasm/tree-sitter-c.wasm +0 -0
  54. package/sensor/dist/extraction/wasm/tree-sitter-cpp.wasm +0 -0
  55. package/sensor/dist/extraction/wasm/tree-sitter-dart.wasm +0 -0
  56. package/sensor/dist/extraction/wasm/tree-sitter-kotlin.wasm +0 -0
  57. package/sensor/dist/extraction/wasm/tree-sitter-php.wasm +0 -0
  58. package/sensor/dist/extraction/wasm/tree-sitter-ruby.wasm +0 -0
  59. package/sensor/dist/extraction/wasm/tree-sitter-rust.wasm +0 -0
  60. package/sensor/dist/extraction/wasm/tree-sitter-swift.wasm +0 -0
  61. package/sensor/dist/index.d.ts +3 -1
  62. package/sensor/dist/index.d.ts.map +1 -1
  63. package/sensor/dist/index.js +31 -7
  64. package/sensor/dist/index.js.map +1 -1
  65. package/sensor/dist/mcp/index.d.ts +24 -0
  66. package/sensor/dist/mcp/index.d.ts.map +1 -1
  67. package/sensor/dist/mcp/index.js +51 -2
  68. package/sensor/dist/mcp/index.js.map +1 -1
  69. package/sensor/dist/mcp/liveness-watchdog.d.ts.map +1 -1
  70. package/sensor/dist/mcp/liveness-watchdog.js +3 -1
  71. package/sensor/dist/mcp/liveness-watchdog.js.map +1 -1
  72. package/sensor/dist/mcp/server-instructions.d.ts +1 -1
  73. package/sensor/dist/mcp/server-instructions.d.ts.map +1 -1
  74. package/sensor/dist/mcp/server-instructions.js +1 -0
  75. package/sensor/dist/mcp/server-instructions.js.map +1 -1
  76. package/sensor/dist/mcp/tools.d.ts +48 -0
  77. package/sensor/dist/mcp/tools.d.ts.map +1 -1
  78. package/sensor/dist/mcp/tools.js +231 -4
  79. package/sensor/dist/mcp/tools.js.map +1 -1
  80. package/sensor/dist/resolution/c-fnptr-synthesizer.d.ts.map +1 -1
  81. package/sensor/dist/resolution/c-fnptr-synthesizer.js +561 -127
  82. package/sensor/dist/resolution/c-fnptr-synthesizer.js.map +1 -1
  83. package/sensor/dist/resolution/callback-synthesizer.d.ts +1 -1
  84. package/sensor/dist/resolution/callback-synthesizer.d.ts.map +1 -1
  85. package/sensor/dist/resolution/callback-synthesizer.js +80 -11
  86. package/sensor/dist/resolution/callback-synthesizer.js.map +1 -1
  87. package/sensor/dist/resolution/import-resolver.d.ts.map +1 -1
  88. package/sensor/dist/resolution/import-resolver.js +34 -2
  89. package/sensor/dist/resolution/import-resolver.js.map +1 -1
  90. package/sensor/dist/resolution/index.d.ts +34 -0
  91. package/sensor/dist/resolution/index.d.ts.map +1 -1
  92. package/sensor/dist/resolution/index.js +393 -51
  93. package/sensor/dist/resolution/index.js.map +1 -1
  94. package/sensor/dist/resolution/memory-budget.d.ts +48 -0
  95. package/sensor/dist/resolution/memory-budget.d.ts.map +1 -0
  96. package/sensor/dist/resolution/memory-budget.js +162 -0
  97. package/sensor/dist/resolution/memory-budget.js.map +1 -0
  98. package/sensor/dist/resolution/name-matcher.d.ts +4 -7
  99. package/sensor/dist/resolution/name-matcher.d.ts.map +1 -1
  100. package/sensor/dist/resolution/name-matcher.js +256 -91
  101. package/sensor/dist/resolution/name-matcher.js.map +1 -1
  102. package/sensor/dist/resolution/resolver-pool.d.ts +41 -1
  103. package/sensor/dist/resolution/resolver-pool.d.ts.map +1 -1
  104. package/sensor/dist/resolution/resolver-pool.js +103 -3
  105. package/sensor/dist/resolution/resolver-pool.js.map +1 -1
  106. package/sensor/dist/resolution/resolver-worker.js +27 -0
  107. package/sensor/dist/resolution/resolver-worker.js.map +1 -1
  108. package/sensor/dist/sync/watcher.d.ts +8 -1
  109. package/sensor/dist/sync/watcher.d.ts.map +1 -1
  110. package/sensor/dist/sync/watcher.js +44 -2
  111. package/sensor/dist/sync/watcher.js.map +1 -1
  112. package/sensor/dist/types.d.ts +3 -0
  113. package/sensor/dist/types.d.ts.map +1 -1
@@ -17,9 +17,11 @@
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.decodeExtractBuffers = exports.resetKernelForTests = exports.kernelSupports = exports.getKernel = void 0;
19
19
  exports.kernelRoutes = kernelRoutes;
20
+ exports.takeDeferredPreParse = takeDeferredPreParse;
20
21
  exports.tryKernelExtractRaw = tryKernelExtractRaw;
21
22
  exports.materializeKernelResult = materializeKernelResult;
22
23
  exports.tryKernelExtract = tryKernelExtract;
24
+ const languages_1 = require("../languages");
23
25
  const loader_1 = require("./loader");
24
26
  const decode_1 = require("./decode");
25
27
  const layout_1 = require("./layout");
@@ -44,10 +46,93 @@ const DEFAULT_ROUTED = new Set([
44
46
  'java',
45
47
  'python',
46
48
  'go',
49
+ // R7a (2026-07-17): parity swept 0-diff on redis/git/fmt/protobuf/ALS
50
+ // (2,389 files compared) + full-init dump-diffs byte-identical; erroring
51
+ // files defer per-file to wasm (routine for macro-heavy C/C++ — see
52
+ // scripts/kernel-parity.mjs --max-deferral).
53
+ 'c',
54
+ 'cpp',
55
+ // R7b (2026-07-20): parity swept 0-diff on ripgrep/tokio/rust-analyzer
56
+ // (2,108 files byte-parity) + full-init dump-diffs byte-identical. Rust
57
+ // deferral is ~0% on normal repos; token-macro-table sources (rust-analyzer's
58
+ // parser crates, 18%) error on BOTH arms — grammar-inherent, not a walker
59
+ // signal.
60
+ 'rust',
61
+ // R7b (2026-07-20): parity swept 0-diff on serilog/Newtonsoft.Json/jellyfin
62
+ // (3,229 files byte-parity) + full-init dump-diffs byte-identical ×3.
63
+ // Deferral 0.05–3.3% — both-branches-kept `#if` damage that errors on BOTH
64
+ // arms (the preParse blanking hoist keeps the kernel's input identical).
65
+ 'csharp',
66
+ // R7b (2026-07-20): parity swept 0-diff on sinatra/jekyll/rails (3,763
67
+ // files byte-parity, 0 deferrals — ruby error incidence is 0.00%) +
68
+ // full-init dump-diffs byte-identical ×3. Any deferral on a ruby sweep is
69
+ // a walker-bug signal, not grammar reality.
70
+ 'ruby',
71
+ // R7b (2026-07-20): parity swept 0-diff on monolog/laravel-framework/
72
+ // symfony (13,950 files byte-parity) + full-init dump-diffs byte-identical
73
+ // ×3. Deferral ≈0–0.1% (genuinely-broken fixtures) — default sweep guard.
74
+ 'php',
75
+ // R7b (2026-07-20): parity swept 0-diff on Alamofire/vapor/swift-nio (720
76
+ // clean files byte-parity; Alamofire's 348 #1020 property nodes reproduced
77
+ // exactly) + full-init dump-diffs byte-identical ×3. Swift error incidence
78
+ // is structurally 9–27% on BOTH arms (heavy #if conditionalization) —
79
+ // sweeps run --max-deferral 0.3; a deferral-rate JUMP is the bug signal.
80
+ 'swift',
81
+ // R7b (2026-07-20): parity swept 0-diff on okio/okhttp/kotlinx.coroutines
82
+ // (1,861 clean files byte-parity; KMP expect/actual synthesis identical —
83
+ // 412 edges both arms on kotlinx.coroutines) + full-init dump-diffs
84
+ // byte-identical ×3. Deferral 4.7–8.5% both-arm grammar reality
85
+ // (fun-interface misparses + PHANTOM hasError files) — default sweep guard
86
+ // holds; a JUMP past ~10% is the bug signal.
87
+ 'kotlin',
88
+ // R7b batch 4 (2026-07-20): parity swept 0-diff on dplyr/ggplot2/shiny +
89
+ // AnomalyDetection + full-init dump-diffs byte-identical ×3. R error
90
+ // incidence is ~0% (deferrals 0/0/0/1 across the gate repos — the 1 is a
91
+ // moustache-template pseudo-R file, both-arm): any deferral on an R sweep
92
+ // is a walker-bug signal, not grammar reality.
93
+ 'r',
94
+ // R7b batch 4 (2026-07-20): one walker, two dialects. Parity swept 0-diff
95
+ // on kong/lazy.nvim/lua-resty-core (lua) + lune/Fusion (luau) + full-init
96
+ // dump-diffs byte-identical. Lua error incidence ~0% (any deferral is a
97
+ // walker-bug signal); luau 1.4–7.1% both-arm grammar reality (generic type
98
+ // packs, default type params) — a JUMP past ~10% is the bug signal.
99
+ 'lua',
100
+ 'luau',
101
+ // R7b batch 4 (2026-07-20): parity swept 0-diff on os-lib/cats + scala3
102
+ // compiler/src + library/src + full-init dump-diffs byte-identical.
103
+ // Error incidence is bimodal: mainstream Scala-2-style repos ~0-2%
104
+ // (os-lib 0%, cats 1.8%) but scala-3-frontier code runs 10-18% with
105
+ // PHANTOM-dominated error sets (hasError=true, zero ERROR nodes —
106
+ // capture-checking `^` types; defer on the FLAG). Sweeps over
107
+ // scala3-style repos use --max-deferral 0.3 (swift precedent); a
108
+ // deferral JUMP on cats/os-lib-style code is the bug signal.
109
+ 'scala',
110
+ // R7b batch 4 (2026-07-20): parity swept 0-diff on shelf/bloc/flutter +
111
+ // full-init dump-diffs byte-identical. Error incidence 3.4-20.7% both-arm
112
+ // grammar reality (empty object patterns — the sealed-class idiom — and
113
+ // unnamed `library;` dominate; flutter sits at ~21%) — sweeps use
114
+ // --max-deferral 0.3; the RATE, not the count, is the signal (flutter
115
+ // HEAD drifts).
116
+ 'dart',
47
117
  ]);
48
118
  const POST_PASSES = {
49
119
  // (none yet — R2+)
50
120
  };
121
+ /**
122
+ * The preParse hoist (checklist §arch-1): languages with an offset-preserving
123
+ * `preParse` hook (c/cpp macro blanking, csharp #237, metal #1121, cuda #1172)
124
+ * apply it HERE, before the kernel call, so both arms parse identical blanked
125
+ * bytes and none of the blanking logic needs a Rust port. The wasm fallback
126
+ * path is untouched — TreeSitterExtractor applies the same hook itself on the
127
+ * RAW source it receives, so a kernel error/defer still extracts identically.
128
+ * Every blank is an equal-length-space replacement, so offsets, lines, and
129
+ * columns survive; `filePath` rides along for the extension-gated dialect
130
+ * blanks (`.metal` attributes; `.cu`/`.cuh` + content-gated CUDA).
131
+ */
132
+ function preParsedSource(filePath, source, language) {
133
+ const pre = languages_1.EXTRACTORS[language]?.preParse;
134
+ return pre ? pre(source, filePath) : source;
135
+ }
51
136
  function isRouted(language) {
52
137
  const env = process.env.LATTICE_SENSOR_KERNEL_LANGS;
53
138
  if (env === undefined || env === '')
@@ -65,6 +150,29 @@ function kernelRoutes(language) {
65
150
  }
66
151
  /** Warned-once registry so a broken language logs a single line, not one per file. */
67
152
  const warned = new Set();
153
+ /**
154
+ * One-slot defer memo. A file the kernel defers (parse errors → wasm) used to
155
+ * pay the full pipeline again at every seam: the worker's raw try blanked +
156
+ * native-parsed it, extractFromSource's kernel try blanked + native-parsed it
157
+ * AGAIN, and the wasm extractor then re-applied preParse a third time. On a
158
+ * high-deferral tree (the Linux kernel defers ~79% of files) that waste
159
+ * dominated the arm's parse phase. The slot remembers the LAST deferred
160
+ * (file, source, language) so (a) a repeat kernel attempt for the same file
161
+ * short-circuits to null, and (b) the wasm fallback can reuse the
162
+ * already-blanked source instead of re-running preParse. Source is matched by
163
+ * string identity — the worker passes the same string through every seam.
164
+ */
165
+ let deferSlot = null;
166
+ /** The hoisted preParse output for a just-deferred file, if it matches. */
167
+ function takeDeferredPreParse(filePath, source, language) {
168
+ if (deferSlot &&
169
+ deferSlot.filePath === filePath &&
170
+ deferSlot.source === source &&
171
+ deferSlot.language === language) {
172
+ return deferSlot.pre;
173
+ }
174
+ return null;
175
+ }
68
176
  /**
69
177
  * Extract via the kernel WITHOUT decoding — the bulk-index fast path. The
70
178
  * tables ride to the store boundary as buffers (decoded on the store worker),
@@ -79,8 +187,11 @@ function tryKernelExtractRaw(filePath, source, language) {
79
187
  const kernel = (0, loader_1.getKernel)();
80
188
  if (!kernel)
81
189
  return null;
190
+ if (takeDeferredPreParse(filePath, source, language) !== null)
191
+ return null; // already deferred
192
+ const pre = preParsedSource(filePath, source, language);
82
193
  try {
83
- const buffers = kernel.extractFile(filePath, source, language);
194
+ const buffers = kernel.extractFile(filePath, pre, language);
84
195
  const meta = buffers.meta;
85
196
  if (meta.readUInt8(layout_1.META.version) !== layout_1.KERNEL_ABI_VERSION) {
86
197
  throw new Error(`kernel buffer ABI ${meta.readUInt8(0)} != expected ${layout_1.KERNEL_ABI_VERSION}`);
@@ -100,8 +211,10 @@ function tryKernelExtractRaw(filePath, source, language) {
100
211
  }
101
212
  catch (err) {
102
213
  const message = err instanceof Error ? err.message : String(err);
103
- if (message.includes('defer:'))
214
+ if (message.includes('defer:')) {
215
+ deferSlot = { filePath, source, language, pre };
104
216
  return null;
217
+ }
105
218
  if (!warned.has(language)) {
106
219
  warned.add(language);
107
220
  process.stderr.write(`[lattice-sensor-kernel] ${language} extraction failed (${message}) — falling back to the wasm path\n`);
@@ -136,13 +249,12 @@ function tryKernelExtract(filePath, source, language) {
136
249
  const kernel = (0, loader_1.getKernel)();
137
250
  if (!kernel)
138
251
  return null;
252
+ if (takeDeferredPreParse(filePath, source, language) !== null)
253
+ return null; // already deferred
139
254
  const t0 = Date.now();
255
+ const pre = preParsedSource(filePath, source, language);
140
256
  try {
141
- // NOTE(T2 languages): when a preParse-carrying language (csharp #237,
142
- // metal #1121, cuda #1172, c/cpp macro blanking) routes here, its
143
- // offset-preserving preParse hook must be applied to `source` first —
144
- // wire that alongside the language's port, gated WITH its equivalence run.
145
- const buffers = kernel.extractFile(filePath, source, language);
257
+ const buffers = kernel.extractFile(filePath, pre, language);
146
258
  const result = (0, decode_1.decodeExtractBuffers)(buffers, filePath, language);
147
259
  POST_PASSES[language]?.(result, source);
148
260
  result.durationMs = Date.now() - t0;
@@ -153,8 +265,10 @@ function tryKernelExtract(filePath, source, language) {
153
265
  // `defer:` is the kernel's expected-routing signal (files with parse
154
266
  // errors take the wasm path — its error RECOVERY is the canonical one;
155
267
  // recovery differs between UTF-8 and UTF-16 parsing). Silent by design.
156
- if (message.includes('defer:'))
268
+ if (message.includes('defer:')) {
269
+ deferSlot = { filePath, source, language, pre };
157
270
  return null;
271
+ }
158
272
  if (!warned.has(language)) {
159
273
  warned.add(language);
160
274
  process.stderr.write(`[lattice-sensor-kernel] ${language} extraction failed (${message}) — falling back to the wasm path\n`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extraction/kernel/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extraction/kernel/index.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@
16
16
  * NODE_KINDS/EDGE_KINDS at load time, so a stale .node degrades to the wasm
17
17
  * path instead of mis-decoding.
18
18
  */
19
- export declare const KERNEL_ABI_VERSION = 2;
19
+ export declare const KERNEL_ABI_VERSION = 3;
20
20
  /** Sentinel for "absent" in u32 slots and string-ref offsets. */
21
21
  export declare const NONE = 4294967295;
22
22
  export declare const META_SIZE = 36;
@@ -70,6 +70,7 @@ export declare const EDGE: {
70
70
  export declare const REF: {
71
71
  readonly fromIdx: 0;
72
72
  readonly kind: 4;
73
+ readonly flags: 5;
73
74
  readonly line: 8;
74
75
  readonly column: 12;
75
76
  readonly referenceName: 16;
@@ -79,6 +80,14 @@ export declare const REF: {
79
80
  };
80
81
  /** ReferenceKind wire code for the internal-only `function_ref` (#756). */
81
82
  export declare const FUNCTION_REF_CODE = 200;
83
+ /**
84
+ * Ref-row flag bits (v2). FILE_PATH: the ref carries `filePath` = the
85
+ * extracted file — the ruby/php visitNode hooks set `filePath: ctx.filePath`
86
+ * on their mixin/trait `implements` refs (unlike every other extraction ref,
87
+ * which the store denormalizes); decode re-attaches its own filePath
88
+ * parameter, which is byte-identical.
89
+ */
90
+ export declare const REF_FLAG_FILE_PATH = 1;
82
91
  /** Node bool-flag bit pairs: bit(2n) = present, bit(2n+1) = value. */
83
92
  export declare const FLAG: {
84
93
  readonly isExported: 0;
@@ -1 +1 @@
1
- {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/extraction/kernel/layout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,iEAAiE;AACjE,eAAO,MAAM,IAAI,aAAa,CAAC;AAE/B,eAAO,MAAM,SAAS,KAAK,CAAC;AAC5B,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC,eAAO,MAAM,YAAY,KAAK,CAAC;AAE/B,wBAAwB;AACxB,eAAO,MAAM,IAAI;;;;;;;;;CASP,CAAC;AAEX,4BAA4B;AAC5B,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;CAkBP,CAAC;AAEX,4BAA4B;AAC5B,eAAO,MAAM,IAAI;;;;;;;;;;CAUP,CAAC;AAEX,2BAA2B;AAC3B,eAAO,MAAM,GAAG;;;;;;;;;CASN,CAAC;AAEX,2EAA2E;AAC3E,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC,sEAAsE;AACtE,eAAO,MAAM,IAAI;;;;;CAKP,CAAC;AAEX,2CAA2C;AAC3C,eAAO,MAAM,YAAY,oEAAqE,CAAC;AAE/F,2CAA2C;AAC3C,eAAO,MAAM,WAAW,0DAA2D,CAAC"}
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/extraction/kernel/layout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,iEAAiE;AACjE,eAAO,MAAM,IAAI,aAAa,CAAC;AAE/B,eAAO,MAAM,SAAS,KAAK,CAAC;AAC5B,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC,eAAO,MAAM,aAAa,KAAK,CAAC;AAChC,eAAO,MAAM,YAAY,KAAK,CAAC;AAE/B,wBAAwB;AACxB,eAAO,MAAM,IAAI;;;;;;;;;CASP,CAAC;AAEX,4BAA4B;AAC5B,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;CAkBP,CAAC;AAEX,4BAA4B;AAC5B,eAAO,MAAM,IAAI;;;;;;;;;;CAUP,CAAC;AAEX,2BAA2B;AAC3B,eAAO,MAAM,GAAG;;;;;;;;;;CAUN,CAAC;AAEX,2EAA2E;AAC3E,eAAO,MAAM,iBAAiB,MAAM,CAAC;AAErC;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,IAAI,CAAC;AAEpC,sEAAsE;AACtE,eAAO,MAAM,IAAI;;;;;CAKP,CAAC;AAEX,2CAA2C;AAC3C,eAAO,MAAM,YAAY,oEAAqE,CAAC;AAE/F,2CAA2C;AAC3C,eAAO,MAAM,WAAW,0DAA2D,CAAC"}
@@ -18,8 +18,8 @@
18
18
  * path instead of mis-decoding.
19
19
  */
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.PROVENANCES = exports.VISIBILITIES = exports.FLAG = exports.FUNCTION_REF_CODE = exports.REF = exports.EDGE = exports.NODE = exports.META = exports.REF_ROW_SIZE = exports.EDGE_ROW_SIZE = exports.NODE_ROW_SIZE = exports.META_SIZE = exports.NONE = exports.KERNEL_ABI_VERSION = void 0;
22
- exports.KERNEL_ABI_VERSION = 2;
21
+ exports.PROVENANCES = exports.VISIBILITIES = exports.FLAG = exports.REF_FLAG_FILE_PATH = exports.FUNCTION_REF_CODE = exports.REF = exports.EDGE = exports.NODE = exports.META = exports.REF_ROW_SIZE = exports.EDGE_ROW_SIZE = exports.NODE_ROW_SIZE = exports.META_SIZE = exports.NONE = exports.KERNEL_ABI_VERSION = void 0;
22
+ exports.KERNEL_ABI_VERSION = 3;
23
23
  /** Sentinel for "absent" in u32 slots and string-ref offsets. */
24
24
  exports.NONE = 0xffffffff;
25
25
  exports.META_SIZE = 36;
@@ -73,6 +73,7 @@ exports.EDGE = {
73
73
  exports.REF = {
74
74
  fromIdx: 0, // u32 (NONE → fromIdStr)
75
75
  kind: 4, // u8 — EDGE_KINDS index, or FUNCTION_REF_CODE
76
+ flags: 5, // u8 — REF_FLAGS bits (v2)
76
77
  line: 8, // u32
77
78
  column: 12, // u32
78
79
  referenceName: 16, // str
@@ -82,6 +83,14 @@ exports.REF = {
82
83
  };
83
84
  /** ReferenceKind wire code for the internal-only `function_ref` (#756). */
84
85
  exports.FUNCTION_REF_CODE = 200;
86
+ /**
87
+ * Ref-row flag bits (v2). FILE_PATH: the ref carries `filePath` = the
88
+ * extracted file — the ruby/php visitNode hooks set `filePath: ctx.filePath`
89
+ * on their mixin/trait `implements` refs (unlike every other extraction ref,
90
+ * which the store denormalizes); decode re-attaches its own filePath
91
+ * parameter, which is byte-identical.
92
+ */
93
+ exports.REF_FLAG_FILE_PATH = 1;
85
94
  /** Node bool-flag bit pairs: bit(2n) = present, bit(2n+1) = value. */
86
95
  exports.FLAG = {
87
96
  isExported: 0,
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/extraction/kernel/layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/extraction/kernel/layout.ts"],"names":[],"mappings":"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"}
@@ -43,10 +43,52 @@ export interface KernelGrammarInfo {
43
43
  nodeKinds: string[];
44
44
  fieldNames: string[];
45
45
  }
46
+ /** Input to the cFnPtr extraction sweep: one file's raw text + its struct
47
+ * node extents (`endLine ?? startLine` applied by the caller). */
48
+ export interface CfnptrFileIn {
49
+ text: string;
50
+ structs: {
51
+ id: string;
52
+ startLine: number;
53
+ endLine: number;
54
+ }[];
55
+ }
56
+ /** Per-file facts from the native cFnPtr extraction sweep — mirror of the
57
+ * Rust `CfnptrFacts` (see lattice-sensor-kernel/src/cfnptr.rs); semantics match
58
+ * the JS sweep in src/resolution/c-fnptr-synthesizer.ts. */
59
+ export interface CfnptrFactsOut {
60
+ fnPtrTypedefs: string[];
61
+ fnTypeTypedefs: string[];
62
+ structs: {
63
+ id: string;
64
+ parsed: boolean;
65
+ fields: {
66
+ name: string;
67
+ index: number;
68
+ ptr: boolean;
69
+ type: string;
70
+ }[];
71
+ }[];
72
+ inlinePtr: boolean;
73
+ inlineTypes: string[];
74
+ inlineTags: string[];
75
+ initTokens: string[];
76
+ arrayElems: string[];
77
+ aliasNames: string[];
78
+ dPairs: string[];
79
+ dispatchFields: string[];
80
+ arrayDispatchNames: string[];
81
+ includes: string[];
82
+ }
46
83
  export interface KernelModule {
47
84
  extractFile(filePath: string, content: string, language: string): KernelBuffers;
48
85
  contractInfo(): KernelContractInfo;
49
86
  grammarInfo(language: string): KernelGrammarInfo | null;
87
+ /** Batched cFnPtr extraction sweep (task #5 step 2). OPTIONAL: absent on
88
+ * older binaries — callers feature-detect and keep their JS path. */
89
+ cfnptrScanFiles?(files: CfnptrFileIn[]): CfnptrFactsOut[];
90
+ /** Native `stripCommentsForRegex(text, 'c')` — differential-oracle hook. */
91
+ cfnptrStripC?(text: string): string;
50
92
  }
51
93
  /**
52
94
  * Load (once per process) and return the kernel module, or null when
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/extraction/kernel/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAQH,0EAA0E;AAC1E,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,CAAC;IAChF,YAAY,IAAI,kBAAkB,CAAC;IACnC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAAC;CACzD;AAgDD;;;;GAIG;AACH,wBAAgB,SAAS,IAAI,YAAY,GAAG,IAAI,CAuB/C;AAED,iGAAiG;AACjG,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,IAAI,IAAI,CAG1C"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../src/extraction/kernel/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAQH,0EAA0E;AAC1E,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;mEACmE;AACnE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC/D;AAED;;6DAE6D;AAC7D,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,OAAO,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE,EAAE,CAAA;KAAE,EAAE,CAAC;IAClH,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,CAAC;IAChF,YAAY,IAAI,kBAAkB,CAAC;IACnC,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAAC;IACxD;0EACsE;IACtE,eAAe,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,GAAG,cAAc,EAAE,CAAC;IAC1D,4EAA4E;IAC5E,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;CACrC;AAgDD;;;;GAIG;AACH,wBAAgB,SAAS,IAAI,YAAY,GAAG,IAAI,CAuB/C;AAED,iGAAiG;AACjG,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAGxD;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,IAAI,IAAI,CAG1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/extraction/kernel/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../src/extraction/kernel/loader.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyHH,8BAuBC;AAGD,wCAGC;AAGD,kDAGC;AA1JD,uCAAyB;AACzB,2CAA6B;AAC7B,mCAAuC;AACvC,uCAAqD;AACrD,qCAA8C;AAgE9C,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,KAAK,GAAG,CAAC;AAC3E,SAAS,KAAK,CAAC,GAAW;IACxB,IAAI,YAAY,EAAE;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,GAAG,IAAI,CAAC,CAAC;AAC/E,CAAC;AAED,sFAAsF;AACtF,IAAI,eAAe,GAAwB,IAAI,GAAG,EAAE,CAAC;AACrD,uEAAuE;AACvE,IAAI,MAAuC,CAAC;AAE5C,SAAS,cAAc;IACrB,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,IAAI,OAAO,CAAC,GAAG,CAAC,0BAA0B;QAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;IACpG,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9D,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,4BAA4B,CAAC,CAAC,CAAC;IAChF,UAAU,CAAC,IAAI,CACb,IAAI,CAAC,IAAI,CACP,WAAW,EACX,uBAAuB,EACvB,WAAW,EACX,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,EACrC,4BAA4B,CAC7B,CACF,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;GAGG;AACH,SAAS,cAAc,CAAC,GAAiB,EAAE,IAAY;IACrD,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;IAChC,IAAI,IAAI,CAAC,UAAU,KAAK,2BAAkB,EAAE,CAAC;QAC3C,KAAK,CAAC,GAAG,IAAI,SAAS,IAAI,CAAC,UAAU,gBAAgB,2BAAkB,oBAAoB,CAAC,CAAC;QAC7F,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,SAAS,GAAG,CAAC,CAAoB,EAAE,CAAoB,EAAE,EAAE,CAC/D,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAU,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAU,CAAC,EAAE,CAAC;QACrF,KAAK,CAAC,GAAG,IAAI,uEAAuE,CAAC,CAAC;QACtF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,SAAgB,SAAS;IACvB,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,GAAG,IAAI,CAAC;IACd,KAAK,MAAM,SAAS,IAAI,cAAc,EAAE,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;gBAAE,SAAS;YACxC,mEAAmE;YACnE,MAAM,GAAG,GAAG,IAAA,sBAAa,EAAC,UAAU,CAAC,CAAC;YACtC,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAiB,CAAC;YAC3C,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,UAAU,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;gBACpF,KAAK,CAAC,GAAG,SAAS,uCAAuC,CAAC,CAAC;gBAC3D,SAAS;YACX,CAAC;YACD,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC;gBAAE,SAAS;YAC9C,eAAe,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC;YACxD,KAAK,CAAC,UAAU,SAAS,gBAAgB,CAAC,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7E,MAAM,GAAG,GAAG,CAAC;YACb,MAAM;QACR,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,GAAG,SAAS,sBAAsB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,iGAAiG;AACjG,SAAgB,cAAc,CAAC,QAAgB;IAC7C,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IAC5D,OAAO,SAAS,EAAE,KAAK,IAAI,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC/D,CAAC;AAED,4EAA4E;AAC5E,SAAgB,mBAAmB;IACjC,MAAM,GAAG,SAAS,CAAC;IACnB,eAAe,GAAG,IAAI,GAAG,EAAE,CAAC;AAC9B,CAAC"}
@@ -103,9 +103,22 @@ export declare function blankMetalAttributes(source: string): string;
103
103
  * class.
104
104
  */
105
105
  export declare function blankCppAnnotationMacroCalls(source: string): string;
106
+ export declare function blankLoneMacroLines(source: string): string;
106
107
  export declare function blankCppApiPrefixMacros(source: string): string;
107
108
  export declare function blankCppInlineAnnotationMacros(source: string): string;
108
109
  export declare function blankCudaConstructs(source: string): string;
109
110
  export declare function blankCLeadingAttrMacros(source: string): string;
111
+ export declare function blankCCplusplusGuardBodies(source: string): string;
112
+ export declare function blankCStatementMacroCalls(source: string): string;
113
+ export declare function blankCSandwichedAnnotations(source: string): string;
114
+ export declare function blankCAutoInference(source: string): string;
115
+ export declare function blankCTrailingParamAttrMacros(source: string): string;
116
+ export declare function blankCKernelAnnotations(source: string): string;
117
+ export declare function blankCParameterizedAnnotationMacros(source: string): string;
118
+ export declare function blankCTypeKeywordArgs(source: string): string;
119
+ export declare function blankCFileScopePrefixedDeclMacros(source: string): string;
120
+ export declare function rewriteCPrefixedDeclMacroInitializers(source: string): string;
121
+ export declare function blankCVaArgQualifiedTypeArgs(source: string): string;
122
+ export declare function blankCNamedVariadicDefineDots(source: string): string;
110
123
  export declare const cppExtractor: LanguageExtractor;
111
124
  //# sourceMappingURL=c-cpp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"c-cpp.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/c-cpp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAgH9D;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAkBtE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUzD;AAaD,eAAO,MAAM,UAAU,EAAE,iBAuDxB,CAAC;AAoCF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAM3D;AA8ED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG3D;AAWD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQ1D;AAyBD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAwCnE;AA4BD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG9D;AAuBD,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAiCrE;AAiDD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAmB1D;AA+DD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAK9D;AAWD,eAAO,MAAM,YAAY,EAAE,iBAsF1B,CAAC"}
1
+ {"version":3,"file":"c-cpp.d.ts","sourceRoot":"","sources":["../../../src/extraction/languages/c-cpp.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAgH9D;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAkBtE;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUzD;AAaD,eAAO,MAAM,UAAU,EAAE,iBAuDxB,CAAC;AAoCF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAM3D;AA8ED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG3D;AAWD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAQ1D;AAyBD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAwCnE;AA8BD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CA2B1D;AA4BD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG9D;AAuBD,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAiCrE;AAiDD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAmB1D;AAuGD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAK9D;AAoCD,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAwBjE;AAgCD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAyGhE;AAoBD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQlE;AAWD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAK1D;AAmBD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAUpE;AA+CD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAkB9D;AA8BD,wBAAgB,mCAAmC,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAwB1E;AAwCD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAsE5D;AAyBD,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAqCxE;AAoBD,wBAAgB,qCAAqC,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAyB5E;AAaD,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAOnE;AAiBD,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAapE;AAwCD,eAAO,MAAM,YAAY,EAAE,iBAsF1B,CAAC"}