@colbymchenry/codegraph 1.1.3 → 1.1.5

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.
@@ -24,5 +24,28 @@ export declare function normalizeCppReturnType(raw: string): string | undefined;
24
24
  */
25
25
  export declare function stripCppTemplateArgs(name: string): string;
26
26
  export declare const cExtractor: LanguageExtractor;
27
+ /**
28
+ * Blank an export/visibility macro in a `class/struct EXPORT_MACRO Name …`
29
+ * *definition* header before parsing. Not knowing the macro, tree-sitter reads
30
+ * `class EXPORT_MACRO` as an elaborated type specifier and the rest as a
31
+ * function, so the whole class — its name, base clause, and members — drops out
32
+ * of the index (#946 catches the resulting phantom function but can't recover
33
+ * the class), which silently breaks type-hierarchy / inheritance-impact queries
34
+ * for effectively every Unreal-Engine (`*_API`), Qt/Boost (`*_EXPORT`), LLVM
35
+ * (`*_ABI`), … class. Replacing the macro with equal-length spaces preserves
36
+ * every byte offset (and thus line/column), so the declaration then parses as a
37
+ * normal class_specifier and the existing extraction emits the node, members,
38
+ * and `extends` edge. (#1061, follow-up to #946.)
39
+ *
40
+ * Matched tightly so it can't touch the same macro used as an ordinary value
41
+ * elsewhere (`int x = SOME_API;`): the macro is the ALL-CAPS token sitting
42
+ * *between* `class`/`struct` and the type name, and the trailing `[:{]`
43
+ * definition-guard fires only when a base clause or body follows — the only
44
+ * shape that misparses. That guard also leaves elaborated-type variable
45
+ * declarations (`struct FOO var;`, `class FOO obj = …`) untouched, since those
46
+ * end in `;` / `=` / `[`, never `:` / `{`. C++-only (wired into cppExtractor),
47
+ * so C's heavier use of `struct TAG var;` never reaches it.
48
+ */
49
+ export declare function blankCppExportMacros(source: string): string;
27
50
  export declare const cppExtractor: LanguageExtractor;
28
51
  //# sourceMappingURL=c-cpp.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@colbymchenry/codegraph",
3
- "version": "1.1.3",
3
+ "version": "1.1.5",
4
4
  "description": "Local-first code intelligence for AI agents (MCP). Self-contained — bundles its own runtime.",
5
5
  "bin": {
6
6
  "codegraph": "npm-shim.js"
@@ -15,12 +15,12 @@
15
15
  "./package.json": "./package.json"
16
16
  },
17
17
  "optionalDependencies": {
18
- "@colbymchenry/codegraph-darwin-arm64": "1.1.3",
19
- "@colbymchenry/codegraph-darwin-x64": "1.1.3",
20
- "@colbymchenry/codegraph-linux-arm64": "1.1.3",
21
- "@colbymchenry/codegraph-linux-x64": "1.1.3",
22
- "@colbymchenry/codegraph-win32-arm64": "1.1.3",
23
- "@colbymchenry/codegraph-win32-x64": "1.1.3"
18
+ "@colbymchenry/codegraph-darwin-arm64": "1.1.5",
19
+ "@colbymchenry/codegraph-darwin-x64": "1.1.5",
20
+ "@colbymchenry/codegraph-linux-arm64": "1.1.5",
21
+ "@colbymchenry/codegraph-linux-x64": "1.1.5",
22
+ "@colbymchenry/codegraph-win32-arm64": "1.1.5",
23
+ "@colbymchenry/codegraph-win32-x64": "1.1.5"
24
24
  },
25
25
  "files": [
26
26
  "npm-shim.js",