@quolu/lattice 0.70.0 → 0.71.1
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/bin/lattice.mjs +21 -0
- package/package.json +1 -1
- package/sensor/dist/bin/lattice-sensor.js +746 -323
- package/sensor/dist/bin/viewer-gate.d.ts +17 -0
- package/sensor/dist/bin/viewer-gate.d.ts.map +1 -0
- package/sensor/dist/bin/viewer-gate.js +31 -0
- package/sensor/dist/bin/viewer-gate.js.map +1 -0
- package/sensor/dist/context/formatter.d.ts +7 -1
- package/sensor/dist/context/formatter.d.ts.map +1 -1
- package/sensor/dist/context/formatter.js +12 -6
- package/sensor/dist/context/formatter.js.map +1 -1
- package/sensor/dist/context/index.d.ts +12 -0
- package/sensor/dist/context/index.d.ts.map +1 -1
- package/sensor/dist/context/index.js +103 -16
- package/sensor/dist/context/index.js.map +1 -1
- package/sensor/dist/db/index.d.ts +23 -2
- package/sensor/dist/db/index.d.ts.map +1 -1
- package/sensor/dist/db/index.js +109 -31
- package/sensor/dist/db/index.js.map +1 -1
- package/sensor/dist/db/migrations.d.ts +1 -1
- package/sensor/dist/db/migrations.d.ts.map +1 -1
- package/sensor/dist/db/migrations.js +68 -1
- package/sensor/dist/db/migrations.js.map +1 -1
- package/sensor/dist/db/queries.d.ts +583 -6
- package/sensor/dist/db/queries.d.ts.map +1 -1
- package/sensor/dist/db/queries.js +1425 -57
- package/sensor/dist/db/queries.js.map +1 -1
- package/sensor/dist/db/schema.sql +27 -4
- package/sensor/dist/db/sqlite-adapter.d.ts +2 -0
- package/sensor/dist/db/sqlite-adapter.d.ts.map +1 -1
- package/sensor/dist/db/sqlite-adapter.js +56 -7
- package/sensor/dist/db/sqlite-adapter.js.map +1 -1
- package/sensor/dist/db/synthesis-stage.d.ts +12 -0
- package/sensor/dist/db/synthesis-stage.d.ts.map +1 -0
- package/sensor/dist/db/synthesis-stage.js +93 -0
- package/sensor/dist/db/synthesis-stage.js.map +1 -0
- package/sensor/dist/db/wal-valve.d.ts +32 -12
- package/sensor/dist/db/wal-valve.d.ts.map +1 -1
- package/sensor/dist/db/wal-valve.js +65 -22
- package/sensor/dist/db/wal-valve.js.map +1 -1
- package/sensor/dist/db/wsl-shared-index.d.ts +53 -0
- package/sensor/dist/db/wsl-shared-index.d.ts.map +1 -0
- package/sensor/dist/db/wsl-shared-index.js +121 -0
- package/sensor/dist/db/wsl-shared-index.js.map +1 -0
- package/sensor/dist/directory.d.ts +126 -2
- package/sensor/dist/directory.d.ts.map +1 -1
- package/sensor/dist/directory.js +285 -16
- package/sensor/dist/directory.js.map +1 -1
- package/sensor/dist/errors.d.ts +14 -0
- package/sensor/dist/errors.d.ts.map +1 -1
- package/sensor/dist/errors.js +16 -1
- package/sensor/dist/errors.js.map +1 -1
- package/sensor/dist/extraction/cfml-extractor.d.ts +1 -0
- package/sensor/dist/extraction/cfml-extractor.d.ts.map +1 -1
- package/sensor/dist/extraction/cfml-extractor.js +15 -3
- package/sensor/dist/extraction/cfml-extractor.js.map +1 -1
- package/sensor/dist/extraction/dfm-extractor.d.ts.map +1 -1
- package/sensor/dist/extraction/dfm-extractor.js +14 -10
- package/sensor/dist/extraction/dfm-extractor.js.map +1 -1
- package/sensor/dist/extraction/extraction-version.d.ts +1 -1
- package/sensor/dist/extraction/extraction-version.d.ts.map +1 -1
- package/sensor/dist/extraction/extraction-version.js +3 -1
- package/sensor/dist/extraction/extraction-version.js.map +1 -1
- package/sensor/dist/extraction/function-ref.d.ts +6 -4
- package/sensor/dist/extraction/function-ref.d.ts.map +1 -1
- package/sensor/dist/extraction/function-ref.js +35 -14
- package/sensor/dist/extraction/function-ref.js.map +1 -1
- package/sensor/dist/extraction/generated-detection.d.ts +48 -12
- package/sensor/dist/extraction/generated-detection.d.ts.map +1 -1
- package/sensor/dist/extraction/generated-detection.js +176 -11
- package/sensor/dist/extraction/generated-detection.js.map +1 -1
- package/sensor/dist/extraction/grammars.d.ts +38 -0
- package/sensor/dist/extraction/grammars.d.ts.map +1 -1
- package/sensor/dist/extraction/grammars.js +115 -3
- package/sensor/dist/extraction/grammars.js.map +1 -1
- package/sensor/dist/extraction/index.d.ts +218 -14
- package/sensor/dist/extraction/index.d.ts.map +1 -1
- package/sensor/dist/extraction/index.js +887 -175
- package/sensor/dist/extraction/index.js.map +1 -1
- package/sensor/dist/extraction/languages/c-cpp.d.ts +58 -0
- package/sensor/dist/extraction/languages/c-cpp.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/c-cpp.js +310 -19
- package/sensor/dist/extraction/languages/c-cpp.js.map +1 -1
- package/sensor/dist/extraction/languages/dart.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/dart.js +8 -3
- package/sensor/dist/extraction/languages/dart.js.map +1 -1
- package/sensor/dist/extraction/languages/erlang.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/erlang.js +58 -22
- package/sensor/dist/extraction/languages/erlang.js.map +1 -1
- package/sensor/dist/extraction/languages/javascript.js +1 -1
- package/sensor/dist/extraction/languages/javascript.js.map +1 -1
- package/sensor/dist/extraction/languages/kotlin.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/kotlin.js +169 -36
- package/sensor/dist/extraction/languages/kotlin.js.map +1 -1
- package/sensor/dist/extraction/languages/lua.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/lua.js +4 -1
- package/sensor/dist/extraction/languages/lua.js.map +1 -1
- package/sensor/dist/extraction/languages/objc.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/objc.js +4 -0
- package/sensor/dist/extraction/languages/objc.js.map +1 -1
- package/sensor/dist/extraction/languages/python.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/python.js +71 -0
- package/sensor/dist/extraction/languages/python.js.map +1 -1
- package/sensor/dist/extraction/languages/rust.d.ts +20 -0
- package/sensor/dist/extraction/languages/rust.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/rust.js +50 -20
- package/sensor/dist/extraction/languages/rust.js.map +1 -1
- package/sensor/dist/extraction/languages/scala.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/scala.js +18 -3
- package/sensor/dist/extraction/languages/scala.js.map +1 -1
- package/sensor/dist/extraction/languages/swift.d.ts +15 -0
- package/sensor/dist/extraction/languages/swift.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/swift.js +50 -0
- package/sensor/dist/extraction/languages/swift.js.map +1 -1
- package/sensor/dist/extraction/languages/typescript.d.ts.map +1 -1
- package/sensor/dist/extraction/languages/typescript.js +9 -2
- package/sensor/dist/extraction/languages/typescript.js.map +1 -1
- package/sensor/dist/extraction/liquid-extractor.d.ts +18 -0
- package/sensor/dist/extraction/liquid-extractor.d.ts.map +1 -1
- package/sensor/dist/extraction/liquid-extractor.js +98 -22
- package/sensor/dist/extraction/liquid-extractor.js.map +1 -1
- package/sensor/dist/extraction/mybatis-extractor.d.ts.map +1 -1
- package/sensor/dist/extraction/mybatis-extractor.js +6 -4
- package/sensor/dist/extraction/mybatis-extractor.js.map +1 -1
- package/sensor/dist/extraction/parse-pool.d.ts +7 -0
- package/sensor/dist/extraction/parse-pool.d.ts.map +1 -1
- package/sensor/dist/extraction/parse-pool.js +20 -1
- package/sensor/dist/extraction/parse-pool.js.map +1 -1
- package/sensor/dist/extraction/syntax-tokens.d.ts +103 -0
- package/sensor/dist/extraction/syntax-tokens.d.ts.map +1 -0
- package/sensor/dist/extraction/syntax-tokens.js +381 -0
- package/sensor/dist/extraction/syntax-tokens.js.map +1 -0
- package/sensor/dist/extraction/tree-sitter-helpers.d.ts +5 -0
- package/sensor/dist/extraction/tree-sitter-helpers.d.ts.map +1 -1
- package/sensor/dist/extraction/tree-sitter-helpers.js +17 -0
- package/sensor/dist/extraction/tree-sitter-helpers.js.map +1 -1
- package/sensor/dist/extraction/tree-sitter-types.d.ts +31 -3
- package/sensor/dist/extraction/tree-sitter-types.d.ts.map +1 -1
- package/sensor/dist/extraction/tree-sitter.d.ts +101 -18
- package/sensor/dist/extraction/tree-sitter.d.ts.map +1 -1
- package/sensor/dist/extraction/tree-sitter.js +928 -134
- package/sensor/dist/extraction/tree-sitter.js.map +1 -1
- package/sensor/dist/extraction/wasm/tree-sitter-scala.wasm +0 -0
- package/sensor/dist/file-limits.d.ts +40 -0
- package/sensor/dist/file-limits.d.ts.map +1 -0
- package/sensor/dist/file-limits.js +147 -0
- package/sensor/dist/file-limits.js.map +1 -0
- package/sensor/dist/graph/branch-guards.d.ts +265 -0
- package/sensor/dist/graph/branch-guards.d.ts.map +1 -0
- package/sensor/dist/graph/branch-guards.js +2325 -0
- package/sensor/dist/graph/branch-guards.js.map +1 -0
- package/sensor/dist/graph/dead-code.d.ts +251 -0
- package/sensor/dist/graph/dead-code.d.ts.map +1 -0
- package/sensor/dist/graph/dead-code.js +776 -0
- package/sensor/dist/graph/dead-code.js.map +1 -0
- package/sensor/dist/graph/dynamic-boundary-report.d.ts +121 -0
- package/sensor/dist/graph/dynamic-boundary-report.d.ts.map +1 -0
- package/sensor/dist/graph/dynamic-boundary-report.js +283 -0
- package/sensor/dist/graph/dynamic-boundary-report.js.map +1 -0
- package/sensor/dist/graph/index.d.ts +4 -0
- package/sensor/dist/graph/index.d.ts.map +1 -1
- package/sensor/dist/graph/index.js +16 -1
- package/sensor/dist/graph/index.js.map +1 -1
- package/sensor/dist/graph/named-symbol-flow.d.ts +125 -0
- package/sensor/dist/graph/named-symbol-flow.d.ts.map +1 -0
- package/sensor/dist/graph/named-symbol-flow.js +552 -0
- package/sensor/dist/graph/named-symbol-flow.js.map +1 -0
- package/sensor/dist/graph/queries.d.ts.map +1 -1
- package/sensor/dist/graph/queries.js +2 -0
- package/sensor/dist/graph/queries.js.map +1 -1
- package/sensor/dist/graph/symbol-lookup.d.ts +83 -0
- package/sensor/dist/graph/symbol-lookup.d.ts.map +1 -0
- package/sensor/dist/graph/symbol-lookup.js +181 -0
- package/sensor/dist/graph/symbol-lookup.js.map +1 -0
- package/sensor/dist/graph/traversal.d.ts +9 -0
- package/sensor/dist/graph/traversal.d.ts.map +1 -1
- package/sensor/dist/graph/traversal.js +62 -36
- package/sensor/dist/graph/traversal.js.map +1 -1
- package/sensor/dist/graph/type-hierarchy.d.ts +155 -0
- package/sensor/dist/graph/type-hierarchy.d.ts.map +1 -0
- package/sensor/dist/graph/type-hierarchy.js +382 -0
- package/sensor/dist/graph/type-hierarchy.js.map +1 -0
- package/sensor/dist/index.d.ts +272 -10
- package/sensor/dist/index.d.ts.map +1 -1
- package/sensor/dist/index.js +510 -34
- package/sensor/dist/index.js.map +1 -1
- package/sensor/dist/mcp/answer-freshness.d.ts +10 -0
- package/sensor/dist/mcp/answer-freshness.d.ts.map +1 -0
- package/sensor/dist/mcp/answer-freshness.js +68 -0
- package/sensor/dist/mcp/answer-freshness.js.map +1 -0
- package/sensor/dist/mcp/daemon-manager.d.ts +1 -1
- package/sensor/dist/mcp/daemon-manager.d.ts.map +1 -1
- package/sensor/dist/mcp/daemon-manager.js +17 -1
- package/sensor/dist/mcp/daemon-manager.js.map +1 -1
- package/sensor/dist/mcp/daemon-paths.d.ts +8 -0
- package/sensor/dist/mcp/daemon-paths.d.ts.map +1 -1
- package/sensor/dist/mcp/daemon-paths.js +65 -2
- package/sensor/dist/mcp/daemon-paths.js.map +1 -1
- package/sensor/dist/mcp/daemon-registry.d.ts +17 -4
- package/sensor/dist/mcp/daemon-registry.d.ts.map +1 -1
- package/sensor/dist/mcp/daemon-registry.js +133 -23
- package/sensor/dist/mcp/daemon-registry.js.map +1 -1
- package/sensor/dist/mcp/daemon.d.ts +26 -13
- package/sensor/dist/mcp/daemon.d.ts.map +1 -1
- package/sensor/dist/mcp/daemon.js +126 -32
- package/sensor/dist/mcp/daemon.js.map +1 -1
- package/sensor/dist/mcp/dynamic-boundaries.d.ts +1 -10
- package/sensor/dist/mcp/dynamic-boundaries.d.ts.map +1 -1
- package/sensor/dist/mcp/dynamic-boundaries.js +46 -42
- package/sensor/dist/mcp/dynamic-boundaries.js.map +1 -1
- package/sensor/dist/mcp/engine.d.ts +31 -9
- package/sensor/dist/mcp/engine.d.ts.map +1 -1
- package/sensor/dist/mcp/engine.js +190 -79
- package/sensor/dist/mcp/engine.js.map +1 -1
- package/sensor/dist/mcp/explore-dedup.d.ts +140 -0
- package/sensor/dist/mcp/explore-dedup.d.ts.map +1 -0
- package/sensor/dist/mcp/explore-dedup.js +239 -0
- package/sensor/dist/mcp/explore-dedup.js.map +1 -0
- package/sensor/dist/mcp/explore-diagnostics.d.ts +289 -0
- package/sensor/dist/mcp/explore-diagnostics.d.ts.map +1 -0
- package/sensor/dist/mcp/explore-diagnostics.js +558 -0
- package/sensor/dist/mcp/explore-diagnostics.js.map +1 -0
- package/sensor/dist/mcp/explore-session-state.d.ts +217 -0
- package/sensor/dist/mcp/explore-session-state.d.ts.map +1 -0
- package/sensor/dist/mcp/explore-session-state.js +322 -0
- package/sensor/dist/mcp/explore-session-state.js.map +1 -0
- package/sensor/dist/mcp/index-freshness-worker.d.ts +2 -0
- package/sensor/dist/mcp/index-freshness-worker.d.ts.map +1 -0
- package/sensor/dist/mcp/index-freshness-worker.js +30 -0
- package/sensor/dist/mcp/index-freshness-worker.js.map +1 -0
- package/sensor/dist/mcp/index-freshness.d.ts +7 -0
- package/sensor/dist/mcp/index-freshness.d.ts.map +1 -0
- package/sensor/dist/mcp/index-freshness.js +94 -0
- package/sensor/dist/mcp/index-freshness.js.map +1 -0
- package/sensor/dist/mcp/index.d.ts +3 -1
- package/sensor/dist/mcp/index.d.ts.map +1 -1
- package/sensor/dist/mcp/index.js +109 -12
- package/sensor/dist/mcp/index.js.map +1 -1
- package/sensor/dist/mcp/liveness-watchdog.d.ts +4 -1
- package/sensor/dist/mcp/liveness-watchdog.d.ts.map +1 -1
- package/sensor/dist/mcp/liveness-watchdog.js +11 -2
- package/sensor/dist/mcp/liveness-watchdog.js.map +1 -1
- package/sensor/dist/mcp/project-lifecycle.d.ts +9 -0
- package/sensor/dist/mcp/project-lifecycle.d.ts.map +1 -0
- package/sensor/dist/mcp/project-lifecycle.js +182 -0
- package/sensor/dist/mcp/project-lifecycle.js.map +1 -0
- package/sensor/dist/mcp/proxy.d.ts.map +1 -1
- package/sensor/dist/mcp/proxy.js +15 -1
- package/sensor/dist/mcp/proxy.js.map +1 -1
- package/sensor/dist/mcp/query-pool.d.ts +2 -2
- package/sensor/dist/mcp/query-pool.d.ts.map +1 -1
- package/sensor/dist/mcp/query-pool.js +9 -7
- package/sensor/dist/mcp/query-pool.js.map +1 -1
- package/sensor/dist/mcp/query-worker.js +2 -2
- package/sensor/dist/mcp/query-worker.js.map +1 -1
- package/sensor/dist/mcp/server-instructions.d.ts +2 -2
- package/sensor/dist/mcp/server-instructions.d.ts.map +1 -1
- package/sensor/dist/mcp/server-instructions.js +13 -6
- package/sensor/dist/mcp/server-instructions.js.map +1 -1
- package/sensor/dist/mcp/session.d.ts +16 -0
- package/sensor/dist/mcp/session.d.ts.map +1 -1
- package/sensor/dist/mcp/session.js +36 -13
- package/sensor/dist/mcp/session.js.map +1 -1
- package/sensor/dist/mcp/startup-handshake.d.ts +3 -1
- package/sensor/dist/mcp/startup-handshake.d.ts.map +1 -1
- package/sensor/dist/mcp/startup-handshake.js +10 -2
- package/sensor/dist/mcp/startup-handshake.js.map +1 -1
- package/sensor/dist/mcp/tools.d.ts +496 -38
- package/sensor/dist/mcp/tools.d.ts.map +1 -1
- package/sensor/dist/mcp/tools.js +4021 -772
- package/sensor/dist/mcp/tools.js.map +1 -1
- package/sensor/dist/mcp/writer-lock.d.ts +61 -0
- package/sensor/dist/mcp/writer-lock.d.ts.map +1 -0
- package/sensor/dist/mcp/writer-lock.js +260 -0
- package/sensor/dist/mcp/writer-lock.js.map +1 -0
- package/sensor/dist/project-config.d.ts +23 -0
- package/sensor/dist/project-config.d.ts.map +1 -1
- package/sensor/dist/project-config.js +39 -2
- package/sensor/dist/project-config.js.map +1 -1
- package/sensor/dist/resolution/alias-binding.d.ts +56 -0
- package/sensor/dist/resolution/alias-binding.d.ts.map +1 -0
- package/sensor/dist/resolution/alias-binding.js +127 -0
- package/sensor/dist/resolution/alias-binding.js.map +1 -0
- package/sensor/dist/resolution/c-fnptr-synthesizer.d.ts.map +1 -1
- package/sensor/dist/resolution/c-fnptr-synthesizer.js +21 -19
- package/sensor/dist/resolution/c-fnptr-synthesizer.js.map +1 -1
- package/sensor/dist/resolution/callback-synthesizer.d.ts +23 -1
- package/sensor/dist/resolution/callback-synthesizer.d.ts.map +1 -1
- package/sensor/dist/resolution/callback-synthesizer.js +356 -155
- package/sensor/dist/resolution/callback-synthesizer.js.map +1 -1
- package/sensor/dist/resolution/cpp-constructor.d.ts +4 -0
- package/sensor/dist/resolution/cpp-constructor.d.ts.map +1 -0
- package/sensor/dist/resolution/cpp-constructor.js +123 -0
- package/sensor/dist/resolution/cpp-constructor.js.map +1 -0
- package/sensor/dist/resolution/cpp-macro-visibility.d.ts +12 -0
- package/sensor/dist/resolution/cpp-macro-visibility.d.ts.map +1 -0
- package/sensor/dist/resolution/cpp-macro-visibility.js +342 -0
- package/sensor/dist/resolution/cpp-macro-visibility.js.map +1 -0
- package/sensor/dist/resolution/expo-router-synthesizer.d.ts +32 -0
- package/sensor/dist/resolution/expo-router-synthesizer.d.ts.map +1 -0
- package/sensor/dist/resolution/expo-router-synthesizer.js +189 -0
- package/sensor/dist/resolution/expo-router-synthesizer.js.map +1 -0
- package/sensor/dist/resolution/frameworks/csharp.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/csharp.js +96 -2
- package/sensor/dist/resolution/frameworks/csharp.js.map +1 -1
- package/sensor/dist/resolution/frameworks/expo-router.d.ts +189 -0
- package/sensor/dist/resolution/frameworks/expo-router.d.ts.map +1 -0
- package/sensor/dist/resolution/frameworks/expo-router.js +785 -0
- package/sensor/dist/resolution/frameworks/expo-router.js.map +1 -0
- package/sensor/dist/resolution/frameworks/express.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/express.js +251 -16
- package/sensor/dist/resolution/frameworks/express.js.map +1 -1
- package/sensor/dist/resolution/frameworks/index.d.ts +5 -0
- package/sensor/dist/resolution/frameworks/index.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/index.js +29 -1
- package/sensor/dist/resolution/frameworks/index.js.map +1 -1
- package/sensor/dist/resolution/frameworks/java.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/java.js +79 -47
- package/sensor/dist/resolution/frameworks/java.js.map +1 -1
- package/sensor/dist/resolution/frameworks/laravel.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/laravel.js +294 -4
- package/sensor/dist/resolution/frameworks/laravel.js.map +1 -1
- package/sensor/dist/resolution/frameworks/nestjs.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/nestjs.js +6 -14
- package/sensor/dist/resolution/frameworks/nestjs.js.map +1 -1
- package/sensor/dist/resolution/frameworks/nextjs.d.ts +76 -0
- package/sensor/dist/resolution/frameworks/nextjs.d.ts.map +1 -0
- package/sensor/dist/resolution/frameworks/nextjs.js +328 -0
- package/sensor/dist/resolution/frameworks/nextjs.js.map +1 -0
- package/sensor/dist/resolution/frameworks/object-literal.d.ts +32 -0
- package/sensor/dist/resolution/frameworks/object-literal.d.ts.map +1 -0
- package/sensor/dist/resolution/frameworks/object-literal.js +139 -0
- package/sensor/dist/resolution/frameworks/object-literal.js.map +1 -0
- package/sensor/dist/resolution/frameworks/package-deps.d.ts +14 -0
- package/sensor/dist/resolution/frameworks/package-deps.d.ts.map +1 -0
- package/sensor/dist/resolution/frameworks/package-deps.js +78 -0
- package/sensor/dist/resolution/frameworks/package-deps.js.map +1 -0
- package/sensor/dist/resolution/frameworks/python.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/python.js +166 -0
- package/sensor/dist/resolution/frameworks/python.js.map +1 -1
- package/sensor/dist/resolution/frameworks/react-native.d.ts +26 -0
- package/sensor/dist/resolution/frameworks/react-native.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/react-native.js +153 -14
- package/sensor/dist/resolution/frameworks/react-native.js.map +1 -1
- package/sensor/dist/resolution/frameworks/react-router.d.ts +46 -0
- package/sensor/dist/resolution/frameworks/react-router.d.ts.map +1 -0
- package/sensor/dist/resolution/frameworks/react-router.js +187 -0
- package/sensor/dist/resolution/frameworks/react-router.js.map +1 -0
- package/sensor/dist/resolution/frameworks/react.d.ts +2 -1
- package/sensor/dist/resolution/frameworks/react.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/react.js +188 -139
- package/sensor/dist/resolution/frameworks/react.js.map +1 -1
- package/sensor/dist/resolution/frameworks/svelte.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/svelte.js +6 -1
- package/sensor/dist/resolution/frameworks/svelte.js.map +1 -1
- package/sensor/dist/resolution/frameworks/sveltekit-router.d.ts +36 -0
- package/sensor/dist/resolution/frameworks/sveltekit-router.d.ts.map +1 -0
- package/sensor/dist/resolution/frameworks/sveltekit-router.js +156 -0
- package/sensor/dist/resolution/frameworks/sveltekit-router.js.map +1 -0
- package/sensor/dist/resolution/frameworks/swift.d.ts.map +1 -1
- package/sensor/dist/resolution/frameworks/swift.js +140 -99
- package/sensor/dist/resolution/frameworks/swift.js.map +1 -1
- package/sensor/dist/resolution/frameworks/tanstack-router.d.ts +84 -0
- package/sensor/dist/resolution/frameworks/tanstack-router.d.ts.map +1 -0
- package/sensor/dist/resolution/frameworks/tanstack-router.js +437 -0
- package/sensor/dist/resolution/frameworks/tanstack-router.js.map +1 -0
- package/sensor/dist/resolution/frameworks/vue-router.d.ts +82 -0
- package/sensor/dist/resolution/frameworks/vue-router.d.ts.map +1 -0
- package/sensor/dist/resolution/frameworks/vue-router.js +377 -0
- package/sensor/dist/resolution/frameworks/vue-router.js.map +1 -0
- package/sensor/dist/resolution/import-resolver.d.ts +38 -0
- package/sensor/dist/resolution/import-resolver.d.ts.map +1 -1
- package/sensor/dist/resolution/import-resolver.js +394 -28
- package/sensor/dist/resolution/import-resolver.js.map +1 -1
- package/sensor/dist/resolution/index.d.ts +89 -25
- package/sensor/dist/resolution/index.d.ts.map +1 -1
- package/sensor/dist/resolution/index.js +573 -148
- package/sensor/dist/resolution/index.js.map +1 -1
- package/sensor/dist/resolution/js-builtins.d.ts +13 -0
- package/sensor/dist/resolution/js-builtins.d.ts.map +1 -0
- package/sensor/dist/resolution/js-builtins.js +46 -0
- package/sensor/dist/resolution/js-builtins.js.map +1 -0
- package/sensor/dist/resolution/name-matcher.d.ts +99 -22
- package/sensor/dist/resolution/name-matcher.d.ts.map +1 -1
- package/sensor/dist/resolution/name-matcher.js +2220 -86
- package/sensor/dist/resolution/name-matcher.js.map +1 -1
- package/sensor/dist/resolution/next-router-synthesizer.d.ts +27 -0
- package/sensor/dist/resolution/next-router-synthesizer.d.ts.map +1 -0
- package/sensor/dist/resolution/next-router-synthesizer.js +113 -0
- package/sensor/dist/resolution/next-router-synthesizer.js.map +1 -0
- package/sensor/dist/resolution/path-aliases.d.ts +6 -4
- package/sensor/dist/resolution/path-aliases.d.ts.map +1 -1
- package/sensor/dist/resolution/path-aliases.js +125 -17
- package/sensor/dist/resolution/path-aliases.js.map +1 -1
- package/sensor/dist/resolution/react-router-synthesizer.d.ts +33 -0
- package/sensor/dist/resolution/react-router-synthesizer.d.ts.map +1 -0
- package/sensor/dist/resolution/react-router-synthesizer.js +126 -0
- package/sensor/dist/resolution/react-router-synthesizer.js.map +1 -0
- package/sensor/dist/resolution/resolver-pool.d.ts +2 -0
- package/sensor/dist/resolution/resolver-pool.d.ts.map +1 -1
- package/sensor/dist/resolution/resolver-pool.js +4 -0
- package/sensor/dist/resolution/resolver-pool.js.map +1 -1
- package/sensor/dist/resolution/strip-comments.d.ts +6 -0
- package/sensor/dist/resolution/strip-comments.d.ts.map +1 -1
- package/sensor/dist/resolution/strip-comments.js +58 -0
- package/sensor/dist/resolution/strip-comments.js.map +1 -1
- package/sensor/dist/resolution/sveltekit-synthesizer.d.ts +58 -0
- package/sensor/dist/resolution/sveltekit-synthesizer.d.ts.map +1 -0
- package/sensor/dist/resolution/sveltekit-synthesizer.js +173 -0
- package/sensor/dist/resolution/sveltekit-synthesizer.js.map +1 -0
- package/sensor/dist/resolution/swift-type-visibility.d.ts +52 -0
- package/sensor/dist/resolution/swift-type-visibility.d.ts.map +1 -0
- package/sensor/dist/resolution/swift-type-visibility.js +328 -0
- package/sensor/dist/resolution/swift-type-visibility.js.map +1 -0
- package/sensor/dist/resolution/synth-utils.d.ts +26 -0
- package/sensor/dist/resolution/synth-utils.d.ts.map +1 -0
- package/sensor/dist/resolution/synth-utils.js +75 -0
- package/sensor/dist/resolution/synth-utils.js.map +1 -0
- package/sensor/dist/resolution/tanstack-router-synthesizer.d.ts +31 -0
- package/sensor/dist/resolution/tanstack-router-synthesizer.d.ts.map +1 -0
- package/sensor/dist/resolution/tanstack-router-synthesizer.js +114 -0
- package/sensor/dist/resolution/tanstack-router-synthesizer.js.map +1 -0
- package/sensor/dist/resolution/tier-synthesizer.d.ts +54 -0
- package/sensor/dist/resolution/tier-synthesizer.d.ts.map +1 -0
- package/sensor/dist/resolution/tier-synthesizer.js +1294 -0
- package/sensor/dist/resolution/tier-synthesizer.js.map +1 -0
- package/sensor/dist/resolution/types.d.ts +78 -2
- package/sensor/dist/resolution/types.d.ts.map +1 -1
- package/sensor/dist/resolution/types.js +64 -0
- package/sensor/dist/resolution/types.js.map +1 -1
- package/sensor/dist/resolution/vue-router-synthesizer.d.ts +30 -0
- package/sensor/dist/resolution/vue-router-synthesizer.d.ts.map +1 -0
- package/sensor/dist/resolution/vue-router-synthesizer.js +115 -0
- package/sensor/dist/resolution/vue-router-synthesizer.js.map +1 -0
- package/sensor/dist/search/identifier-segments.d.ts +10 -0
- package/sensor/dist/search/identifier-segments.d.ts.map +1 -1
- package/sensor/dist/search/identifier-segments.js +29 -0
- package/sensor/dist/search/identifier-segments.js.map +1 -1
- package/sensor/dist/search/query-paths.d.ts +106 -0
- package/sensor/dist/search/query-paths.d.ts.map +1 -0
- package/sensor/dist/search/query-paths.js +513 -0
- package/sensor/dist/search/query-paths.js.map +1 -0
- package/sensor/dist/search/query-utils.d.ts +22 -2
- package/sensor/dist/search/query-utils.d.ts.map +1 -1
- package/sensor/dist/search/query-utils.js +56 -16
- package/sensor/dist/search/query-utils.js.map +1 -1
- package/sensor/dist/sync/watch-policy.d.ts +14 -0
- package/sensor/dist/sync/watch-policy.d.ts.map +1 -1
- package/sensor/dist/sync/watch-policy.js +19 -0
- package/sensor/dist/sync/watch-policy.js.map +1 -1
- package/sensor/dist/sync/watcher.d.ts +74 -35
- package/sensor/dist/sync/watcher.d.ts.map +1 -1
- package/sensor/dist/sync/watcher.js +281 -99
- package/sensor/dist/sync/watcher.js.map +1 -1
- package/sensor/dist/telemetry/index.d.ts +4 -2
- package/sensor/dist/telemetry/index.d.ts.map +1 -1
- package/sensor/dist/telemetry/index.js +92 -41
- package/sensor/dist/telemetry/index.js.map +1 -1
- package/sensor/dist/types.d.ts +18 -2
- package/sensor/dist/types.d.ts.map +1 -1
- package/sensor/dist/types.js +2 -0
- package/sensor/dist/types.js.map +1 -1
- package/sensor/dist/ui-server/api/deadcode.d.ts +84 -0
- package/sensor/dist/ui-server/api/deadcode.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/deadcode.js +136 -0
- package/sensor/dist/ui-server/api/deadcode.js.map +1 -0
- package/sensor/dist/ui-server/api/effects.d.ts +94 -0
- package/sensor/dist/ui-server/api/effects.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/effects.js +527 -0
- package/sensor/dist/ui-server/api/effects.js.map +1 -0
- package/sensor/dist/ui-server/api/entrypoints.d.ts +92 -0
- package/sensor/dist/ui-server/api/entrypoints.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/entrypoints.js +361 -0
- package/sensor/dist/ui-server/api/entrypoints.js.map +1 -0
- package/sensor/dist/ui-server/api/events.d.ts +183 -0
- package/sensor/dist/ui-server/api/events.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/events.js +430 -0
- package/sensor/dist/ui-server/api/events.js.map +1 -0
- package/sensor/dist/ui-server/api/file.d.ts +66 -0
- package/sensor/dist/ui-server/api/file.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/file.js +235 -0
- package/sensor/dist/ui-server/api/file.js.map +1 -0
- package/sensor/dist/ui-server/api/filecode.d.ts +126 -0
- package/sensor/dist/ui-server/api/filecode.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/filecode.js +205 -0
- package/sensor/dist/ui-server/api/filecode.js.map +1 -0
- package/sensor/dist/ui-server/api/flow.d.ts +226 -0
- package/sensor/dist/ui-server/api/flow.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/flow.js +612 -0
- package/sensor/dist/ui-server/api/flow.js.map +1 -0
- package/sensor/dist/ui-server/api/hierarchy.d.ts +81 -0
- package/sensor/dist/ui-server/api/hierarchy.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/hierarchy.js +92 -0
- package/sensor/dist/ui-server/api/hierarchy.js.map +1 -0
- package/sensor/dist/ui-server/api/index.d.ts +90 -0
- package/sensor/dist/ui-server/api/index.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/index.js +332 -0
- package/sensor/dist/ui-server/api/index.js.map +1 -0
- package/sensor/dist/ui-server/api/map.d.ts +256 -0
- package/sensor/dist/ui-server/api/map.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/map.js +760 -0
- package/sensor/dist/ui-server/api/map.js.map +1 -0
- package/sensor/dist/ui-server/api/node.d.ts +81 -0
- package/sensor/dist/ui-server/api/node.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/node.js +388 -0
- package/sensor/dist/ui-server/api/node.js.map +1 -0
- package/sensor/dist/ui-server/api/nodes.d.ts +25 -0
- package/sensor/dist/ui-server/api/nodes.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/nodes.js +45 -0
- package/sensor/dist/ui-server/api/nodes.js.map +1 -0
- package/sensor/dist/ui-server/api/program.d.ts +139 -0
- package/sensor/dist/ui-server/api/program.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/program.js +315 -0
- package/sensor/dist/ui-server/api/program.js.map +1 -0
- package/sensor/dist/ui-server/api/respond.d.ts +76 -0
- package/sensor/dist/ui-server/api/respond.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/respond.js +186 -0
- package/sensor/dist/ui-server/api/respond.js.map +1 -0
- package/sensor/dist/ui-server/api/route-roots.d.ts +39 -0
- package/sensor/dist/ui-server/api/route-roots.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/route-roots.js +96 -0
- package/sensor/dist/ui-server/api/route-roots.js.map +1 -0
- package/sensor/dist/ui-server/api/routes.d.ts +59 -0
- package/sensor/dist/ui-server/api/routes.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/routes.js +108 -0
- package/sensor/dist/ui-server/api/routes.js.map +1 -0
- package/sensor/dist/ui-server/api/screens.d.ts +117 -0
- package/sensor/dist/ui-server/api/screens.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/screens.js +611 -0
- package/sensor/dist/ui-server/api/screens.js.map +1 -0
- package/sensor/dist/ui-server/api/search.d.ts +29 -0
- package/sensor/dist/ui-server/api/search.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/search.js +232 -0
- package/sensor/dist/ui-server/api/search.js.map +1 -0
- package/sensor/dist/ui-server/api/session.d.ts +52 -0
- package/sensor/dist/ui-server/api/session.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/session.js +196 -0
- package/sensor/dist/ui-server/api/session.js.map +1 -0
- package/sensor/dist/ui-server/api/source.d.ts +200 -0
- package/sensor/dist/ui-server/api/source.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/source.js +422 -0
- package/sensor/dist/ui-server/api/source.js.map +1 -0
- package/sensor/dist/ui-server/api/stats.d.ts +27 -0
- package/sensor/dist/ui-server/api/stats.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/stats.js +164 -0
- package/sensor/dist/ui-server/api/stats.js.map +1 -0
- package/sensor/dist/ui-server/api/steps.d.ts +274 -0
- package/sensor/dist/ui-server/api/steps.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/steps.js +1544 -0
- package/sensor/dist/ui-server/api/steps.js.map +1 -0
- package/sensor/dist/ui-server/api/trail-store.d.ts +142 -0
- package/sensor/dist/ui-server/api/trail-store.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/trail-store.js +325 -0
- package/sensor/dist/ui-server/api/trail-store.js.map +1 -0
- package/sensor/dist/ui-server/api/trails.d.ts +163 -0
- package/sensor/dist/ui-server/api/trails.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/trails.js +369 -0
- package/sensor/dist/ui-server/api/trails.js.map +1 -0
- package/sensor/dist/ui-server/api/when.d.ts +133 -0
- package/sensor/dist/ui-server/api/when.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/when.js +275 -0
- package/sensor/dist/ui-server/api/when.js.map +1 -0
- package/sensor/dist/ui-server/api/wire.d.ts +179 -0
- package/sensor/dist/ui-server/api/wire.d.ts.map +1 -0
- package/sensor/dist/ui-server/api/wire.js +231 -0
- package/sensor/dist/ui-server/api/wire.js.map +1 -0
- package/sensor/dist/ui-server/assets.d.ts +40 -0
- package/sensor/dist/ui-server/assets.d.ts.map +1 -0
- package/sensor/dist/ui-server/assets.js +110 -0
- package/sensor/dist/ui-server/assets.js.map +1 -0
- package/sensor/dist/ui-server/constants.d.ts +32 -0
- package/sensor/dist/ui-server/constants.d.ts.map +1 -0
- package/sensor/dist/ui-server/constants.js +35 -0
- package/sensor/dist/ui-server/constants.js.map +1 -0
- package/sensor/dist/ui-server/highlight/index.d.ts +113 -0
- package/sensor/dist/ui-server/highlight/index.d.ts.map +1 -0
- package/sensor/dist/ui-server/highlight/index.js +307 -0
- package/sensor/dist/ui-server/highlight/index.js.map +1 -0
- package/sensor/dist/ui-server/highlight/languages.d.ts +36 -0
- package/sensor/dist/ui-server/highlight/languages.d.ts.map +1 -0
- package/sensor/dist/ui-server/highlight/languages.js +50 -0
- package/sensor/dist/ui-server/highlight/languages.js.map +1 -0
- package/sensor/dist/ui-server/index.d.ts +92 -0
- package/sensor/dist/ui-server/index.d.ts.map +1 -0
- package/sensor/dist/ui-server/index.js +399 -0
- package/sensor/dist/ui-server/index.js.map +1 -0
- package/sensor/dist/ui-server/open-browser.d.ts +31 -0
- package/sensor/dist/ui-server/open-browser.d.ts.map +1 -0
- package/sensor/dist/ui-server/open-browser.js +79 -0
- package/sensor/dist/ui-server/open-browser.js.map +1 -0
- package/sensor/dist/ui-server/security.d.ts +127 -0
- package/sensor/dist/ui-server/security.d.ts.map +1 -0
- package/sensor/dist/ui-server/security.js +332 -0
- package/sensor/dist/ui-server/security.js.map +1 -0
- package/sensor/dist/ui-server/static.d.ts +45 -0
- package/sensor/dist/ui-server/static.d.ts.map +1 -0
- package/sensor/dist/ui-server/static.js +165 -0
- package/sensor/dist/ui-server/static.js.map +1 -0
- package/sensor/dist/utils.d.ts +14 -2
- package/sensor/dist/utils.d.ts.map +1 -1
- package/sensor/dist/utils.js +25 -10
- package/sensor/dist/utils.js.map +1 -1
- package/src/sensor-adapter.mjs +5 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"function-ref.js","sourceRoot":"","sources":["../../src/extraction/function-ref.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"function-ref.js","sourceRoot":"","sources":["../../src/extraction/function-ref.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,18 +8,39 @@
|
|
|
8
8
|
* see project_go_multi_module_audit memory). Generated stubs frequently
|
|
9
9
|
* have no body to trace from, so the agent ends up reading source anyway.
|
|
10
10
|
*
|
|
11
|
-
* This
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* reachable; they just rank LAST when there's a real implementation
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
11
|
+
* This is a relevance hint consulted at disambiguation time (findSymbol /
|
|
12
|
+
* findAllSymbols / explore ranking / lattice_sensor_search formatting), NOT a
|
|
13
|
+
* hard filter — generated nodes are still in the graph and remain
|
|
14
|
+
* reachable; they just rank LAST when there's a real implementation with
|
|
15
|
+
* the same name.
|
|
16
|
+
*
|
|
17
|
+
* Two signals, deliberately separate:
|
|
18
|
+
*
|
|
19
|
+
* 1. {@link isGeneratedFile} — PATH only, pure and synchronous. Most
|
|
20
|
+
* generated files follow the `<basename>.<tool>.<ext>` convention
|
|
21
|
+
* (`.pb.go`, `_grpc.pb.go`, `.g.dart`, `_pb2.py`). Free to call
|
|
22
|
+
* anywhere, including in a sort comparator.
|
|
23
|
+
*
|
|
24
|
+
* 2. {@link hasGeneratedHeader} — CONTENT banner in the file's head. Go's
|
|
25
|
+
* own convention is a content marker, not a filename one, so a
|
|
26
|
+
* generated `payroll.go` sitting beside hand-written use-cases is
|
|
27
|
+
* invisible to (1) — that is issue #1500. Evaluated ONCE at index time
|
|
28
|
+
* (the file's content is already in memory for parsing) and persisted
|
|
29
|
+
* on the file record as `files.generated`; readers get it from the DB
|
|
30
|
+
* rather than re-reading headers per request. See
|
|
31
|
+
* GENERATED_CONTENT_PATTERNS below for the banners recognized.
|
|
32
|
+
*
|
|
33
|
+
* Consumers that have a bounded candidate list should use the DB-backed
|
|
34
|
+
* union (`QueryBuilder.getGeneratedPathsAmong` /
|
|
35
|
+
* `LatticeSensor.getGeneratedFilePaths`) so both signals apply; the path-only
|
|
36
|
+
* check remains the fallback for callers with no database in hand and for
|
|
37
|
+
* indexes built before the flag existed.
|
|
38
|
+
*
|
|
39
|
+
* NOTE for future editors: the banner literals quoted in this file sit
|
|
40
|
+
* BELOW the header window this detector scans, so the module does not
|
|
41
|
+
* classify itself. `generated-detection.test.ts` pins that — if you move
|
|
42
|
+
* the pattern table upward, the test fails rather than the repo silently
|
|
43
|
+
* demoting its own file.
|
|
23
44
|
*/
|
|
24
45
|
/**
|
|
25
46
|
* Whether `filePath` looks like a tool-generated source file based on
|
|
@@ -27,4 +48,19 @@
|
|
|
27
48
|
* relevance hint for disambiguation, not a hard claim.
|
|
28
49
|
*/
|
|
29
50
|
export declare function isGeneratedFile(filePath: string): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Whether the head of `content` carries a recognized machine-generation
|
|
53
|
+
* banner. Bounded to {@link HEADER_SCAN_CHARS} / {@link HEADER_SCAN_LINES},
|
|
54
|
+
* and the marker must sit on a comment line — a generator's own source, which
|
|
55
|
+
* holds the banner as a string constant in its body, is not flagged.
|
|
56
|
+
*
|
|
57
|
+
* Called once per file during extraction (content is already in memory), NOT
|
|
58
|
+
* per query: the verdict is persisted on the file record.
|
|
59
|
+
*/
|
|
60
|
+
export declare function hasGeneratedHeader(content: string): boolean;
|
|
61
|
+
/**
|
|
62
|
+
* The union signal: path convention OR content banner. This is what the
|
|
63
|
+
* indexer persists to `files.generated`.
|
|
64
|
+
*/
|
|
65
|
+
export declare function detectGeneratedFile(filePath: string, content: string): boolean;
|
|
30
66
|
//# sourceMappingURL=generated-detection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generated-detection.d.ts","sourceRoot":"","sources":["../../src/extraction/generated-detection.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"generated-detection.d.ts","sourceRoot":"","sources":["../../src/extraction/generated-detection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG;AAmDH;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEzD;AAgGD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAsC3D;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAE9E"}
|
|
@@ -9,21 +9,44 @@
|
|
|
9
9
|
* see project_go_multi_module_audit memory). Generated stubs frequently
|
|
10
10
|
* have no body to trace from, so the agent ends up reading source anyway.
|
|
11
11
|
*
|
|
12
|
-
* This
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* reachable; they just rank LAST when there's a real implementation
|
|
16
|
-
*
|
|
12
|
+
* This is a relevance hint consulted at disambiguation time (findSymbol /
|
|
13
|
+
* findAllSymbols / explore ranking / lattice_sensor_search formatting), NOT a
|
|
14
|
+
* hard filter — generated nodes are still in the graph and remain
|
|
15
|
+
* reachable; they just rank LAST when there's a real implementation with
|
|
16
|
+
* the same name.
|
|
17
17
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
18
|
+
* Two signals, deliberately separate:
|
|
19
|
+
*
|
|
20
|
+
* 1. {@link isGeneratedFile} — PATH only, pure and synchronous. Most
|
|
21
|
+
* generated files follow the `<basename>.<tool>.<ext>` convention
|
|
22
|
+
* (`.pb.go`, `_grpc.pb.go`, `.g.dart`, `_pb2.py`). Free to call
|
|
23
|
+
* anywhere, including in a sort comparator.
|
|
24
|
+
*
|
|
25
|
+
* 2. {@link hasGeneratedHeader} — CONTENT banner in the file's head. Go's
|
|
26
|
+
* own convention is a content marker, not a filename one, so a
|
|
27
|
+
* generated `payroll.go` sitting beside hand-written use-cases is
|
|
28
|
+
* invisible to (1) — that is issue #1500. Evaluated ONCE at index time
|
|
29
|
+
* (the file's content is already in memory for parsing) and persisted
|
|
30
|
+
* on the file record as `files.generated`; readers get it from the DB
|
|
31
|
+
* rather than re-reading headers per request. See
|
|
32
|
+
* GENERATED_CONTENT_PATTERNS below for the banners recognized.
|
|
33
|
+
*
|
|
34
|
+
* Consumers that have a bounded candidate list should use the DB-backed
|
|
35
|
+
* union (`QueryBuilder.getGeneratedPathsAmong` /
|
|
36
|
+
* `LatticeSensor.getGeneratedFilePaths`) so both signals apply; the path-only
|
|
37
|
+
* check remains the fallback for callers with no database in hand and for
|
|
38
|
+
* indexes built before the flag existed.
|
|
39
|
+
*
|
|
40
|
+
* NOTE for future editors: the banner literals quoted in this file sit
|
|
41
|
+
* BELOW the header window this detector scans, so the module does not
|
|
42
|
+
* classify itself. `generated-detection.test.ts` pins that — if you move
|
|
43
|
+
* the pattern table upward, the test fails rather than the repo silently
|
|
44
|
+
* demoting its own file.
|
|
24
45
|
*/
|
|
25
46
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
47
|
exports.isGeneratedFile = isGeneratedFile;
|
|
48
|
+
exports.hasGeneratedHeader = hasGeneratedHeader;
|
|
49
|
+
exports.detectGeneratedFile = detectGeneratedFile;
|
|
27
50
|
const GENERATED_PATTERNS = [
|
|
28
51
|
// Go — protobuf / gRPC / pulsar
|
|
29
52
|
/\.pb\.go$/,
|
|
@@ -80,4 +103,146 @@ const GENERATED_PATTERNS = [
|
|
|
80
103
|
function isGeneratedFile(filePath) {
|
|
81
104
|
return GENERATED_PATTERNS.some((p) => p.test(filePath));
|
|
82
105
|
}
|
|
106
|
+
// =============================================================================
|
|
107
|
+
// Content-header detection (#1500)
|
|
108
|
+
// =============================================================================
|
|
109
|
+
/**
|
|
110
|
+
* How much of a file's head to consider "the header". Generous enough for a
|
|
111
|
+
* build-tag block + an Apache-2.0 license preamble (~15 lines) sitting above
|
|
112
|
+
* the banner, tight enough that a `"// Code generated ... DO NOT EDIT."`
|
|
113
|
+
* string constant in the *body* of a code generator's own source can't
|
|
114
|
+
* masquerade as a banner.
|
|
115
|
+
*/
|
|
116
|
+
const HEADER_SCAN_CHARS = 8192;
|
|
117
|
+
const HEADER_SCAN_LINES = 60;
|
|
118
|
+
/**
|
|
119
|
+
* Cheap pre-filter run on the header of EVERY indexed file. Every marker
|
|
120
|
+
* below contains the stem "generat", so one unanchored scan rejects ~all
|
|
121
|
+
* hand-written source before any line splitting happens — this is what keeps
|
|
122
|
+
* content detection off the index-time cost budget.
|
|
123
|
+
*/
|
|
124
|
+
const GENERATED_STEM = /generat/i;
|
|
125
|
+
/**
|
|
126
|
+
* Line-comment leaders across the languages we index. A banner must sit on a
|
|
127
|
+
* comment line (or inside an open block comment, tracked below): generators
|
|
128
|
+
* always emit theirs as a comment, and requiring it rules out string literals
|
|
129
|
+
* and identifiers that merely contain the words.
|
|
130
|
+
*
|
|
131
|
+
* `--` covers SQL/Haskell/Lua, `%` LaTeX/Erlang/Prolog, `;` Lisp/asm/ini,
|
|
132
|
+
* `'` VB, `!` Fortran, `*` a continuation line inside a `/* … *\/` block.
|
|
133
|
+
*/
|
|
134
|
+
const COMMENT_LEADER = /^\s*(?:\/\/|\/\*+|\*+\/?|#+|--+|<!--|%+|;+|'|!|\(\*|\{-|"""|'''|=begin|<#|@rem\b|rem\b)/i;
|
|
135
|
+
/**
|
|
136
|
+
* Openers/closers for block comments, so a banner on an unprefixed line
|
|
137
|
+
* inside `/* … *\/` (or `<!-- … -->`, or a Python module docstring) still
|
|
138
|
+
* counts. Deliberately naive — it only runs over a file's first few dozen
|
|
139
|
+
* lines, where a `/*` inside a string literal is vanishingly rare, and the
|
|
140
|
+
* worst case of a mis-tracked state is a ranking hint, not a wrong answer.
|
|
141
|
+
*/
|
|
142
|
+
const BLOCK_DELIMS = [
|
|
143
|
+
{ open: '/*', close: '*/' },
|
|
144
|
+
{ open: '<!--', close: '-->' },
|
|
145
|
+
{ open: '"""', close: '"""' },
|
|
146
|
+
{ open: "'''", close: "'''" },
|
|
147
|
+
{ open: '=begin', close: '=end' },
|
|
148
|
+
{ open: '<#', close: '#>' },
|
|
149
|
+
];
|
|
150
|
+
/**
|
|
151
|
+
* The banners themselves. Each is a real convention emitted by a widely-used
|
|
152
|
+
* generator; the list is precision-first, because a false positive silently
|
|
153
|
+
* demotes hand-written code in every ranking path.
|
|
154
|
+
*/
|
|
155
|
+
const GENERATED_CONTENT_PATTERNS = [
|
|
156
|
+
// Go's codified convention — `^// Code generated .* DO NOT EDIT\.$`, defined
|
|
157
|
+
// by `go generate` and honored by gofmt, golangci-lint and GitHub linguist.
|
|
158
|
+
// Emitted verbatim by protoc-gen-go, mockgen, sqlc, ent, wire, stringer, and
|
|
159
|
+
// by in-house generators like the FKIT CRUD in #1500 — where the file is
|
|
160
|
+
// named `payroll.go` and nothing in the PATH gives it away.
|
|
161
|
+
/\bcode generated\b.{0,200}?\bdo not edit\b/i,
|
|
162
|
+
// protoc's Java/C#/Python banner ("Generated by the protocol buffer
|
|
163
|
+
// compiler. DO NOT EDIT!"), ANTLR, Dagger, FlatBuffers, rust-bindgen,
|
|
164
|
+
// Xcode asset catalogs, Bazel rules.
|
|
165
|
+
/\b(?:automatically |auto[- ]?)?generated (?:by|from|with)\b.{0,200}?\bdo not (?:edit|modify|change)\b/i,
|
|
166
|
+
// The `@generated` marker: the JS/TS ecosystem's convention (Relay, GraphQL
|
|
167
|
+
// codegen, protobuf-es/Buf, Meta's `@generated SignedSource<<…>>`), also
|
|
168
|
+
// what linguist and `git diff` collapse on. Guarded against `foo@generated`
|
|
169
|
+
// and `@@generated` so only a standalone tag matches.
|
|
170
|
+
/(?:^|[^\p{L}\p{N}_@])@generated\b/u,
|
|
171
|
+
// .NET's `<auto-generated>` / `<auto-generated />` doc tag: Roslyn, the
|
|
172
|
+
// WinForms designer, T4 templates, protoc-gen-csharp, EF scaffolding.
|
|
173
|
+
/<auto-?generated\s*\/?>/i,
|
|
174
|
+
// swagger-codegen / OpenAPI Generator ("NOTE: This class is auto generated
|
|
175
|
+
// by OpenAPI Generator"), Thrift ("Autogenerated by Thrift Compiler"),
|
|
176
|
+
// FlatBuffers ("automatically generated by the FlatBuffers compiler").
|
|
177
|
+
// "by" is required — bare "automatically generated" appears in hand-written
|
|
178
|
+
// prose ("the table below is automatically generated at runtime").
|
|
179
|
+
/\b(?:automatically generated|auto[- ]?generated|autogenerated) by\b/i,
|
|
180
|
+
// The "run this command to regenerate" shape: Cloudflare Wrangler
|
|
181
|
+
// ("Generated by Wrangler by running `wrangler types` (hash: …)"), and the
|
|
182
|
+
// same phrasing used by other CLI-driven emitters. Bare "generated by" is
|
|
183
|
+
// deliberately NOT enough — it is ordinary prose — so the reproduction
|
|
184
|
+
// instruction is the discriminator: the banner must name a tool AND then
|
|
185
|
+
// say `by running`, i.e. TWO separate "by" clauses. That rules out
|
|
186
|
+
// "the report is generated by running the nightly job", which has only one.
|
|
187
|
+
/\bgenerated by\s+\S.{0,80}?\bby running\b/i,
|
|
188
|
+
// Self-declaring in-house banners that name no tool.
|
|
189
|
+
/\bthis (?:file|class|code|module) (?:is|was) (?:auto[- ]?)?generated\b/i,
|
|
190
|
+
// The reverse ordering: "DO NOT EDIT — this is a generated file".
|
|
191
|
+
/\bdo not (?:edit|modify)\b.{0,120}?\b(?:auto[- ]?generated|generated file|generated code)\b/i,
|
|
192
|
+
];
|
|
193
|
+
/**
|
|
194
|
+
* Whether the head of `content` carries a recognized machine-generation
|
|
195
|
+
* banner. Bounded to {@link HEADER_SCAN_CHARS} / {@link HEADER_SCAN_LINES},
|
|
196
|
+
* and the marker must sit on a comment line — a generator's own source, which
|
|
197
|
+
* holds the banner as a string constant in its body, is not flagged.
|
|
198
|
+
*
|
|
199
|
+
* Called once per file during extraction (content is already in memory), NOT
|
|
200
|
+
* per query: the verdict is persisted on the file record.
|
|
201
|
+
*/
|
|
202
|
+
function hasGeneratedHeader(content) {
|
|
203
|
+
if (!content)
|
|
204
|
+
return false;
|
|
205
|
+
const head = content.length > HEADER_SCAN_CHARS ? content.slice(0, HEADER_SCAN_CHARS) : content;
|
|
206
|
+
// Fast reject for ~every hand-written file: no line splitting, no allocation
|
|
207
|
+
// (V8 keeps `head` as a sliced view of `content`).
|
|
208
|
+
if (!GENERATED_STEM.test(head))
|
|
209
|
+
return false;
|
|
210
|
+
const lines = head.split('\n');
|
|
211
|
+
const limit = Math.min(lines.length, HEADER_SCAN_LINES);
|
|
212
|
+
let openBlock = null;
|
|
213
|
+
for (let i = 0; i < limit; i++) {
|
|
214
|
+
const line = lines[i];
|
|
215
|
+
const inBlock = openBlock !== null;
|
|
216
|
+
if (inBlock || COMMENT_LEADER.test(line)) {
|
|
217
|
+
for (const pattern of GENERATED_CONTENT_PATTERNS) {
|
|
218
|
+
if (pattern.test(line))
|
|
219
|
+
return true;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
// Advance the block-comment state AFTER testing, so the opening line of a
|
|
223
|
+
// `/* Code generated … */` block is itself matched by the leader rule.
|
|
224
|
+
if (openBlock) {
|
|
225
|
+
if (line.includes(openBlock.close))
|
|
226
|
+
openBlock = null;
|
|
227
|
+
continue;
|
|
228
|
+
}
|
|
229
|
+
for (const delim of BLOCK_DELIMS) {
|
|
230
|
+
const at = line.indexOf(delim.open);
|
|
231
|
+
if (at < 0)
|
|
232
|
+
continue;
|
|
233
|
+
// Same-line close (`/* … */`, a one-line docstring) leaves no open block.
|
|
234
|
+
if (line.indexOf(delim.close, at + delim.open.length) < 0)
|
|
235
|
+
openBlock = delim;
|
|
236
|
+
break;
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
return false;
|
|
240
|
+
}
|
|
241
|
+
/**
|
|
242
|
+
* The union signal: path convention OR content banner. This is what the
|
|
243
|
+
* indexer persists to `files.generated`.
|
|
244
|
+
*/
|
|
245
|
+
function detectGeneratedFile(filePath, content) {
|
|
246
|
+
return isGeneratedFile(filePath) || hasGeneratedHeader(content);
|
|
247
|
+
}
|
|
83
248
|
//# sourceMappingURL=generated-detection.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generated-detection.js","sourceRoot":"","sources":["../../src/extraction/generated-detection.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"generated-detection.js","sourceRoot":"","sources":["../../src/extraction/generated-detection.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,34 @@ export type GrammarLanguage = Exclude<Language, 'svelte' | 'vue' | 'astro' | 'li
|
|
|
12
12
|
* File extension to Language mapping
|
|
13
13
|
*/
|
|
14
14
|
export declare const EXTENSION_MAP: Record<string, Language>;
|
|
15
|
+
/**
|
|
16
|
+
* How many bytes of a file's head `isMpegTransportStream` needs — enough to
|
|
17
|
+
* see `MPEG_TS_MIN_PACKETS` sync bytes plus the packets between them.
|
|
18
|
+
*/
|
|
19
|
+
export declare const MPEG_TS_SNIFF_BYTES: number;
|
|
20
|
+
/**
|
|
21
|
+
* Whether these leading bytes are an MPEG transport stream — the OTHER thing a
|
|
22
|
+
* `.ts` file can be. Golden video fixtures (`testdata/*.ts`, e2e clips) share
|
|
23
|
+
* TypeScript's extension, and tree-sitter takes ~28 s to chew through a 900 KB
|
|
24
|
+
* clip for zero symbols (#1910), so the decision has to be made from the head
|
|
25
|
+
* of the file, before any parse.
|
|
26
|
+
*
|
|
27
|
+
* Two conditions, both required:
|
|
28
|
+
* 1. the sync byte 0x47 sits at every 188-byte packet boundary of the first
|
|
29
|
+
* `MPEG_TS_MIN_PACKETS` packets — every packet of a transport stream
|
|
30
|
+
* opens with it, and nothing else pads to 188;
|
|
31
|
+
* 2. the head is binary: at least `MPEG_TS_MIN_CONTROL_SHARE` of it is
|
|
32
|
+
* control bytes, as any compressed payload is.
|
|
33
|
+
* 0x47 is the letter `G`, so (1) alone could match source whose lines happen
|
|
34
|
+
* to put a `G` at every 188-byte stride. Checking for a single NUL was not
|
|
35
|
+
* enough to close that: one NUL in a comment is still TypeScript. (2) asks for
|
|
36
|
+
* dozens of control bytes, which no source file carries.
|
|
37
|
+
*
|
|
38
|
+
* `head` is the first `MPEG_TS_SNIFF_BYTES` (or fewer) bytes of the file.
|
|
39
|
+
*/
|
|
40
|
+
export declare function isMpegTransportStream(head: Uint8Array): boolean;
|
|
41
|
+
/** Whether `filePath` carries the one extension MPEG-TS shares with a language. */
|
|
42
|
+
export declare function hasMpegTsExtension(filePath: string): boolean;
|
|
15
43
|
/**
|
|
16
44
|
* Whether a file is one LatticeSensor can parse, based purely on its extension.
|
|
17
45
|
* This is the single source of truth for "should we index this file" — derived
|
|
@@ -92,6 +120,16 @@ export declare function getParser(language: Language): Parser | null;
|
|
|
92
120
|
* `EXTENSION_MAP`. Omitting it is byte-identical to the zero-config behavior.
|
|
93
121
|
*/
|
|
94
122
|
export declare function detectLanguage(filePath: string, source?: string, overrides?: Record<string, Language>): Language;
|
|
123
|
+
/**
|
|
124
|
+
* Whether a language has a tree-sitter grammar of its own.
|
|
125
|
+
*
|
|
126
|
+
* Narrower than {@link isLanguageSupported}, which also answers true for the
|
|
127
|
+
* formats handled by custom extractors (SFCs, Liquid, Razor, YAML, XML,
|
|
128
|
+
* properties) — those have extraction but no grammar, so anything that needs to
|
|
129
|
+
* PARSE the file (the viewer's syntax classification, for one) has to ask this
|
|
130
|
+
* instead.
|
|
131
|
+
*/
|
|
132
|
+
export declare function hasTreeSitterGrammar(language: string | undefined | null): boolean;
|
|
95
133
|
/**
|
|
96
134
|
* Check if a language is supported (has a grammar defined).
|
|
97
135
|
* Returns true if the grammar exists, even if not yet loaded.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grammars.d.ts","sourceRoot":"","sources":["../../src/extraction/grammars.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,EAAE,MAAM,EAA4B,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEpC,MAAM,MAAM,eAAe,GAAG,OAAO,CAAC,QAAQ,EAAE,QAAQ,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,YAAY,GAAG,SAAS,CAAC,CAAC;AAyCtJ;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAmHlD,CAAC;
|
|
1
|
+
{"version":3,"file":"grammars.d.ts","sourceRoot":"","sources":["../../src/extraction/grammars.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,7 +40,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
40
40
|
};
|
|
41
41
|
})();
|
|
42
42
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
-
exports.EXTENSION_MAP = void 0;
|
|
43
|
+
exports.MPEG_TS_SNIFF_BYTES = exports.EXTENSION_MAP = void 0;
|
|
44
|
+
exports.isMpegTransportStream = isMpegTransportStream;
|
|
45
|
+
exports.hasMpegTsExtension = hasMpegTsExtension;
|
|
44
46
|
exports.isSourceFile = isSourceFile;
|
|
45
47
|
exports.isShopifyLiquidJson = isShopifyLiquidJson;
|
|
46
48
|
exports.isErlangAppFile = isErlangAppFile;
|
|
@@ -52,6 +54,7 @@ exports.loadAllGrammars = loadAllGrammars;
|
|
|
52
54
|
exports.isGrammarsInitialized = isGrammarsInitialized;
|
|
53
55
|
exports.getParser = getParser;
|
|
54
56
|
exports.detectLanguage = detectLanguage;
|
|
57
|
+
exports.hasTreeSitterGrammar = hasTreeSitterGrammar;
|
|
55
58
|
exports.isLanguageSupported = isLanguageSupported;
|
|
56
59
|
exports.isGrammarLoaded = isGrammarLoaded;
|
|
57
60
|
exports.isFileLevelOnlyLanguage = isFileLevelOnlyLanguage;
|
|
@@ -220,6 +223,67 @@ exports.EXTENSION_MAP = {
|
|
|
220
223
|
'.tfvars': 'terraform',
|
|
221
224
|
'.tofu': 'terraform',
|
|
222
225
|
};
|
|
226
|
+
/** MPEG transport stream: fixed 188-byte packets, each opening with 0x47. */
|
|
227
|
+
const MPEG_TS_PACKET_SIZE = 188;
|
|
228
|
+
const MPEG_TS_SYNC_BYTE = 0x47;
|
|
229
|
+
/**
|
|
230
|
+
* Consecutive packets whose sync byte must line up before a file counts as
|
|
231
|
+
* video — 3 KB of head. A stream shorter than that is cheap to parse anyway;
|
|
232
|
+
* the cost #1910 is about comes from clips hundreds of KB long.
|
|
233
|
+
*/
|
|
234
|
+
const MPEG_TS_MIN_PACKETS = 16;
|
|
235
|
+
/**
|
|
236
|
+
* Share of the head that must be control bytes (below 0x20, other than the
|
|
237
|
+
* whitespace ones) for it to count as binary. Compressed audio and video put
|
|
238
|
+
* about one byte in eight there; source text puts none.
|
|
239
|
+
*/
|
|
240
|
+
const MPEG_TS_MIN_CONTROL_SHARE = 1 / 64;
|
|
241
|
+
/**
|
|
242
|
+
* How many bytes of a file's head `isMpegTransportStream` needs — enough to
|
|
243
|
+
* see `MPEG_TS_MIN_PACKETS` sync bytes plus the packets between them.
|
|
244
|
+
*/
|
|
245
|
+
exports.MPEG_TS_SNIFF_BYTES = MPEG_TS_PACKET_SIZE * MPEG_TS_MIN_PACKETS;
|
|
246
|
+
/**
|
|
247
|
+
* Whether these leading bytes are an MPEG transport stream — the OTHER thing a
|
|
248
|
+
* `.ts` file can be. Golden video fixtures (`testdata/*.ts`, e2e clips) share
|
|
249
|
+
* TypeScript's extension, and tree-sitter takes ~28 s to chew through a 900 KB
|
|
250
|
+
* clip for zero symbols (#1910), so the decision has to be made from the head
|
|
251
|
+
* of the file, before any parse.
|
|
252
|
+
*
|
|
253
|
+
* Two conditions, both required:
|
|
254
|
+
* 1. the sync byte 0x47 sits at every 188-byte packet boundary of the first
|
|
255
|
+
* `MPEG_TS_MIN_PACKETS` packets — every packet of a transport stream
|
|
256
|
+
* opens with it, and nothing else pads to 188;
|
|
257
|
+
* 2. the head is binary: at least `MPEG_TS_MIN_CONTROL_SHARE` of it is
|
|
258
|
+
* control bytes, as any compressed payload is.
|
|
259
|
+
* 0x47 is the letter `G`, so (1) alone could match source whose lines happen
|
|
260
|
+
* to put a `G` at every 188-byte stride. Checking for a single NUL was not
|
|
261
|
+
* enough to close that: one NUL in a comment is still TypeScript. (2) asks for
|
|
262
|
+
* dozens of control bytes, which no source file carries.
|
|
263
|
+
*
|
|
264
|
+
* `head` is the first `MPEG_TS_SNIFF_BYTES` (or fewer) bytes of the file.
|
|
265
|
+
*/
|
|
266
|
+
function isMpegTransportStream(head) {
|
|
267
|
+
const lastSync = MPEG_TS_PACKET_SIZE * (MPEG_TS_MIN_PACKETS - 1);
|
|
268
|
+
if (head.length <= lastSync)
|
|
269
|
+
return false;
|
|
270
|
+
for (let off = 0; off <= lastSync; off += MPEG_TS_PACKET_SIZE) {
|
|
271
|
+
if (head[off] !== MPEG_TS_SYNC_BYTE)
|
|
272
|
+
return false;
|
|
273
|
+
}
|
|
274
|
+
let control = 0;
|
|
275
|
+
for (let i = 0; i < head.length; i++) {
|
|
276
|
+
const b = head[i];
|
|
277
|
+
// Tab, newline, vertical tab, form feed and carriage return are text.
|
|
278
|
+
if (b < 0x20 && (b < 0x09 || b > 0x0d))
|
|
279
|
+
control++;
|
|
280
|
+
}
|
|
281
|
+
return control >= head.length * MPEG_TS_MIN_CONTROL_SHARE;
|
|
282
|
+
}
|
|
283
|
+
/** Whether `filePath` carries the one extension MPEG-TS shares with a language. */
|
|
284
|
+
function hasMpegTsExtension(filePath) {
|
|
285
|
+
return filePath.length > 3 && filePath.slice(-3).toLowerCase() === '.ts';
|
|
286
|
+
}
|
|
223
287
|
/**
|
|
224
288
|
* Whether a file is one LatticeSensor can parse, based purely on its extension.
|
|
225
289
|
* This is the single source of truth for "should we index this file" — derived
|
|
@@ -524,9 +588,37 @@ function detectLanguage(filePath, source, overrides) {
|
|
|
524
588
|
}
|
|
525
589
|
return lang;
|
|
526
590
|
}
|
|
591
|
+
/**
|
|
592
|
+
* A class/struct BASE CLAUSE — `struct Derived : Base {`, `class Foo final :
|
|
593
|
+
* public Bar, private Baz {`, `struct D : ns::B<T> {` — which is never valid
|
|
594
|
+
* C. In C the only thing that can follow `struct <tag>` is `{`, `;`, `*`, an
|
|
595
|
+
* identifier (declarator), or a closing `)`: a bit-field's `:` sits after a
|
|
596
|
+
* member NAME inside the body (`unsigned a : 3;`), a ternary's `:` is
|
|
597
|
+
* separated from the tag by `)` / `*` / a declarator (`sizeof(struct foo) :
|
|
598
|
+
* 0`), and a label such as `struct_end:` has no whitespace after `struct`. An
|
|
599
|
+
* optional access specifier / `virtual` after the colon and an optional
|
|
600
|
+
* `final` before it cover the spelled-out forms; the base may be scoped
|
|
601
|
+
* (`ns::Base`) and carry template arguments, and must be followed by the
|
|
602
|
+
* body's `{` or a `,` introducing the next base — prose like
|
|
603
|
+
* `struct timeval: seconds and microseconds` inside a string never has that
|
|
604
|
+
* terminator. Comments are stripped before the scan (see `looksLikeCpp`).
|
|
605
|
+
*/
|
|
606
|
+
const CPP_BASE_CLAUSE_RE = /\b(?:class|struct)\s+\w+\s*(?:final\s*)?:\s*(?:(?:public|protected|private|virtual)\s+)*[A-Za-z_][\w:]*(?:\s*<[^{};]*>)?\s*[{,]/;
|
|
607
|
+
/** Block and line comments, for a code-only scan. Lazy block match → linear. */
|
|
608
|
+
const C_COMMENT_RE = /\/\*[\s\S]*?\*\/|\/\/[^\n]*/g;
|
|
527
609
|
/**
|
|
528
610
|
* Heuristic: does a .h file contain C++ constructs?
|
|
529
|
-
*
|
|
611
|
+
*
|
|
612
|
+
* Two passes. The first checks the first ~8KB for patterns that are unique to
|
|
613
|
+
* C++ and never valid C. The second scans the FULL source for a class/struct
|
|
614
|
+
* base clause (`CPP_BASE_CLAUSE_RE`): a large header with a long C-compatible
|
|
615
|
+
* preamble — include guards, `#define`s, plain C typedefs — can put its only
|
|
616
|
+
* C++ signal past the sample, and the cost of that miss is the C extractor
|
|
617
|
+
* (classTypes: []) dropping the derived type entirely and minting a phantom
|
|
618
|
+
* `function Base` from the base clause instead (#1592). The base-clause regex
|
|
619
|
+
* is anchored on a `struct`/`class` keyword followed by a tag and a colon, a
|
|
620
|
+
* shape with no C reading, so widening it to the whole file cannot drag a C
|
|
621
|
+
* header over to C++.
|
|
530
622
|
*/
|
|
531
623
|
function looksLikeCpp(source) {
|
|
532
624
|
const sample = source.substring(0, 8192);
|
|
@@ -539,7 +631,15 @@ function looksLikeCpp(source) {
|
|
|
539
631
|
// routed through the C extractor (which extracts no classes), and its class
|
|
540
632
|
// definition silently vanishes. The two-token shape (`<KW> <MACRO> <Name>`
|
|
541
633
|
// before a `[:{]`) never occurs in valid C, so this can't misclassify C headers.
|
|
542
|
-
|
|
634
|
+
if (/\bnamespace\b|\bclass\s+\w+\s*[:{]|\b(?:class|struct)\s+[A-Z][A-Z0-9_]+\s+\w+\s*(?:final\s*)?[:{]|\btemplate\s*<|\b(?:public|private|protected)\s*:|\bvirtual\b|\busing\s+(?:namespace\b|\w+\s*=)/.test(sample)) {
|
|
635
|
+
return true;
|
|
636
|
+
}
|
|
637
|
+
// Plain `struct Derived : Base` (no export macro, no `class` keyword, no
|
|
638
|
+
// explicit access section) — the #1159 branch above only recognizes the
|
|
639
|
+
// macro-annotated form. Scanned over the whole file, not the sample, with
|
|
640
|
+
// comments removed so a doc comment's prose (`struct foo: x, y`) can't
|
|
641
|
+
// flip a C header.
|
|
642
|
+
return CPP_BASE_CLAUSE_RE.test(source.replace(C_COMMENT_RE, ' '));
|
|
543
643
|
}
|
|
544
644
|
/**
|
|
545
645
|
* Heuristic: does a .h file contain Objective-C constructs?
|
|
@@ -548,6 +648,18 @@ function looksLikeObjc(source) {
|
|
|
548
648
|
const sample = source.substring(0, 8192);
|
|
549
649
|
return /@(?:interface|implementation|protocol|synthesize)\b/.test(sample);
|
|
550
650
|
}
|
|
651
|
+
/**
|
|
652
|
+
* Whether a language has a tree-sitter grammar of its own.
|
|
653
|
+
*
|
|
654
|
+
* Narrower than {@link isLanguageSupported}, which also answers true for the
|
|
655
|
+
* formats handled by custom extractors (SFCs, Liquid, Razor, YAML, XML,
|
|
656
|
+
* properties) — those have extraction but no grammar, so anything that needs to
|
|
657
|
+
* PARSE the file (the viewer's syntax classification, for one) has to ask this
|
|
658
|
+
* instead.
|
|
659
|
+
*/
|
|
660
|
+
function hasTreeSitterGrammar(language) {
|
|
661
|
+
return !!language && language in WASM_GRAMMAR_FILES;
|
|
662
|
+
}
|
|
551
663
|
/**
|
|
552
664
|
* Check if a language is supported (has a grammar defined).
|
|
553
665
|
* Returns true if the grammar exists, even if not yet loaded.
|