diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_decl.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_decl.out index e56395f2e..64480f4e8 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_decl.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_decl.out @@ -1129,6 +1129,722 @@ } } }, + { + "key": { + "child": { + "decl": { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_1_depth_5" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + } + } + ] + } + } + } + } + } + } + }, + { + "key": { + "child": { + "decl": { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "Class_3" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + } + } + ] + } + } + } + } + } + } + }, + { + "key": { + "child": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 + } + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { "key": { "name": { "key": "D1_NS" } } } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 58, + "columnBegin": 5, + "lineEnd": 62, + "columnEnd": 5 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { + "name": { "key": "D1_NS" } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + }, + { + "key": { + "child": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 + } + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { "key": { "name": { "key": "NsA" } } } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooB" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 26, + "columnBegin": 18, + "lineEnd": 26, + "columnEnd": 41 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + } + }, { "key": { "child": { @@ -1137,18 +1853,23 @@ "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { - "key": { "name": { "key": "D1_NS" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } } } } @@ -1163,10 +1884,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } } @@ -1180,12 +1901,19 @@ "key": { "name": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, - "parent": { "key": { "name": { "key": "D1_NS" } } } + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } } } } @@ -1194,10 +1922,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 58, - "columnBegin": 5, - "lineEnd": 62, - "columnEnd": 5 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } } }, @@ -1209,19 +1937,24 @@ "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "D1_NS" } + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } } } } @@ -1237,10 +1970,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } } @@ -1261,15 +1994,37 @@ "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 } } } @@ -1282,10 +2037,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } } @@ -1299,19 +2054,41 @@ "key": { "name": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { "key": { "name": { "key": "NsA" } } } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } } } }, "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } }, @@ -1319,19 +2096,43 @@ "members": { "key": [ { - "function_": { + "record_": { "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooB" } } }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 } } } @@ -1341,42 +2142,138 @@ } } }, - "signature": { - "key": { - "returns": { "key": "int" }, - "parameters": [ ] - } - }, - "method": { - "isVirtual": false, - "isConst": false, - "isVolatile": false, - "refQualifier": 0 - }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 18, - "lineEnd": 26, - "columnEnd": 41 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + } + } + } + }, + { + "key": { + "child": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } } } } }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ { "record_": { "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } } } } @@ -1389,10 +2286,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } } diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_decl.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_decl.perf index c2d411c91..8bd350b96 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_decl.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_decl.perf @@ -1,9 +1,9 @@ { "@generated": null, "facts_searched": { - "cxx1.FunctionDeclaration.5": 7, - "cxx1.RecordDeclaration.5": 18, - "cxx1.RecordDefinition.5": 10 + "cxx1.FunctionDeclaration.5": 9, + "cxx1.RecordDeclaration.5": 28, + "cxx1.RecordDefinition.5": 15 }, "full_scans": [ "cxx1.FunctionDeclaration.5", "cxx1.RecordDeclaration.5" ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_defn.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_defn.out index 0609896ec..2e268a993 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_defn.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_defn.out @@ -1169,6 +1169,919 @@ } } }, + { + "key": { + "child": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_1_depth_5" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + } + } + ] + } + } + } + } + } + } + }, + { + "key": { + "child": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "Class_3" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + } + } + ] + } + } + } + } + } + } + }, + { + "key": { + "child": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_1" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { + "name": { "key": "D1_NS" } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 60, + "columnBegin": 9, + "lineEnd": 60, + "columnEnd": 44 + } + } + } + } + ] + } + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { "key": { "name": { "key": "D1_NS" } } } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 58, + "columnBegin": 5, + "lineEnd": 62, + "columnEnd": 5 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { + "name": { "key": "D1_NS" } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + }, + { + "key": { + "child": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooC" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsA" } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 29, + "columnBegin": 7, + "lineEnd": 29, + "columnEnd": 30 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsA" } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { "key": { "name": { "key": "NsA" } } } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooB" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 26, + "columnBegin": 18, + "lineEnd": 26, + "columnEnd": 41 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + } + }, { "key": { "child": { @@ -1179,18 +2092,23 @@ "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { - "key": { "name": { "key": "D1_NS" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } } } } @@ -1205,10 +2123,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } }, @@ -1221,28 +2139,288 @@ "name": { "key": { "name": { - "key": { "name": { "key": "foo_in_a_class_1" } } + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "D1_NS" } + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + } + } + ] + } + } + } + } + }, + "parent": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + }, + { + "key": { + "child": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "Class_3" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } } } - } + }, + "access": 2 } } } @@ -1271,10 +2449,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 60, - "columnBegin": 9, - "lineEnd": 60, - "columnEnd": 44 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -1293,13 +2471,30 @@ "key": { "name": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { "key": { "name": { "key": "D1_NS" } } } - } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 } } } @@ -1307,10 +2502,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 58, - "columnBegin": 5, - "lineEnd": 62, - "columnEnd": 5 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } }, @@ -1322,22 +2517,39 @@ "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { - "name": { "key": "D1_NS" } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } } } - } + }, + "access": 2 } } } @@ -1350,10 +2562,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } } @@ -1376,15 +2588,25 @@ "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } } } } @@ -1397,93 +2619,48 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } }, "bases": [ ], "members": { "key": [ - { - "function_": { - "key": { - "name": { - "key": { - "name": { "key": { "name": { "key": "fooC" } } }, - "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassC" }, - "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { - "name": { "key": "NsA" } - } - } - } - } - }, - "access": 2 - } - } - } - }, - "access": 2 - } - } - } - }, - "signature": { - "key": { - "returns": { "key": "int" }, - "parameters": [ ] - } - }, - "method": { - "isVirtual": false, - "isConst": false, - "isVolatile": false, - "refQualifier": 0 - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 29, - "columnBegin": 7, - "lineEnd": 29, - "columnEnd": 30 - } - } - } - }, { "record_": { "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { "key": { - "name": { "key": "NsA" } + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } } } } @@ -1502,10 +2679,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } } @@ -1524,84 +2701,63 @@ "key": { "name": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { - "namespace_": { "key": { "name": { "key": "NsA" } } } + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } } } }, "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 } } }, "bases": [ ], "members": { "key": [ - { - "function_": { - "key": { - "name": { - "key": { - "name": { "key": { "name": { "key": "fooB" } } }, - "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } - } - } - } - }, - "access": 2 - } - } - } - }, - "signature": { - "key": { - "returns": { "key": "int" }, - "parameters": [ ] - } - }, - "method": { - "isVirtual": false, - "isConst": false, - "isVolatile": false, - "refQualifier": 0 - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 18, - "lineEnd": 26, - "columnEnd": 41 - } - } - } - }, { "record_": { "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } } } } @@ -1614,10 +2770,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } } diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_defn.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_defn.perf index 9c3236fbd..d3945082c 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_defn.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxContainsParentEntity_defn.perf @@ -1,10 +1,10 @@ { "@generated": null, "facts_searched": { - "cxx1.FunctionDeclaration.5": 7, - "cxx1.FunctionDefinition.5": 7, - "cxx1.RecordDeclaration.5": 18, - "cxx1.RecordDefinition.5": 18 + "cxx1.FunctionDeclaration.5": 9, + "cxx1.FunctionDefinition.5": 9, + "cxx1.RecordDeclaration.5": 28, + "cxx1.RecordDefinition.5": 28 }, "full_scans": [ "cxx1.FunctionDeclaration.5", diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxPpResolveTraceLocations.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxPpResolveTraceLocations.out index 529e60a63..7230da915 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxPpResolveTraceLocations.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxPpResolveTraceLocations.out @@ -1037,20 +1037,20 @@ { "key": { "tuplefield0": { - "name": "D", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 583, "length": 1 } + "span": { "start": 1157, "length": 7 } } }, "tuplefield1": { @@ -1062,25 +1062,25 @@ "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } } } } - }, - "access": 2 + } } } } @@ -1093,10 +1093,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } }, @@ -1108,36 +1108,40 @@ "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooD" } } }, + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { - "key": "ClassB" - }, - "scope": { - "namespace_": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { "key": { "name": { - "key": "NsA" + "key": "NS_5" } } } } } - }, - "access": 2 + } } } } @@ -1166,10 +1170,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 32, - "columnBegin": 9, - "lineEnd": 32, - "columnEnd": 32 + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 } } } @@ -1186,58 +1190,169 @@ { "key": { "tuplefield0": { - "name": "D1_NS", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 923, "length": 5 } + "span": { "start": 1373, "length": 7 } } }, "tuplefield1": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "D1_NS" } } }, + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "function_": { "key": { "name": { "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { "name": { "key": "D1_NS" } } + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "Class_3" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } } } }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 57, - "columnBegin": 3, - "lineEnd": 63, - "columnEnd": 3 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -1254,40 +1369,42 @@ { "key": { "tuplefield0": { - "name": "D_NS", + "name": "Class_2", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 43, + "lineBegin": 68, "columnBegin": 7, - "lineEnd": 51, + "lineEnd": 72, "columnEnd": 7 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 719, "length": 4 } + "span": { "start": 1133, "length": 7 } } }, "tuplefield1": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } } } } @@ -1295,49 +1412,1122 @@ } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, + "lineBegin": 68, "columnBegin": 7, - "lineEnd": 51, + "lineEnd": 72, "columnEnd": 7 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } } } } } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "Class_2", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1347, "length": 7 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "Class_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1323, "length": 7 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "D", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 583, "length": 1 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooD" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "ClassB" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NsA" + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 32, + "columnBegin": 9, + "lineEnd": 32, + "columnEnd": 32 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "D1_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 923, "length": 5 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "D1_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 57, + "columnBegin": 3, + "lineEnd": 63, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "D_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 719, "length": 4 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 44, + "columnBegin": 9, + "lineEnd": 50, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "E_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 696, "length": 4 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "F_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 675, "length": 4 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "G_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 656, "length": 4 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "G_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "NS_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1114, "length": 4 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1093, "length": 4 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1304, "length": 4 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 44, - "columnBegin": 9, - "lineEnd": 50, - "columnEnd": 9 + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 } } } @@ -1354,20 +2544,20 @@ { "key": { "tuplefield0": { - "name": "E_NS", + "name": "NS_5", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 696, "length": 4 } + "span": { "start": 1074, "length": 4 } } }, "tuplefield1": { @@ -1377,23 +2567,13 @@ "key": { "declaration": { "key": { - "name": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } - } - }, + "name": { "key": { "name": { "key": "NS_5" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } } }, @@ -1404,28 +2584,16 @@ "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 } } } @@ -1442,20 +2610,20 @@ { "key": { "tuplefield0": { - "name": "F_NS", + "name": "NS_5", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 675, "length": 4 } + "span": { "start": 1283, "length": 4 } } }, "tuplefield1": { @@ -1467,15 +2635,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -1487,12 +2655,12 @@ "key": { "name": { "key": { - "name": { "key": "E_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "F_NS" }, + "name": { "key": "NS_5" }, "parent": { - "key": { "name": { "key": "G_NS" } } + "key": { "name": { "key": "NS_6" } } } } } @@ -1500,9 +2668,9 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, + "lineBegin": 78, "columnBegin": 5, - "lineEnd": 52, + "lineEnd": 86, "columnEnd": 5 } } @@ -1520,20 +2688,20 @@ { "key": { "tuplefield0": { - "name": "G_NS", + "name": "NS_6", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 656, "length": 4 } + "span": { "start": 1264, "length": 4 } } }, "tuplefield1": { @@ -1543,12 +2711,12 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "G_NS" } } }, + "name": { "key": { "name": { "key": "NS_6" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } } @@ -1560,15 +2728,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -2820,5 +3988,213 @@ } } } + }, + { + "key": { + "tuplefield0": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } + }, + { + "key": { + "tuplefield0": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "tuplefield1": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxPpResolveTraceLocations.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxPpResolveTraceLocations.perf index b7a3f4643..5ad8e9448 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxPpResolveTraceLocations.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/CxxPpResolveTraceLocations.perf @@ -1,10 +1,10 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 27, - "cxx1.FunctionDefinition.5": 7, - "cxx1.NamespaceDefinition.5": 12, - "cxx1.RecordDefinition.5": 8, + "cxx1.DeclarationNameSpan.5": 40, + "cxx1.FunctionDefinition.5": 9, + "cxx1.NamespaceDefinition.5": 18, + "cxx1.RecordDefinition.5": 13, "cxx1.Trace.5": 1 }, "full_scans": [ "codemarkup.pp.PpResolveTraceLocation.3", "cxx1.Trace.5" ] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_CxxEntityDefinitionBase.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_CxxEntityDefinitionBase.out index df0053557..905c45b0e 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_CxxEntityDefinitionBase.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_CxxEntityDefinitionBase.out @@ -825,6 +825,820 @@ } } }, + { + "key": { + "target": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_1_depth_5" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + }, + "base": { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_1_depth_5" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + } + } + } + }, + { + "key": { + "target": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + }, + "base": { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 45, + "columnBegin": 11, + "lineEnd": 49, + "columnEnd": 11 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { + "name": { "key": "G_NS" } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 46, + "columnBegin": 13, + "lineEnd": 48, + "columnEnd": 13 + } + } + } + } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 45, + "columnBegin": 11, + "lineEnd": 49, + "columnEnd": 11 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { "key": { "name": { "key": "D1_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 57, + "columnBegin": 3, + "lineEnd": 63, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 58, + "columnBegin": 5, + "lineEnd": 62, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { "key": { "name": { "key": "D1_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 57, + "columnBegin": 3, + "lineEnd": 63, + "columnEnd": 3 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 44, + "columnBegin": 9, + "lineEnd": 50, + "columnEnd": 9 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 45, + "columnBegin": 11, + "lineEnd": 49, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 44, + "columnBegin": 9, + "lineEnd": 50, + "columnEnd": 9 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "D1_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { "key": { "name": { "key": "D1_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 57, + "columnBegin": 3, + "lineEnd": 63, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { "key": { "name": { "key": "D1_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 44, + "columnBegin": 9, + "lineEnd": 50, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + } + } + } + }, { "key": { "target": { @@ -834,38 +1648,245 @@ "key": { "name": { "key": { - "name": { "key": "B_NS" }, + "name": { "key": "E_NS" }, "parent": { "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } } } } } } } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "G_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { "key": { "name": { "key": "G_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 45, - "columnBegin": 11, - "lineEnd": 49, - "columnEnd": 11 + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 } } }, @@ -876,33 +1897,16 @@ "key": { "name": { "key": { - "name": { "key": "A_Class" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "B_NS" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "C_NS" }, + "name": { "key": "NS_4" }, "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { - "name": { "key": "G_NS" } - } - } - } - } - } - } - } + "key": { "name": { "key": "NS_5" } } } } } @@ -914,10 +1918,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 46, - "columnBegin": 13, - "lineEnd": 48, - "columnEnd": 13 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } } } @@ -932,38 +1936,21 @@ "key": { "name": { "key": { - "name": { "key": "B_NS" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } - } - } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 45, - "columnBegin": 11, - "lineEnd": 49, - "columnEnd": 11 + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 } } } @@ -979,15 +1966,15 @@ "key": { "name": { "key": { - "name": { "key": "C1_NS" }, - "parent": { "key": { "name": { "key": "D1_NS" } } } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 57, + "lineBegin": 66, "columnBegin": 3, - "lineEnd": 63, + "lineEnd": 74, "columnEnd": 3 } } @@ -995,29 +1982,24 @@ "members": { "key": [ { - "record_": { + "namespace_": { "key": { "name": { "key": { - "name": { "key": "B_Class_1" }, - "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { "name": { "key": "D1_NS" } } - } - } + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } } } }, - "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 58, + "lineBegin": 67, "columnBegin": 5, - "lineEnd": 62, + "lineEnd": 73, "columnEnd": 5 } } @@ -1033,15 +2015,15 @@ "key": { "name": { "key": { - "name": { "key": "C1_NS" }, - "parent": { "key": { "name": { "key": "D1_NS" } } } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 57, + "lineBegin": 66, "columnBegin": 3, - "lineEnd": 63, + "lineEnd": 74, "columnEnd": 3 } } @@ -1058,61 +2040,41 @@ "key": { "name": { "key": { - "name": { "key": "C_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 44, - "columnBegin": 9, - "lineEnd": 50, - "columnEnd": 9 + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 } } }, "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "B_NS" }, - "parent": { - "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } } } } @@ -1121,12 +2083,13 @@ } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 45, - "columnBegin": 11, - "lineEnd": 49, - "columnEnd": 11 + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 } } } @@ -1141,31 +2104,154 @@ "key": { "name": { "key": { - "name": { "key": "C_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "NS_5" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { "key": { "name": { "key": "NS_5" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 + } + } + } + } + } + }, + { + "key": { + "target": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 77, + "columnBegin": 3, + "lineEnd": 87, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } } } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 } } } } + ] + } + } + } + }, + "base": { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 44, - "columnBegin": 9, - "lineEnd": 50, - "columnEnd": 9 + "lineBegin": 77, + "columnBegin": 3, + "lineEnd": 87, + "columnEnd": 3 } } } @@ -1179,12 +2265,12 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "D1_NS" } } }, + "name": { "key": { "name": { "key": "NS_6" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 56, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 64, + "lineEnd": 88, "columnEnd": 1 } } @@ -1196,15 +2282,15 @@ "key": { "name": { "key": { - "name": { "key": "C1_NS" }, - "parent": { "key": { "name": { "key": "D1_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 57, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 63, + "lineEnd": 87, "columnEnd": 3 } } @@ -1218,12 +2304,12 @@ "base": { "namespace_": { "key": { - "name": { "key": { "name": { "key": "D1_NS" } } }, + "name": { "key": { "name": { "key": "NS_6" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 56, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 64, + "lineEnd": 88, "columnEnd": 1 } } @@ -1238,28 +2324,13 @@ "key": { "declaration": { "key": { - "name": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } - } - } - } - }, + "name": { "key": { "name": { "key": "NsA" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 9, + "columnBegin": 1, + "lineEnd": 38, + "columnEnd": 1 } } }, @@ -1270,33 +2341,40 @@ "key": { "name": { "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 11, + "columnBegin": 3, + "lineEnd": 24, + "columnEnd": 3 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 44, - "columnBegin": 9, - "lineEnd": 50, - "columnEnd": 9 + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 } } } @@ -1309,28 +2387,13 @@ "base": { "namespace_": { "key": { - "name": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } - } - } - } - }, + "name": { "key": { "name": { "key": "NsA" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 9, + "columnBegin": 1, + "lineEnd": 38, + "columnEnd": 1 } } } @@ -1346,21 +2409,16 @@ "key": { "name": { "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 11, + "columnBegin": 3, + "lineEnd": 24, + "columnEnd": 3 } } }, @@ -1371,28 +2429,50 @@ "key": { "name": { "key": { - "name": { "key": "D_NS" }, + "name": { "key": "NsC" }, "parent": { "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 12, + "columnBegin": 5, + "lineEnd": 18, + "columnEnd": 5 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "classBinNSB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } } } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 19, + "columnBegin": 5, + "lineEnd": 23, + "columnEnd": 5 } } } @@ -1407,21 +2487,16 @@ "key": { "name": { "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 11, + "columnBegin": 3, + "lineEnd": 24, + "columnEnd": 3 } } } @@ -1437,16 +2512,21 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, - "columnBegin": 3, - "lineEnd": 53, - "columnEnd": 3 + "lineBegin": 12, + "columnBegin": 5, + "lineEnd": 18, + "columnEnd": 5 } } }, @@ -1457,21 +2537,28 @@ "key": { "name": { "key": { - "name": { "key": "E_NS" }, + "name": { "key": "NsD" }, "parent": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 13, + "columnBegin": 7, + "lineEnd": 17, + "columnEnd": 7 } } } @@ -1486,16 +2573,21 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, - "columnBegin": 3, - "lineEnd": 53, - "columnEnd": 3 + "lineBegin": 12, + "columnBegin": 5, + "lineEnd": 18, + "columnEnd": 5 } } } @@ -1509,33 +2601,73 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "G_NS" } } }, + "name": { + "key": { + "name": { "key": "NsD" }, + "parent": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + } + } + } + } + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 40, - "columnBegin": 1, - "lineEnd": 54, - "columnEnd": 1 + "lineBegin": 13, + "columnBegin": 7, + "lineEnd": 17, + "columnEnd": 7 } } }, "members": { "key": [ { - "namespace_": { + "function_": { "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": { "name": { "key": "fooFun" } } }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsD" }, + "parent": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } + } + } + } + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, - "columnBegin": 3, - "lineEnd": 53, - "columnEnd": 3 + "lineBegin": 14, + "columnBegin": 9, + "lineEnd": 16, + "columnEnd": 9 } } } @@ -1548,13 +2680,28 @@ "base": { "namespace_": { "key": { - "name": { "key": { "name": { "key": "G_NS" } } }, + "name": { + "key": { + "name": { "key": "NsD" }, + "parent": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + } + } + } + } + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 40, - "columnBegin": 1, - "lineEnd": 54, - "columnEnd": 1 + "lineBegin": 13, + "columnBegin": 7, + "lineEnd": 17, + "columnEnd": 7 } } } @@ -1564,61 +2711,132 @@ { "key": { "target": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "NsA" } } }, + "name": { + "key": { + "name": { "key": "A_Class" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 9, - "columnBegin": 1, - "lineEnd": 38, - "columnEnd": 1 + "lineBegin": 46, + "columnBegin": 13, + "lineEnd": 48, + "columnEnd": 13 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { - "key": { - "name": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } - } - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 11, - "columnBegin": 3, - "lineEnd": 24, - "columnEnd": 3 - } - } - } - }, - { - "record_": { + "function_": { "key": { "name": { "key": { - "name": { "key": "ClassB" }, + "name": { + "key": { "name": { "key": "foo_in_a_class" } } + }, "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "A_Class" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { + "key": "F_NS" + }, + "parent": { + "key": { + "name": { + "key": "G_NS" + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "access": 2 } } } }, - "kind": { "class_": { } }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 + "lineBegin": 47, + "columnBegin": 15, + "lineEnd": 47, + "columnEnd": 48 } } } @@ -1629,15 +2847,50 @@ } }, "base": { - "namespace_": { + "record_": { "key": { - "name": { "key": { "name": { "key": "NsA" } } }, + "name": { + "key": { + "name": { "key": "A_Class" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 9, - "columnBegin": 1, - "lineEnd": 38, - "columnEnd": 1 + "lineBegin": 46, + "columnBegin": 13, + "lineEnd": 48, + "columnEnd": 13 } } } @@ -1647,76 +2900,108 @@ { "key": { "target": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { "name": { "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + } + } + } + }, + "access": 2 + } + } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 11, - "columnBegin": 3, - "lineEnd": 24, - "columnEnd": 3 + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "function_": { "key": { "name": { "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } + "name": { + "key": { "name": { "key": "foo_in_a_class_1" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { + "name": { "key": "D1_NS" } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 } } } }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 12, - "columnBegin": 5, - "lineEnd": 18, - "columnEnd": 5 - } - } - } - }, - { - "record_": { - "key": { - "name": { + "signature": { "key": { - "name": { "key": "classBinNSB" }, - "scope": { - "namespace_": { - "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { "name": { "key": "NsA" } } - } - } - } - } + "returns": { "key": "int" }, + "parameters": [ ] } }, - "kind": { "class_": { } }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 19, - "columnBegin": 5, - "lineEnd": 23, - "columnEnd": 5 + "lineBegin": 60, + "columnBegin": 9, + "lineEnd": 60, + "columnEnd": 44 } } } @@ -1727,20 +3012,40 @@ } }, "base": { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + } + } + } + }, + "access": 2 + } + } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 11, - "columnBegin": 3, - "lineEnd": 24, - "columnEnd": 3 + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 } } } @@ -1750,58 +3055,70 @@ { "key": { "target": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { "name": { "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { "key": { "name": { "key": "D1_NS" } } } + } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 12, + "lineBegin": 58, "columnBegin": 5, - "lineEnd": 18, + "lineEnd": 62, "columnEnd": 5 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { "name": { "key": "NsA" } } + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + } } } - } + }, + "access": 2 } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 13, + "lineBegin": 59, "columnBegin": 7, - "lineEnd": 17, + "lineEnd": 61, "columnEnd": 7 } } @@ -1813,24 +3130,27 @@ } }, "base": { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { "key": { "name": { "key": "D1_NS" } } } + } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 12, + "lineBegin": 58, "columnBegin": 5, - "lineEnd": 18, + "lineEnd": 62, "columnEnd": 5 } } @@ -1840,36 +3160,30 @@ }, { "key": { - "target": { - "namespace_": { - "key": { - "declaration": { - "key": { - "name": { - "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } - } - } - } + "target": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { "key": { "name": { "key": "NsA" } } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 13, - "columnBegin": 7, - "lineEnd": 17, - "columnEnd": 7 + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 } } }, + "bases": [ ], "members": { "key": [ { @@ -1877,25 +3191,20 @@ "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooFun" } } }, + "name": { "key": { "name": { "key": "fooB" } } }, "scope": { - "namespace_": { - "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { "name": { "key": "NsA" } } - } - } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } } } } - } + }, + "access": 2 } } } @@ -1906,12 +3215,52 @@ "parameters": [ ] } }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 14, - "columnBegin": 9, - "lineEnd": 16, - "columnEnd": 9 + "lineBegin": 26, + "columnBegin": 18, + "lineEnd": 26, + "columnEnd": 41 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 } } } @@ -1922,30 +3271,23 @@ } }, "base": { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } - } - } - } + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { "key": { "name": { "key": "NsA" } } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 13, - "columnBegin": 7, - "lineEnd": 17, - "columnEnd": 7 + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 } } } @@ -1961,35 +3303,20 @@ "key": { "name": { "key": { - "name": { "key": "A_Class" }, + "name": { "key": "ClassC" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "B_NS" }, - "parent": { - "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } - } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } } } } - } + }, + "access": 2 } } } @@ -1997,10 +3324,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 46, - "columnBegin": 13, - "lineEnd": 48, - "columnEnd": 13 + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 } } }, @@ -2012,48 +3339,27 @@ "key": { "name": { "key": { - "name": { - "key": { "name": { "key": "foo_in_a_class" } } - }, + "name": { "key": { "name": { "key": "fooC" } } }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "A_Class" }, + "name": { "key": "ClassC" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "B_NS" }, - "parent": { - "key": { - "name": { "key": "C_NS" }, - "parent": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { - "key": "F_NS" - }, - "parent": { - "key": { - "name": { - "key": "G_NS" - } - } - } - } - } - } - } + "name": { "key": "NsA" } } } } } - } + }, + "access": 2 } } } @@ -2077,10 +3383,56 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 47, - "columnBegin": 15, - "lineEnd": 47, - "columnEnd": 48 + "lineBegin": 29, + "columnBegin": 7, + "lineEnd": 29, + "columnEnd": 30 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsA" } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 } } } @@ -2095,35 +3447,18 @@ "key": { "name": { "key": { - "name": { "key": "A_Class" }, + "name": { "key": "ClassC" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "B_NS" }, - "parent": { - "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } - } - } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { "key": { "name": { "key": "NsA" } } } } } - } + }, + "access": 2 } } } @@ -2131,10 +3466,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 46, - "columnBegin": 13, - "lineEnd": 48, - "columnEnd": 13 + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 } } } @@ -2150,18 +3485,23 @@ "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { - "key": { "name": { "key": "D1_NS" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } } } } @@ -2176,10 +3516,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } }, @@ -2192,25 +3532,34 @@ "name": { "key": { "name": { - "key": { "name": { "key": "foo_in_a_class_1" } } + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "D1_NS" } + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + } + } + } } } } @@ -2242,10 +3591,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 60, - "columnBegin": 9, - "lineEnd": 60, - "columnEnd": 44 + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 } } } @@ -2260,18 +3609,23 @@ "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { - "key": { "name": { "key": "D1_NS" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } } } } @@ -2286,10 +3640,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } } @@ -2305,13 +3659,42 @@ "key": { "name": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_1" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { "key": { "name": { "key": "D1_NS" } } } - } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 } } } @@ -2319,10 +3702,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 58, - "columnBegin": 5, - "lineEnd": 62, - "columnEnd": 5 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } }, @@ -2330,24 +3713,61 @@ "members": { "key": [ { - "record_": { + "function_": { "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_1" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { "name": { "key": "D1_NS" } } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } } - } + }, + "access": 2 } } } @@ -2357,13 +3777,24 @@ } } }, - "kind": { "class_": { } }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -2378,13 +3809,40 @@ "key": { "name": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_1" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { "key": { "name": { "key": "D1_NS" } } } - } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 } } } @@ -2392,10 +3850,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 58, - "columnBegin": 5, - "lineEnd": 62, - "columnEnd": 5 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } } @@ -2409,86 +3867,63 @@ "key": { "declaration": { "key": { - "name": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { "key": { "name": { "key": "NsA" } } } - } - } - }, - "kind": { "class_": { } }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 - } - } - }, - "bases": [ ], - "members": { - "key": [ - { - "function_": { - "key": { - "name": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { "key": { - "name": { "key": { "name": { "key": "fooB" } } }, - "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } - } - } - } - }, - "access": 2 + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } } } - }, - "signature": { - "key": { - "returns": { "key": "int" }, - "parameters": [ ] - } - }, - "method": { - "isVirtual": false, - "isConst": false, - "isVolatile": false, - "refQualifier": 0 - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 18, - "lineEnd": 26, - "columnEnd": 41 } } } }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ { "record_": { "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } } } } @@ -2501,10 +3936,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } } @@ -2519,19 +3954,29 @@ "key": { "name": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { "key": { "name": { "key": "NsA" } } } + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + } } } }, "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } } } @@ -2547,15 +3992,25 @@ "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } } } } @@ -2568,10 +4023,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } }, @@ -2579,25 +4034,37 @@ "members": { "key": [ { - "function_": { + "record_": { "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooC" } } }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { "key": { - "name": { "key": "NsA" } + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } } } } @@ -2613,54 +4080,132 @@ } } }, - "signature": { - "key": { - "returns": { "key": "int" }, - "parameters": [ ] - } - }, - "method": { - "isVirtual": false, - "isConst": false, - "isVolatile": false, - "refQualifier": 0 - }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 29, - "columnBegin": 7, - "lineEnd": 29, - "columnEnd": 30 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + }, + "base": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + } + } + } + }, + { + "key": { + "target": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } } } } }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ { "record_": { "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_3" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { - "name": { "key": "NsA" } + "name": { "key": "NS_6" } } } } } - }, - "access": 2 + } } } } @@ -2673,10 +4218,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } } @@ -2691,18 +4236,18 @@ "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_3" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { "key": { "name": { "key": "NsA" } } } + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } } - }, - "access": 2 + } } } } @@ -2710,10 +4255,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 } } } diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_CxxEntityDefinitionBase.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_CxxEntityDefinitionBase.perf index a142be343..6e252f773 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_CxxEntityDefinitionBase.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_CxxEntityDefinitionBase.perf @@ -1,9 +1,9 @@ { "@generated": null, "facts_searched": { - "cxx1.FunctionDefinition.5": 7, - "cxx1.NamespaceDefinition.5": 12, - "cxx1.RecordDefinition.5": 16 + "cxx1.FunctionDefinition.5": 9, + "cxx1.NamespaceDefinition.5": 18, + "cxx1.RecordDefinition.5": 26 }, "full_scans": [ "cxx1.FunctionDefinition.5", diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_EntityReferences_decl.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_EntityReferences_decl.perf index 194a74586..e18893296 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_EntityReferences_decl.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_EntityReferences_decl.perf @@ -1,5 +1,5 @@ { "@generated": null, - "facts_searched": { "cxx1.Declarations.5": 21 }, + "facts_searched": { "cxx1.Declarations.5": 32 }, "full_scans": [ "cxx1.Declarations.5" ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_searchbyname.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_searchbyname.out index 3ac5bb5b9..d8c6911fc 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_searchbyname.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/codemarkup_searchbyname.out @@ -1069,7 +1069,7 @@ { "key": { "searchcase": 0, - "name": "D", + "name": "Class_1", "entity": { "cxx": { "defn": { @@ -1079,25 +1079,25 @@ "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } } } } - }, - "access": 2 + } } } } @@ -1110,10 +1110,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } }, @@ -1125,36 +1125,40 @@ "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooD" } } }, + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { - "key": "ClassB" - }, - "scope": { - "namespace_": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { "key": { "name": { - "key": "NsA" + "key": "NS_5" } } } } } - }, - "access": 2 + } } } } @@ -1183,10 +1187,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 32, - "columnBegin": 9, - "lineEnd": 32, - "columnEnd": 32 + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 } } } @@ -1199,20 +1203,20 @@ } }, "location": { - "name": "D", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 583, "length": 1 } + "span": { "start": 1157, "length": 7 } } }, "kind": 6, @@ -1222,43 +1226,154 @@ { "key": { "searchcase": 0, - "name": "D1_NS", + "name": "Class_1", "entity": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "D1_NS" } } }, + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "function_": { "key": { "name": { "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { "name": { "key": "D1_NS" } } + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "Class_3" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } } } }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 57, - "columnBegin": 3, - "lineEnd": 63, - "columnEnd": 3 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -1271,48 +1386,50 @@ } }, "location": { - "name": "D1_NS", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 923, "length": 5 } + "span": { "start": 1373, "length": 7 } } }, - "kind": 5, + "kind": 6, "language": 0 } }, { "key": { "searchcase": 0, - "name": "D_NS", + "name": "Class_2", "entity": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } } } } @@ -1320,48 +1437,60 @@ } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, + "lineBegin": 68, "columnBegin": 7, - "lineEnd": 51, + "lineEnd": 72, "columnEnd": 7 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } } } } } - } + }, + "access": 2 } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 44, + "lineBegin": 69, "columnBegin": 9, - "lineEnd": 50, + "lineEnd": 71, "columnEnd": 9 } } @@ -1375,20 +1504,1125 @@ } }, "location": { - "name": "D_NS", + "name": "Class_2", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 43, + "lineBegin": 68, "columnBegin": 7, - "lineEnd": 51, + "lineEnd": 72, "columnEnd": 7 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 719, "length": 4 } + "span": { "start": 1133, "length": 7 } + } + }, + "kind": 6, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "Class_2", + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "Class_2", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1347, "length": 7 } + } + }, + "kind": 6, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "Class_3", + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "Class_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1323, "length": 7 } + } + }, + "kind": 6, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "D", + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooD" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "ClassB" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NsA" + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 32, + "columnBegin": 9, + "lineEnd": 32, + "columnEnd": 32 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "D", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 583, "length": 1 } + } + }, + "kind": 6, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "D1_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "D1_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 57, + "columnBegin": 3, + "lineEnd": 63, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "D1_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 923, "length": 5 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "D_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 44, + "columnBegin": 9, + "lineEnd": 50, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "D_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 719, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "E_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "E_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 696, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "F_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "F_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 675, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "G_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "G_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "G_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 656, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "NS_3", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "NS_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1114, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "NS_4", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1093, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "NS_4", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1304, "length": 4 } } }, "kind": 5, @@ -1398,7 +2632,7 @@ { "key": { "searchcase": 0, - "name": "E_NS", + "name": "NS_5", "entity": { "cxx": { "defn": { @@ -1406,23 +2640,13 @@ "key": { "declaration": { "key": { - "name": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } - } - }, + "name": { "key": { "name": { "key": "NS_5" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } } }, @@ -1433,28 +2657,16 @@ "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 } } } @@ -1467,20 +2679,20 @@ } }, "location": { - "name": "E_NS", + "name": "NS_5", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 696, "length": 4 } + "span": { "start": 1074, "length": 4 } } }, "kind": 5, @@ -1490,7 +2702,7 @@ { "key": { "searchcase": 0, - "name": "F_NS", + "name": "NS_5", "entity": { "cxx": { "defn": { @@ -1500,15 +2712,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -1520,12 +2732,12 @@ "key": { "name": { "key": { - "name": { "key": "E_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "F_NS" }, + "name": { "key": "NS_5" }, "parent": { - "key": { "name": { "key": "G_NS" } } + "key": { "name": { "key": "NS_6" } } } } } @@ -1533,9 +2745,9 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, + "lineBegin": 78, "columnBegin": 5, - "lineEnd": 52, + "lineEnd": 86, "columnEnd": 5 } } @@ -1549,20 +2761,20 @@ } }, "location": { - "name": "F_NS", + "name": "NS_5", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 675, "length": 4 } + "span": { "start": 1283, "length": 4 } } }, "kind": 5, @@ -1572,7 +2784,7 @@ { "key": { "searchcase": 0, - "name": "G_NS", + "name": "NS_6", "entity": { "cxx": { "defn": { @@ -1580,12 +2792,12 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "G_NS" } } }, + "name": { "key": { "name": { "key": "NS_6" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } } @@ -1597,15 +2809,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -1619,20 +2831,20 @@ } }, "location": { - "name": "G_NS", + "name": "NS_6", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 656, "length": 4 } + "span": { "start": 1264, "length": 4 } } }, "kind": 5, @@ -2928,5 +4140,221 @@ "kind": 13, "language": 0 } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_depth_6", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/cxx_entity_location.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/cxx_entity_location.out index 6f34961b3..7376cd4a9 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/cxx_entity_location.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/cxx_entity_location.out @@ -588,6 +588,208 @@ } } }, + { + "key": { + "entity": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_1_depth_5" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + } + } + }, { "key": { "entity": { @@ -1294,46 +1496,47 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "NsA" } } }, + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 9, - "columnBegin": 1, - "lineEnd": 38, - "columnEnd": 1 + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 } } }, "members": { "key": [ - { - "namespace_": { - "key": { - "name": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } - } - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 11, - "columnBegin": 3, - "lineEnd": 24, - "columnEnd": 3 - } - } - } - }, { "record_": { "key": { "name": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } } } } @@ -1341,10 +1544,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } } } @@ -1356,20 +1559,20 @@ } }, "location": { - "name": "NsA", + "name": "NS_3", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 9, - "columnBegin": 1, - "lineEnd": 38, - "columnEnd": 1 + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 231, "length": 3 } + "span": { "start": 1114, "length": 4 } } } } @@ -1384,15 +1587,15 @@ "key": { "name": { "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 11, + "lineBegin": 66, "columnBegin": 3, - "lineEnd": 24, + "lineEnd": 74, "columnEnd": 3 } } @@ -1404,12 +1607,12 @@ "key": { "name": { "key": { - "name": { "key": "NsC" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "NsB" }, + "name": { "key": "NS_4" }, "parent": { - "key": { "name": { "key": "NsA" } } + "key": { "name": { "key": "NS_5" } } } } } @@ -1417,39 +1620,982 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 12, + "lineBegin": 67, "columnBegin": 5, - "lineEnd": 18, + "lineEnd": 73, "columnEnd": 5 } } } - }, - { - "record_": { - "key": { - "name": { - "key": { - "name": { "key": "classBinNSB" }, - "scope": { - "namespace_": { - "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { "name": { "key": "NsA" } } - } - } - } - } - } - }, - "kind": { "class_": { } }, + } + ] + } + } + } + } + }, + "location": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1093, "length": 4 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1304, "length": 4 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "NS_5" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "NS_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1074, "length": 4 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 77, + "columnBegin": 3, + "lineEnd": 87, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "NS_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 77, + "columnBegin": 3, + "lineEnd": 87, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1283, "length": 4 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "NS_6" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 76, + "columnBegin": 1, + "lineEnd": 88, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 77, + "columnBegin": 3, + "lineEnd": 87, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "NS_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 76, + "columnBegin": 1, + "lineEnd": 88, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1264, "length": 4 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "NsA" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 9, + "columnBegin": 1, + "lineEnd": 38, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 11, + "columnBegin": 3, + "lineEnd": 24, + "columnEnd": 3 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "NsA", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 9, + "columnBegin": 1, + "lineEnd": 38, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 231, "length": 3 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 11, + "columnBegin": 3, + "lineEnd": 24, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 12, + "columnBegin": 5, + "lineEnd": 18, + "columnEnd": 5 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "classBinNSB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 19, + "columnBegin": 5, + "lineEnd": 23, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "NsB", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 11, + "columnBegin": 3, + "lineEnd": 24, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 250, "length": 3 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 12, + "columnBegin": 5, + "lineEnd": 18, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NsD" }, + "parent": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 13, + "columnBegin": 7, + "lineEnd": 17, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "NsC", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 12, + "columnBegin": 5, + "lineEnd": 18, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 270, "length": 3 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NsD" }, + "parent": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 13, + "columnBegin": 7, + "lineEnd": 17, + "columnEnd": 7 + } + } + }, + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooFun" } } }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsD" }, + "parent": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } + } + } + } + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 14, + "columnBegin": 9, + "lineEnd": 16, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "NsD", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 13, + "columnBegin": 7, + "lineEnd": 17, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 292, "length": 3 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { + "name": { "key": "G_NS" } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 46, + "columnBegin": 13, + "lineEnd": 48, + "columnEnd": 13 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "A_Class" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { + "key": "F_NS" + }, + "parent": { + "key": { + "name": { + "key": "G_NS" + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 47, + "columnBegin": 15, + "lineEnd": 47, + "columnEnd": 48 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "A_Class", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 46, + "columnBegin": 13, + "lineEnd": 48, + "columnEnd": 13 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 796, "length": 7 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_1" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { + "name": { "key": "D1_NS" } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 19, - "columnBegin": 5, - "lineEnd": 23, - "columnEnd": 5 + "lineBegin": 60, + "columnBegin": 9, + "lineEnd": 60, + "columnEnd": 44 } } } @@ -1461,20 +2607,20 @@ } }, "location": { - "name": "NsB", + "name": "A_Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 11, - "columnBegin": 3, - "lineEnd": 24, - "columnEnd": 3 + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 250, "length": 3 } + "span": { "start": 985, "length": 9 } } } } @@ -1483,58 +2629,72 @@ "key": { "entity": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { "name": { "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { "key": { "name": { "key": "D1_NS" } } } + } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 12, + "lineBegin": 58, "columnBegin": 5, - "lineEnd": 18, + "lineEnd": 62, "columnEnd": 5 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { "name": { "key": "NsA" } } + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { + "name": { "key": "D1_NS" } + } + } + } + } } } - } + }, + "access": 2 } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 13, + "lineBegin": 59, "columnBegin": 7, - "lineEnd": 17, + "lineEnd": 61, "columnEnd": 7 } } @@ -1547,20 +2707,20 @@ } }, "location": { - "name": "NsC", + "name": "B_Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 12, + "lineBegin": 58, "columnBegin": 5, - "lineEnd": 18, + "lineEnd": 62, "columnEnd": 5 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 270, "length": 3 } + "span": { "start": 961, "length": 9 } } } } @@ -1569,35 +2729,29 @@ "key": { "entity": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { "name": { "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } - } - } - } + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { "key": { "name": { "key": "NsA" } } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 13, - "columnBegin": 7, - "lineEnd": 17, - "columnEnd": 7 + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 } } }, + "bases": [ ], "members": { "key": [ { @@ -1605,25 +2759,20 @@ "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooFun" } } }, + "name": { "key": { "name": { "key": "fooB" } } }, "scope": { - "namespace_": { - "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { "name": { "key": "NsA" } } - } - } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } } } } - } + }, + "access": 2 } } } @@ -1634,12 +2783,52 @@ "parameters": [ ] } }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 14, - "columnBegin": 9, - "lineEnd": 16, - "columnEnd": 9 + "lineBegin": 26, + "columnBegin": 18, + "lineEnd": 26, + "columnEnd": 41 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 } } } @@ -1651,20 +2840,20 @@ } }, "location": { - "name": "NsD", + "name": "ClassB", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 13, - "columnBegin": 7, - "lineEnd": 17, - "columnEnd": 7 + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 292, "length": 3 } + "span": { "start": 484, "length": 6 } } } } @@ -1674,42 +2863,25 @@ "entity": { "defn": { "record_": { - "key": { - "declaration": { - "key": { - "name": { - "key": { - "name": { "key": "A_Class" }, - "scope": { - "namespace_": { - "key": { - "name": { "key": "B_NS" }, - "parent": { - "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { - "name": { "key": "G_NS" } - } - } - } - } - } - } - } + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } } } } - } + }, + "access": 2 } } } @@ -1717,10 +2889,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 46, - "columnBegin": 13, - "lineEnd": 48, - "columnEnd": 13 + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 } } }, @@ -1732,48 +2904,27 @@ "key": { "name": { "key": { - "name": { - "key": { "name": { "key": "foo_in_a_class" } } - }, + "name": { "key": { "name": { "key": "fooC" } } }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "A_Class" }, + "name": { "key": "ClassC" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "B_NS" }, - "parent": { - "key": { - "name": { "key": "C_NS" }, - "parent": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { - "key": "F_NS" - }, - "parent": { - "key": { - "name": { - "key": "G_NS" - } - } - } - } - } - } - } + "name": { "key": "NsA" } } } } } - } + }, + "access": 2 } } } @@ -1797,10 +2948,56 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 47, - "columnBegin": 15, - "lineEnd": 47, - "columnEnd": 48 + "lineBegin": 29, + "columnBegin": 7, + "lineEnd": 29, + "columnEnd": 30 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsA" } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 } } } @@ -1812,20 +3009,20 @@ } }, "location": { - "name": "A_Class", + "name": "ClassC", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 46, - "columnBegin": 13, - "lineEnd": 48, - "columnEnd": 13 + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 796, "length": 7 } + "span": { "start": 530, "length": 6 } } } } @@ -1840,18 +3037,23 @@ "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { - "key": { "name": { "key": "D1_NS" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } } } } @@ -1866,10 +3068,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } }, @@ -1882,25 +3084,34 @@ "name": { "key": { "name": { - "key": { "name": { "key": "foo_in_a_class_1" } } + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "D1_NS" } + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + } + } + } } } } @@ -1932,10 +3143,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 60, - "columnBegin": 9, - "lineEnd": 60, - "columnEnd": 44 + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 } } } @@ -1947,20 +3158,20 @@ } }, "location": { - "name": "A_Class_1", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 985, "length": 9 } + "span": { "start": 1157, "length": 7 } } } } @@ -1975,13 +3186,42 @@ "key": { "name": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_1" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { "key": { "name": { "key": "D1_NS" } } } - } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 } } } @@ -1989,10 +3229,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 58, - "columnBegin": 5, - "lineEnd": 62, - "columnEnd": 5 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } }, @@ -2000,26 +3240,63 @@ "members": { "key": [ { - "record_": { + "function_": { "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_1" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { - "name": { "key": "D1_NS" } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "Class_3" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } } } - } + }, + "access": 2 } } } @@ -2029,13 +3306,24 @@ } } }, - "kind": { "class_": { } }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -2047,20 +3335,20 @@ } }, "location": { - "name": "B_Class_1", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 58, - "columnBegin": 5, - "lineEnd": 62, - "columnEnd": 5 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 961, "length": 9 } + "span": { "start": 1373, "length": 7 } } } } @@ -2075,84 +3363,63 @@ "key": { "name": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { "key": { "name": { "key": "NsA" } } } + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } } } }, "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } } }, "bases": [ ], "members": { "key": [ - { - "function_": { - "key": { - "name": { - "key": { - "name": { "key": { "name": { "key": "fooB" } } }, - "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } - } - } - } - }, - "access": 2 - } - } - } - }, - "signature": { - "key": { - "returns": { "key": "int" }, - "parameters": [ ] - } - }, - "method": { - "isVirtual": false, - "isConst": false, - "isVolatile": false, - "refQualifier": 0 - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 18, - "lineEnd": 26, - "columnEnd": 41 - } - } - } - }, { "record_": { "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } } } } @@ -2165,10 +3432,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } } @@ -2180,20 +3447,20 @@ } }, "location": { - "name": "ClassB", + "name": "Class_2", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 484, "length": 6 } + "span": { "start": 1133, "length": 7 } } } } @@ -2208,15 +3475,25 @@ "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } } } } @@ -2229,10 +3506,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } }, @@ -2240,25 +3517,37 @@ "members": { "key": [ { - "function_": { + "record_": { "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooC" } } }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { "key": { - "name": { "key": "NsA" } + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } } } } @@ -2274,54 +3563,109 @@ } } }, - "signature": { - "key": { - "returns": { "key": "int" }, - "parameters": [ ] - } - }, - "method": { - "isVirtual": false, - "isConst": false, - "isVolatile": false, - "refQualifier": 0 - }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 29, - "columnBegin": 7, - "lineEnd": 29, - "columnEnd": 30 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + } + }, + "location": { + "name": "Class_2", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1347, "length": 7 } + } + } + } + }, + { + "key": { + "entity": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } } } } }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ { "record_": { "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_3" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { - "name": { "key": "NsA" } + "name": { "key": "NS_6" } } } } } - }, - "access": 2 + } } } } @@ -2334,10 +3678,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } } @@ -2349,20 +3693,20 @@ } }, "location": { - "name": "ClassC", + "name": "Class_3", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 530, "length": 6 } + "span": { "start": 1323, "length": 7 } } } } diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/cxx_entity_location.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/cxx_entity_location.perf index 86ccc161c..daa0bf108 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/cxx_entity_location.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/cxx_entity_location.perf @@ -1,10 +1,10 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 54, - "cxx1.FunctionDefinition.5": 7, - "cxx1.NamespaceDefinition.5": 12, - "cxx1.RecordDefinition.5": 8, + "cxx1.DeclarationNameSpan.5": 80, + "cxx1.FunctionDefinition.5": 9, + "cxx1.NamespaceDefinition.5": 18, + "cxx1.RecordDefinition.5": 13, "cxx1.Trace.5": 1 }, "full_scans": [ "cxx1.Trace.5" ] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/decltodeftodecl.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/decltodeftodecl.perf index 826ab09ac..c3e1ac935 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/decltodeftodecl.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/decltodeftodecl.perf @@ -1,10 +1,10 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 27, - "cxx1.FunctionDefinition.5": 7, - "cxx1.NamespaceDefinition.5": 12, - "cxx1.RecordDefinition.5": 8, + "cxx1.DeclarationNameSpan.5": 40, + "cxx1.FunctionDefinition.5": 9, + "cxx1.NamespaceDefinition.5": 18, + "cxx1.RecordDefinition.5": 13, "cxx1.Trace.5": 1 }, "full_scans": [ "cxx1.Trace.5" ] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/fileentities.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/fileentities.out index c2186a52b..9521fe3e9 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/fileentities.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/fileentities.out @@ -1046,20 +1046,20 @@ "key": { "file": { "key": "test.cpp" }, "location": { - "name": "D", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 583, "length": 1 } + "span": { "start": 1157, "length": 7 } } }, "entity": { @@ -1071,25 +1071,25 @@ "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } } } } - }, - "access": 2 + } } } } @@ -1102,10 +1102,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } }, @@ -1117,36 +1117,40 @@ "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooD" } } }, + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { - "key": "ClassB" - }, - "scope": { - "namespace_": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { "key": { "name": { - "key": "NsA" + "key": "NS_5" } } } } } - }, - "access": 2 + } } } } @@ -1175,10 +1179,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 32, - "columnBegin": 9, - "lineEnd": 32, - "columnEnd": 32 + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 } } } @@ -1196,58 +1200,169 @@ "key": { "file": { "key": "test.cpp" }, "location": { - "name": "D1_NS", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 923, "length": 5 } + "span": { "start": 1373, "length": 7 } } }, "entity": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "D1_NS" } } }, + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "function_": { "key": { "name": { "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { "name": { "key": "D1_NS" } } + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "Class_3" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } } } }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 57, - "columnBegin": 3, - "lineEnd": 63, - "columnEnd": 3 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -1265,40 +1380,42 @@ "key": { "file": { "key": "test.cpp" }, "location": { - "name": "D_NS", + "name": "Class_2", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 43, + "lineBegin": 68, "columnBegin": 7, - "lineEnd": 51, + "lineEnd": 72, "columnEnd": 7 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 719, "length": 4 } + "span": { "start": 1133, "length": 7 } } }, "entity": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } } } } @@ -1306,49 +1423,1133 @@ } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, + "lineBegin": 68, "columnBegin": 7, - "lineEnd": 51, + "lineEnd": 72, "columnEnd": 7 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } } } } } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "Class_2", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1347, "length": 7 } + } + }, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "Class_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1323, "length": 7 } + } + }, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "D", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 583, "length": 1 } + } + }, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooD" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "ClassB" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NsA" + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 32, + "columnBegin": 9, + "lineEnd": 32, + "columnEnd": 32 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "D1_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 923, "length": 5 } + } + }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "D1_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 57, + "columnBegin": 3, + "lineEnd": 63, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "D_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 719, "length": 4 } + } + }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 44, + "columnBegin": 9, + "lineEnd": 50, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "E_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 696, "length": 4 } + } + }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "F_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 675, "length": 4 } + } + }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "G_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 656, "length": 4 } + } + }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "G_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "NS_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1114, "length": 4 } + } + }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1093, "length": 4 } + } + }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1304, "length": 4 } + } + }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } } } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 44, - "columnBegin": 9, - "lineEnd": 50, - "columnEnd": 9 + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 } } } @@ -1366,20 +2567,20 @@ "key": { "file": { "key": "test.cpp" }, "location": { - "name": "E_NS", + "name": "NS_5", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 696, "length": 4 } + "span": { "start": 1074, "length": 4 } } }, "entity": { @@ -1389,23 +2590,13 @@ "key": { "declaration": { "key": { - "name": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } - } - }, + "name": { "key": { "name": { "key": "NS_5" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } } }, @@ -1416,28 +2607,16 @@ "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 } } } @@ -1455,20 +2634,20 @@ "key": { "file": { "key": "test.cpp" }, "location": { - "name": "F_NS", + "name": "NS_5", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 675, "length": 4 } + "span": { "start": 1283, "length": 4 } } }, "entity": { @@ -1480,15 +2659,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -1500,12 +2679,12 @@ "key": { "name": { "key": { - "name": { "key": "E_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "F_NS" }, + "name": { "key": "NS_5" }, "parent": { - "key": { "name": { "key": "G_NS" } } + "key": { "name": { "key": "NS_6" } } } } } @@ -1513,9 +2692,9 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, + "lineBegin": 78, "columnBegin": 5, - "lineEnd": 52, + "lineEnd": 86, "columnEnd": 5 } } @@ -1534,20 +2713,20 @@ "key": { "file": { "key": "test.cpp" }, "location": { - "name": "G_NS", + "name": "NS_6", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 656, "length": 4 } + "span": { "start": 1264, "length": 4 } } }, "entity": { @@ -1557,12 +2736,12 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "G_NS" } } }, + "name": { "key": { "name": { "key": "NS_6" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } } @@ -1574,15 +2753,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -2847,5 +4026,215 @@ } } } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/fileentityinfo.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/fileentityinfo.out index 9f0654d81..2d96b9312 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/fileentityinfo.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/fileentityinfo.out @@ -497,6 +497,184 @@ "info": { "kind": 7, "isAbstract": false } } }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "info": { "kind": 7, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "info": { "kind": 7, "isAbstract": false } + } + }, { "key": { "file": { "key": "test.cpp" }, @@ -1107,46 +1285,47 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "NsA" } } }, + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 9, - "columnBegin": 1, - "lineEnd": 38, - "columnEnd": 1 + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 } } }, "members": { "key": [ - { - "namespace_": { - "key": { - "name": { - "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } - } - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 11, - "columnBegin": 3, - "lineEnd": 24, - "columnEnd": 3 - } - } - } - }, { "record_": { "key": { "name": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } } } } @@ -1154,10 +1333,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } } } @@ -1184,15 +1363,15 @@ "key": { "name": { "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 11, + "lineBegin": 66, "columnBegin": 3, - "lineEnd": 24, + "lineEnd": 74, "columnEnd": 3 } } @@ -1204,51 +1383,22 @@ "key": { "name": { "key": { - "name": { "key": "NsC" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "NsB" }, + "name": { "key": "NS_4" }, "parent": { - "key": { "name": { "key": "NsA" } } - } - } - } - } - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 12, - "columnBegin": 5, - "lineEnd": 18, - "columnEnd": 5 - } - } - } - }, - { - "record_": { - "key": { - "name": { - "key": { - "name": { "key": "classBinNSB" }, - "scope": { - "namespace_": { - "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { "name": { "key": "NsA" } } - } + "key": { "name": { "key": "NS_5" } } } } } } }, - "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 19, + "lineBegin": 67, "columnBegin": 5, - "lineEnd": 23, + "lineEnd": 73, "columnEnd": 5 } } @@ -1276,20 +1426,20 @@ "key": { "name": { "key": { - "name": { "key": "NsC" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "NsB" }, - "parent": { "key": { "name": { "key": "NsA" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 12, + "lineBegin": 78, "columnBegin": 5, - "lineEnd": 18, + "lineEnd": 86, "columnEnd": 5 } } @@ -1297,19 +1447,21 @@ "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { "name": { "key": "NsA" } } + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } } } } @@ -1317,12 +1469,998 @@ } } }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 5, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "NS_5" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 5, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 77, + "columnBegin": 3, + "lineEnd": 87, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 5, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "NS_6" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 76, + "columnBegin": 1, + "lineEnd": 88, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 77, + "columnBegin": 3, + "lineEnd": 87, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 5, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "NsA" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 9, + "columnBegin": 1, + "lineEnd": 38, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 11, + "columnBegin": 3, + "lineEnd": 24, + "columnEnd": 3 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 5, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 11, + "columnBegin": 3, + "lineEnd": 24, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 12, + "columnBegin": 5, + "lineEnd": 18, + "columnEnd": 5 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "classBinNSB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 19, + "columnBegin": 5, + "lineEnd": 23, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 5, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { "key": { "name": { "key": "NsA" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 12, + "columnBegin": 5, + "lineEnd": 18, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NsD" }, + "parent": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 13, + "columnBegin": 7, + "lineEnd": 17, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 5, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NsD" }, + "parent": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { "name": { "key": "NsA" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 13, + "columnBegin": 7, + "lineEnd": 17, + "columnEnd": 7 + } + } + }, + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "fooFun" } } + }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsD" }, + "parent": { + "key": { + "name": { "key": "NsC" }, + "parent": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { + "name": { "key": "NsA" } + } + } + } + } + } + } + } + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 14, + "columnBegin": 9, + "lineEnd": 16, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 5, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { + "name": { "key": "G_NS" } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 46, + "columnBegin": 13, + "lineEnd": 48, + "columnEnd": 13 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "A_Class" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { + "key": "E_NS" + }, + "parent": { + "key": { + "name": { + "key": "F_NS" + }, + "parent": { + "key": { + "name": { + "key": "G_NS" + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 47, + "columnBegin": 15, + "lineEnd": 47, + "columnEnd": 48 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 6, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_1" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { + "name": { + "key": "D1_NS" + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 60, + "columnBegin": 9, + "lineEnd": 60, + "columnEnd": 44 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 6, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 58, + "columnBegin": 5, + "lineEnd": 62, + "columnEnd": 5 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "A_Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "B_Class_1" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { + "name": { "key": "D1_NS" } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 59, + "columnBegin": 7, + "lineEnd": 61, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + }, + "info": { "kind": 6, "isAbstract": false } + } + }, + { + "key": { + "file": { "key": "test.cpp" }, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { "key": { "name": { "key": "NsA" } } } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 26, + "columnBegin": 3, + "lineEnd": 36, + "columnEnd": 3 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooB" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 26, + "columnBegin": 18, + "lineEnd": 26, + "columnEnd": 41 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 13, - "columnBegin": 7, - "lineEnd": 17, - "columnEnd": 7 + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 } } } @@ -1334,7 +2472,7 @@ } } }, - "info": { "kind": 5, "isAbstract": false } + "info": { "kind": 6, "isAbstract": false } } }, { @@ -1343,37 +2481,41 @@ "entity": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { "name": { "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { "name": { "key": "NsA" } } + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } } } - } + }, + "access": 2 } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 13, - "columnBegin": 7, - "lineEnd": 17, - "columnEnd": 7 + "lineBegin": 28, + "columnBegin": 5, + "lineEnd": 34, + "columnEnd": 5 } } }, + "bases": [ ], "members": { "key": [ { @@ -1381,29 +2523,32 @@ "key": { "name": { "key": { - "name": { - "key": { "name": { "key": "fooFun" } } - }, + "name": { "key": { "name": { "key": "fooC" } } }, "scope": { - "namespace_": { - "key": { - "name": { "key": "NsD" }, - "parent": { - "key": { - "name": { "key": "NsC" }, - "parent": { - "key": { - "name": { "key": "NsB" }, - "parent": { - "key": { - "name": { "key": "NsA" } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsA" } + } + } } } - } + }, + "access": 2 } } } - } + }, + "access": 2 } } } @@ -1414,12 +2559,64 @@ "parameters": [ ] } }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 14, - "columnBegin": 9, - "lineEnd": 16, - "columnEnd": 9 + "lineBegin": 29, + "columnBegin": 7, + "lineEnd": 29, + "columnEnd": 30 + } + } + } + }, + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsA" } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 } } } @@ -1431,7 +2628,7 @@ } } }, - "info": { "kind": 5, "isAbstract": false } + "info": { "kind": 6, "isAbstract": false } } }, { @@ -1446,29 +2643,21 @@ "key": { "name": { "key": { - "name": { "key": "A_Class" }, + "name": { "key": "Class_1" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "B_NS" }, - "parent": { - "key": { - "name": { "key": "C_NS" }, - "parent": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { "key": { - "name": { "key": "D_NS" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "E_NS" }, + "name": { "key": "NS_4" }, "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { - "name": { "key": "G_NS" } - } - } - } + "key": { "name": { "key": "NS_5" } } } } } @@ -1476,7 +2665,8 @@ } } } - } + }, + "access": 2 } } } @@ -1484,10 +2674,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 46, - "columnBegin": 13, - "lineEnd": 48, - "columnEnd": 13 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } }, @@ -1500,39 +2690,33 @@ "name": { "key": { "name": { - "key": { "name": { "key": "foo_in_a_class" } } + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "A_Class" }, + "name": { "key": "Class_1" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "B_NS" }, - "parent": { - "key": { - "name": { "key": "C_NS" }, - "parent": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { "key": { - "name": { "key": "D_NS" }, + "name": { "key": "NS_3" }, "parent": { "key": { "name": { - "key": "E_NS" + "key": "NS_4" }, "parent": { "key": { "name": { - "key": "F_NS" - }, - "parent": { - "key": { - "name": { - "key": "G_NS" - } - } + "key": "NS_5" } } } @@ -1542,7 +2726,8 @@ } } } - } + }, + "access": 2 } } } @@ -1566,10 +2751,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 47, - "columnBegin": 15, - "lineEnd": 47, - "columnEnd": 48 + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 } } } @@ -1596,20 +2781,37 @@ "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { "name": { "key": "D1_NS" } } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } } - } + }, + "access": 2 } } } @@ -1622,10 +2824,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } }, @@ -1638,30 +2840,53 @@ "name": { "key": { "name": { - "key": { "name": { "key": "foo_in_a_class_1" } } + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { - "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { - "name": { - "key": "D1_NS" + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "Class_3" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } } } } - } + }, + "access": 2 } } } @@ -1690,10 +2915,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 60, - "columnBegin": 9, - "lineEnd": 60, - "columnEnd": 44 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -1720,13 +2945,18 @@ "key": { "name": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { - "key": { "name": { "key": "D1_NS" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } } } } @@ -1736,10 +2966,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 58, - "columnBegin": 5, - "lineEnd": 62, - "columnEnd": 5 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } } }, @@ -1751,19 +2981,24 @@ "key": { "name": { "key": { - "name": { "key": "A_Class_1" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "B_Class_1" }, + "name": { "key": "Class_2" }, "scope": { "namespace_": { "key": { - "name": { "key": "C1_NS" }, + "name": { "key": "NS_3" }, "parent": { "key": { - "name": { "key": "D1_NS" } + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } } } } @@ -1779,10 +3014,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 59, - "columnBegin": 7, - "lineEnd": 61, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } } @@ -1809,84 +3044,87 @@ "key": { "name": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { "key": { "name": { "key": "NsA" } } } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } } } }, "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 3, - "lineEnd": 36, - "columnEnd": 3 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } }, "bases": [ ], "members": { "key": [ - { - "function_": { - "key": { - "name": { - "key": { - "name": { "key": { "name": { "key": "fooB" } } }, - "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } - } - } - } - }, - "access": 2 - } - } - } - }, - "signature": { - "key": { - "returns": { "key": "int" }, - "parameters": [ ] - } - }, - "method": { - "isVirtual": false, - "isConst": false, - "isVolatile": false, - "refQualifier": 0 - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 26, - "columnBegin": 18, - "lineEnd": 26, - "columnEnd": 41 - } - } - } - }, { "record_": { "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_2" }, "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 } } } @@ -1899,10 +3137,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } } @@ -1929,20 +3167,20 @@ "key": { "name": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_3" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } } } } - }, - "access": 2 + } } } } @@ -1950,99 +3188,42 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 28, - "columnBegin": 5, - "lineEnd": 34, - "columnEnd": 5 + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 } } }, "bases": [ ], "members": { "key": [ - { - "function_": { - "key": { - "name": { - "key": { - "name": { "key": { "name": { "key": "fooC" } } }, - "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassC" }, - "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { - "name": { "key": "NsA" } - } - } - } - } - }, - "access": 2 - } - } - } - }, - "access": 2 - } - } - } - }, - "signature": { - "key": { - "returns": { "key": "int" }, - "parameters": [ ] - } - }, - "method": { - "isVirtual": false, - "isConst": false, - "isVolatile": false, - "refQualifier": 0 - }, - "source": { - "file": { "key": "test.cpp" }, - "lineBegin": 29, - "columnBegin": 7, - "lineEnd": 29, - "columnEnd": 30 - } - } - } - }, { "record_": { "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_3" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { - "name": { "key": "NsA" } + "name": { "key": "NS_6" } } } } } - }, - "access": 2 + } } } } @@ -2055,10 +3236,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 } } } diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/function_name_lowercase.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/function_name_lowercase.out index 29b3d9659..51194fdf0 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/function_name_lowercase.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/function_name_lowercase.out @@ -4,6 +4,18 @@ { "key": { "name_lowercase": "foo_in_a_class_1", "name": "foo_in_a_class_1" } }, + { + "key": { + "name_lowercase": "foo_in_a_class_1_depth_5", + "name": "foo_in_a_class_1_depth_5" + } + }, + { + "key": { + "name_lowercase": "foo_in_a_class_depth_6", + "name": "foo_in_a_class_depth_6" + } + }, { "key": { "name_lowercase": "foob", "name": "fooB" } }, { "key": { "name_lowercase": "fooc", "name": "fooC" } }, { "key": { "name_lowercase": "foocinbinb", "name": "fooCInBinB" } }, diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/record_name_lowercase_class.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/record_name_lowercase_class.out index d3b4ba97b..72326e017 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/record_name_lowercase_class.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/record_name_lowercase_class.out @@ -3,6 +3,9 @@ { "key": { "name_lowercase": "a_class", "name": "A_Class" } }, { "key": { "name_lowercase": "a_class_1", "name": "A_Class_1" } }, { "key": { "name_lowercase": "b_class_1", "name": "B_Class_1" } }, + { "key": { "name_lowercase": "class_1", "name": "Class_1" } }, + { "key": { "name_lowercase": "class_2", "name": "Class_2" } }, + { "key": { "name_lowercase": "class_3", "name": "Class_3" } }, { "key": { "name_lowercase": "classb", "name": "ClassB" } }, { "key": { "name_lowercase": "classbinnsb", "name": "classBinNSB" } }, { "key": { "name_lowercase": "classc", "name": "ClassC" } }, diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild.out index 1807d8cfb..37c3c1771 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild.out @@ -924,7 +924,7 @@ }, { "key": { - "name": "D", + "name": "Class_1", "language": 0, "kinds": 6, "entity": { @@ -936,20 +936,171 @@ "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_1", + "language": 0, + "kinds": 6, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } } } } @@ -967,10 +1118,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } }, @@ -982,29 +1133,47 @@ "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooD" } } }, + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { "name": { - "key": "ClassB" + "key": "Class_3" }, "scope": { "namespace_": { "key": { "name": { - "key": "NsA" + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } } } } @@ -1040,10 +1209,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 32, - "columnBegin": 9, - "lineEnd": 32, - "columnEnd": 32 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -1059,45 +1228,921 @@ }, { "key": { - "name": "D1_NS", + "name": "Class_2", "language": 0, - "kinds": 5, + "kinds": 6, "entity": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "D1_NS" } } }, + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { "name": { "key": "D1_NS" } } + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 57, - "columnBegin": 3, - "lineEnd": 63, - "columnEnd": 3 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_2", + "language": 0, + "kinds": 6, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_3", + "language": 0, + "kinds": 6, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "D", + "language": 0, + "kinds": 6, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooD" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "ClassB" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NsA" + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 32, + "columnBegin": 9, + "lineEnd": 32, + "columnEnd": 32 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "D1_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "D1_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 57, + "columnBegin": 3, + "lineEnd": 63, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "D_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 44, + "columnBegin": 9, + "lineEnd": 50, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "E_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "F_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "G_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "G_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "NS_3", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "NS_4", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 } } } @@ -1113,7 +2158,7 @@ }, { "key": { - "name": "D_NS", + "name": "NS_4", "language": 0, "kinds": 5, "entity": { @@ -1125,51 +2170,41 @@ "key": { "name": { "key": { - "name": { "key": "D_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 } } }, "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } } } } @@ -1178,12 +2213,13 @@ } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 44, - "columnBegin": 9, - "lineEnd": 50, - "columnEnd": 9 + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 } } } @@ -1199,7 +2235,7 @@ }, { "key": { - "name": "E_NS", + "name": "NS_5", "language": 0, "kinds": 5, "entity": { @@ -1209,23 +2245,13 @@ "key": { "declaration": { "key": { - "name": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } - } - }, + "name": { "key": { "name": { "key": "NS_5" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } } }, @@ -1236,28 +2262,16 @@ "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 } } } @@ -1273,7 +2287,7 @@ }, { "key": { - "name": "F_NS", + "name": "NS_5", "language": 0, "kinds": 5, "entity": { @@ -1285,15 +2299,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -1305,12 +2319,12 @@ "key": { "name": { "key": { - "name": { "key": "E_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "F_NS" }, + "name": { "key": "NS_5" }, "parent": { - "key": { "name": { "key": "G_NS" } } + "key": { "name": { "key": "NS_6" } } } } } @@ -1318,9 +2332,9 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, + "lineBegin": 78, "columnBegin": 5, - "lineEnd": 52, + "lineEnd": 86, "columnEnd": 5 } } @@ -1337,7 +2351,7 @@ }, { "key": { - "name": "G_NS", + "name": "NS_6", "language": 0, "kinds": 5, "entity": { @@ -1347,12 +2361,12 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "G_NS" } } }, + "name": { "key": { "name": { "key": "NS_6" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } } @@ -1364,15 +2378,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -2442,5 +3456,185 @@ } } } + }, + { + "key": { + "name": "foo_in_a_class_1_depth_5", + "language": 0, + "kinds": 13, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } + }, + { + "key": { + "name": "foo_in_a_class_depth_6", + "language": 0, + "kinds": 13, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild.perf index d9171ef8e..7961bfc43 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild.perf @@ -1,12 +1,12 @@ { "@generated": null, "facts_searched": { - "cxx1.FunctionDeclarationByNameScope.5": 7, - "cxx1.FunctionDefinition.5": 7, - "cxx1.NamespaceDeclarationByName.5": 12, - "cxx1.NamespaceDefinition.5": 12, - "cxx1.RecordDeclarationClass.5": 8, - "cxx1.RecordDefinition.5": 8 + "cxx1.FunctionDeclarationByNameScope.5": 9, + "cxx1.FunctionDefinition.5": 9, + "cxx1.NamespaceDeclarationByName.5": 18, + "cxx1.NamespaceDefinition.5": 18, + "cxx1.RecordDeclarationClass.5": 13, + "cxx1.RecordDefinition.5": 13 }, "full_scans": [ "cxx1.FunctionDeclarationByNameScope.5", diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild_maybe.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild_maybe.out index 1807d8cfb..37c3c1771 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild_maybe.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild_maybe.out @@ -924,7 +924,7 @@ }, { "key": { - "name": "D", + "name": "Class_1", "language": 0, "kinds": 6, "entity": { @@ -936,20 +936,171 @@ "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_1", + "language": 0, + "kinds": 6, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassB" }, + "name": { "key": "Class_3" }, "scope": { "namespace_": { - "key": { "name": { "key": "NsA" } } + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } } } } @@ -967,10 +1118,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } }, @@ -982,29 +1133,47 @@ "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooD" } } }, + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { "recordWithAccess": { "record": { "key": { "name": { - "key": "ClassB" + "key": "Class_3" }, "scope": { "namespace_": { "key": { "name": { - "key": "NsA" + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } } } } @@ -1040,10 +1209,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 32, - "columnBegin": 9, - "lineEnd": 32, - "columnEnd": 32 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -1059,45 +1228,921 @@ }, { "key": { - "name": "D1_NS", + "name": "Class_2", "language": 0, - "kinds": 5, + "kinds": 6, "entity": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "D1_NS" } } }, + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { "name": { "key": "D1_NS" } } + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 57, - "columnBegin": 3, - "lineEnd": 63, - "columnEnd": 3 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_2", + "language": 0, + "kinds": 6, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_3", + "language": 0, + "kinds": 6, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "D", + "language": 0, + "kinds": 6, + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooD" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "ClassB" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NsA" + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 32, + "columnBegin": 9, + "lineEnd": 32, + "columnEnd": 32 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "D1_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "D1_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 57, + "columnBegin": 3, + "lineEnd": 63, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "D_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 44, + "columnBegin": 9, + "lineEnd": 50, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "E_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "F_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "G_NS", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "G_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "NS_3", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + } + } + }, + { + "key": { + "name": "NS_4", + "language": 0, + "kinds": 5, + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 } } } @@ -1113,7 +2158,7 @@ }, { "key": { - "name": "D_NS", + "name": "NS_4", "language": 0, "kinds": 5, "entity": { @@ -1125,51 +2170,41 @@ "key": { "name": { "key": { - "name": { "key": "D_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 } } }, "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } } } } @@ -1178,12 +2213,13 @@ } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 44, - "columnBegin": 9, - "lineEnd": 50, - "columnEnd": 9 + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 } } } @@ -1199,7 +2235,7 @@ }, { "key": { - "name": "E_NS", + "name": "NS_5", "language": 0, "kinds": 5, "entity": { @@ -1209,23 +2245,13 @@ "key": { "declaration": { "key": { - "name": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } - } - }, + "name": { "key": { "name": { "key": "NS_5" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } } }, @@ -1236,28 +2262,16 @@ "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 } } } @@ -1273,7 +2287,7 @@ }, { "key": { - "name": "F_NS", + "name": "NS_5", "language": 0, "kinds": 5, "entity": { @@ -1285,15 +2299,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -1305,12 +2319,12 @@ "key": { "name": { "key": { - "name": { "key": "E_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "F_NS" }, + "name": { "key": "NS_5" }, "parent": { - "key": { "name": { "key": "G_NS" } } + "key": { "name": { "key": "NS_6" } } } } } @@ -1318,9 +2332,9 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, + "lineBegin": 78, "columnBegin": 5, - "lineEnd": 52, + "lineEnd": 86, "columnEnd": 5 } } @@ -1337,7 +2351,7 @@ }, { "key": { - "name": "G_NS", + "name": "NS_6", "language": 0, "kinds": 5, "entity": { @@ -1347,12 +2361,12 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "G_NS" } } }, + "name": { "key": { "name": { "key": "NS_6" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } } @@ -1364,15 +2378,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -2442,5 +3456,185 @@ } } } + }, + { + "key": { + "name": "foo_in_a_class_1_depth_5", + "language": 0, + "kinds": 13, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } + }, + { + "key": { + "name": "foo_in_a_class_depth_6", + "language": 0, + "kinds": 13, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild_maybe.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild_maybe.perf index d9171ef8e..7961bfc43 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild_maybe.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anymatch_wild_maybe.perf @@ -1,12 +1,12 @@ { "@generated": null, "facts_searched": { - "cxx1.FunctionDeclarationByNameScope.5": 7, - "cxx1.FunctionDefinition.5": 7, - "cxx1.NamespaceDeclarationByName.5": 12, - "cxx1.NamespaceDefinition.5": 12, - "cxx1.RecordDeclarationClass.5": 8, - "cxx1.RecordDefinition.5": 8 + "cxx1.FunctionDeclarationByNameScope.5": 9, + "cxx1.FunctionDefinition.5": 9, + "cxx1.NamespaceDeclarationByName.5": 18, + "cxx1.NamespaceDefinition.5": 18, + "cxx1.RecordDeclarationClass.5": 13, + "cxx1.RecordDefinition.5": 13 }, "full_scans": [ "cxx1.FunctionDeclarationByNameScope.5", diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anyrealkind_prefix.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anyrealkind_prefix.out index c6c9b4062..23bea65d0 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anyrealkind_prefix.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anyrealkind_prefix.out @@ -503,5 +503,185 @@ } } } + }, + { + "key": { + "name": "foo_in_a_class_1_depth_5", + "language": 0, + "kinds": 13, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } + }, + { + "key": { + "name": "foo_in_a_class_depth_6", + "language": 0, + "kinds": 13, + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + } + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anyrealkind_prefix.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anyrealkind_prefix.perf index 618605b94..6f72eab07 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anyrealkind_prefix.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_name_kind_anyrealkind_prefix.perf @@ -1,8 +1,8 @@ { "@generated": null, "facts_searched": { - "cxx1.FunctionDeclarationByNameScope.5": 7, - "cxx1.FunctionDefinition.5": 7 + "cxx1.FunctionDeclarationByNameScope.5": 9, + "cxx1.FunctionDefinition.5": 9 }, "full_scans": [ ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_1.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_1.out new file mode 100644 index 000000000..0e6cd6e88 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_1.out @@ -0,0 +1,106 @@ +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "scope": [ "Class_1" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_1.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_1.perf new file mode 100644 index 000000000..9e0e8df47 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_1.perf @@ -0,0 +1,11 @@ +{ + "@generated": null, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 1, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 2, + "cxx1.QName.5": 2 + }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_1.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_1.query new file mode 100644 index 000000000..7c4ffaa70 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_1.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "foo_in_a_class_1_depth_5", scope = ["Class_1"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_2.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_2.out new file mode 100644 index 000000000..924f094da --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_2.out @@ -0,0 +1,106 @@ +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "scope": [ "Class_2", "Class_1" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_2.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_2.perf new file mode 100644 index 000000000..4247169ed --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_2.perf @@ -0,0 +1,11 @@ +{ + "@generated": null, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 1, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 5, + "cxx1.QName.5": 2 + }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_2.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_2.query new file mode 100644 index 000000000..a6aa6d041 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_2.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "foo_in_a_class_1_depth_5", scope = ["Class_2","Class_1"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_3.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_3.out new file mode 100644 index 000000000..d7ef3520c --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_3.out @@ -0,0 +1,106 @@ +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "scope": [ "NS_3", "Class_2", "Class_1" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_3.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_3.perf new file mode 100644 index 000000000..7e8b7b228 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_3.perf @@ -0,0 +1,12 @@ +{ + "@generated": null, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 1, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 9, + "cxx1.NamespaceQName.5": 1, + "cxx1.QName.5": 4 + }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_3.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_3.query new file mode 100644 index 000000000..c5af43b26 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_3.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "foo_in_a_class_1_depth_5", scope = ["NS_3","Class_2","Class_1"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_4.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_4.out new file mode 100644 index 000000000..584c14d87 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_4.out @@ -0,0 +1,106 @@ +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "scope": [ "NS_4", "NS_3", "Class_2", "Class_1" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_4.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_4.perf new file mode 100644 index 000000000..b885e7dd3 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_4.perf @@ -0,0 +1,12 @@ +{ + "@generated": null, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 1, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 15, + "cxx1.NamespaceQName.5": 3, + "cxx1.QName.5": 6 + }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_4.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_4.query new file mode 100644 index 000000000..9dd53561c --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_4.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "foo_in_a_class_1_depth_5", scope = ["NS_4","NS_3","Class_2","Class_1"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_5.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_5.out new file mode 100644 index 000000000..de0215f59 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_5.out @@ -0,0 +1,106 @@ +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "scope": [ "NS_5", "NS_4", "NS_3", "Class_2", "Class_1" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_5.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_5.perf new file mode 100644 index 000000000..e77c20c33 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_5.perf @@ -0,0 +1,12 @@ +{ + "@generated": null, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 1, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 20, + "cxx1.NamespaceQName.5": 5, + "cxx1.QName.5": 6 + }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_5.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_5.query new file mode 100644 index 000000000..f9ca1a146 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_depth_5_prefix_5.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "foo_in_a_class_1_depth_5", scope = ["NS_5","NS_4","NS_3","Class_2","Class_1"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns2_rec3.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns2_rec3.out new file mode 100644 index 000000000..11d906b3d --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns2_rec3.out @@ -0,0 +1,118 @@ +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_depth_6", + "scope": [ "NS_5", "NS_4", "Class_3", "Class_2", "Class_1" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns2_rec3.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns2_rec3.perf new file mode 100644 index 000000000..54d65b286 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns2_rec3.perf @@ -0,0 +1,12 @@ +{ + "@generated": null, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 1, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 20, + "cxx1.NamespaceQName.5": 4, + "cxx1.QName.5": 6 + }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns2_rec3.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns2_rec3.query new file mode 100644 index 000000000..c89a4cbb1 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns2_rec3.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "foo_in_a_class_depth_6", scope = ["NS_5","NS_4","Class_3","Class_2","Class_1"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns3_rec3.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns3_rec3.out new file mode 100644 index 000000000..c7ae735b9 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns3_rec3.out @@ -0,0 +1 @@ +[ "@generated" ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns3_rec3.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns3_rec3.perf new file mode 100644 index 000000000..b42db1a3c --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns3_rec3.perf @@ -0,0 +1,5 @@ +{ + "@generated": null, + "facts_searched": { "cxx1.Name.5": 6, "cxx1.NamespaceQName.5": 3 }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns3_rec3.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns3_rec3.query new file mode 100644 index 000000000..9be3e51ff --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns3_rec3.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "foo_in_a_class_depth_6", scope = ["NS_6","NS_5","NS_4","Class_3","Class_2","Class_1"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_ns_rec_rec_fun.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_ns_rec_rec_fun.out new file mode 100644 index 000000000..e1ce1826e --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_ns_rec_rec_fun.out @@ -0,0 +1,97 @@ +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "fooCInBinB", + "scope": [ "NsA", "NsB", "classBinNSB", "classCinNSB" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooCInBinB" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "classCinNSB" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "classBinNSB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { + "name": { "key": "NsA" } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 21, + "columnBegin": 9, + "lineEnd": 21, + "columnEnd": 39 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "fooCInBinB", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 21, + "columnBegin": 9, + "lineEnd": 21, + "columnEnd": 39 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 427, "length": 10 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_ns_rec_rec_fun.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_ns_rec_rec_fun.perf new file mode 100644 index 000000000..b682baf70 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_ns_rec_rec_fun.perf @@ -0,0 +1,12 @@ +{ + "@generated": null, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 1, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 15, + "cxx1.NamespaceQName.5": 2, + "cxx1.QName.5": 3 + }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_ns_rec_rec_fun.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_ns_rec_rec_fun.query new file mode 100644 index 000000000..74d28c531 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_ns_rec_rec_fun.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "fooCInBinB", scope = ["NsA", "NsB", "classBinNSB", "classCinNSB"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_rec_rec_fun.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_rec_rec_fun.out new file mode 100644 index 000000000..3a6219bf7 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_rec_rec_fun.out @@ -0,0 +1,97 @@ +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "fooCInBinB", + "scope": [ "NsB", "classBinNSB", "classCinNSB" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooCInBinB" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "classCinNSB" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "classBinNSB" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NsB" }, + "parent": { + "key": { + "name": { "key": "NsA" } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 21, + "columnBegin": 9, + "lineEnd": 21, + "columnEnd": 39 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "fooCInBinB", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 21, + "columnBegin": 9, + "lineEnd": 21, + "columnEnd": 39 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 427, "length": 10 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_rec_rec_fun.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_rec_rec_fun.perf new file mode 100644 index 000000000..b36243b1c --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_rec_rec_fun.perf @@ -0,0 +1,12 @@ +{ + "@generated": null, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 1, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 9, + "cxx1.NamespaceQName.5": 1, + "cxx1.QName.5": 2 + }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_rec_rec_fun.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_rec_rec_fun.query new file mode 100644 index 000000000..a5f879b90 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_ns_rec_rec_fun.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "fooCInBinB", scope = ["NsB", "classBinNSB", "classCinNSB"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_rec_rec_rec_fun.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_rec_rec_rec_fun.out new file mode 100644 index 000000000..a32fe6d45 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_rec_rec_rec_fun.out @@ -0,0 +1,118 @@ +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_depth_6", + "scope": [ "Class_3", "Class_2", "Class_1" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_rec_rec_rec_fun.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_rec_rec_rec_fun.perf new file mode 100644 index 000000000..74bb085e7 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_rec_rec_rec_fun.perf @@ -0,0 +1,11 @@ +{ + "@generated": null, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 1, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 9, + "cxx1.QName.5": 4 + }, + "full_scans": [ ] +} \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_rec_rec_rec_fun.query b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_rec_rec_rec_fun.query new file mode 100644 index 000000000..429046a36 --- /dev/null +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_nesting_rec_rec_rec_fun.query @@ -0,0 +1,3 @@ +query: codemarkup.search.SearchByScope { searchcase = Sensitive, name = "foo_in_a_class_depth_6", scope = ["Class_3","Class_2","Class_1"], language = Cpp, kind = { just = Function } } +perf: true +transform: [gensort, []] diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_0.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_0.perf index b48afe148..a30a6bde7 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_0.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_0.perf @@ -2,7 +2,7 @@ "@generated": null, "facts_searched": { "cxx1.DeclarationNameSpan.5": 1, - "cxx1.FunctionDeclarationByNameScope.5": 21, + "cxx1.FunctionDeclarationByNameScope.5": 27, "cxx1.FunctionDefinition.5": 1, "cxx1.Name.5": 2, "cxx1.QName.5": 1 diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_1.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_1.perf index 9650c4cd3..aa8ea7430 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_1.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_1.perf @@ -2,7 +2,7 @@ "@generated": null, "facts_searched": { "cxx1.DeclarationNameSpan.5": 1, - "cxx1.FunctionDeclarationByNameScope.5": 21, + "cxx1.FunctionDeclarationByNameScope.5": 27, "cxx1.FunctionDefinition.5": 1, "cxx1.Name.5": 5, "cxx1.NamespaceQName.5": 1, diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_2.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_2.perf index 46ed5d2ed..f8be21adb 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_2.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_2.perf @@ -2,7 +2,7 @@ "@generated": null, "facts_searched": { "cxx1.DeclarationNameSpan.5": 1, - "cxx1.FunctionDeclarationByNameScope.5": 21, + "cxx1.FunctionDeclarationByNameScope.5": 27, "cxx1.FunctionDefinition.5": 1, "cxx1.Name.5": 9, "cxx1.NamespaceQName.5": 2, diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_3.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_3.perf index a191f3ac8..be5ee5220 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_3.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_3.perf @@ -2,7 +2,7 @@ "@generated": null, "facts_searched": { "cxx1.DeclarationNameSpan.5": 1, - "cxx1.FunctionDeclarationByNameScope.5": 21, + "cxx1.FunctionDeclarationByNameScope.5": 27, "cxx1.FunctionDefinition.5": 1, "cxx1.Name.5": 15, "cxx1.NamespaceQName.5": 3, diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_4.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_4.out index c7ae735b9..82800b174 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_4.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_4.out @@ -1 +1,111 @@ -[ "@generated" ] \ No newline at end of file +[ + "@generated", + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class", + "scope": [ "E_NS", "D_NS", "C_NS", "B_NS", "A_Class" ], + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "A_Class" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "B_NS" }, + "parent": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { + "name": { + "key": "G_NS" + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 47, + "columnBegin": 15, + "lineEnd": 47, + "columnEnd": 48 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 47, + "columnBegin": 15, + "lineEnd": 47, + "columnEnd": 48 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 824, "length": 14 } + } + }, + "kind": 13, + "language": 0 + } + } +] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_4.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_4.perf index 2b5344ace..f34c996d7 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_4.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_by_scope_ns_4.perf @@ -1,5 +1,12 @@ { "@generated": null, - "facts_searched": { "cxx1.Name.5": 5, "cxx1.NamespaceQName.5": 4 }, + "facts_searched": { + "cxx1.DeclarationNameSpan.5": 1, + "cxx1.FunctionDeclarationByNameScope.5": 27, + "cxx1.FunctionDefinition.5": 1, + "cxx1.Name.5": 20, + "cxx1.NamespaceQName.5": 4, + "cxx1.QName.5": 1 + }, "full_scans": [ ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkind.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkind.out index 0d90351ed..b0b315a6d 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkind.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkind.out @@ -202,6 +202,222 @@ "language": 0 } }, + { + "key": { + "searchcase": 1, + "name": "foo_in_a_class_1_depth_5", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + }, + { + "key": { + "searchcase": 1, + "name": "foo_in_a_class_depth_6", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } + }, { "key": { "searchcase": 1, diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkind.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkind.perf index 4ee212dcc..31f0612c2 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkind.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkind.perf @@ -1,10 +1,10 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 7, - "cxx1.FunctionDeclarationByNameScope.5": 7, - "cxx1.FunctionDefinition.5": 7, - "cxx1.FunctionLowerCase.5": 7 + "cxx1.DeclarationNameSpan.5": 9, + "cxx1.FunctionDeclarationByNameScope.5": 9, + "cxx1.FunctionDefinition.5": 9, + "cxx1.FunctionLowerCase.5": 9 }, "full_scans": [ ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkindplus.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkindplus.out index 0d90351ed..b0b315a6d 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkindplus.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkindplus.out @@ -202,6 +202,222 @@ "language": 0 } }, + { + "key": { + "searchcase": 1, + "name": "foo_in_a_class_1_depth_5", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + }, + { + "key": { + "searchcase": 1, + "name": "foo_in_a_class_depth_6", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } + }, { "key": { "searchcase": 1, diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkindplus.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkindplus.perf index 4ee212dcc..31f0612c2 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkindplus.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_exactkindplus.perf @@ -1,10 +1,10 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 7, - "cxx1.FunctionDeclarationByNameScope.5": 7, - "cxx1.FunctionDefinition.5": 7, - "cxx1.FunctionLowerCase.5": 7 + "cxx1.DeclarationNameSpan.5": 9, + "cxx1.FunctionDeclarationByNameScope.5": 9, + "cxx1.FunctionDefinition.5": 9, + "cxx1.FunctionLowerCase.5": 9 }, "full_scans": [ ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_nokind.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_nokind.out index 0d90351ed..b0b315a6d 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_nokind.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_nokind.out @@ -202,6 +202,222 @@ "language": 0 } }, + { + "key": { + "searchcase": 1, + "name": "foo_in_a_class_1_depth_5", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + }, + { + "key": { + "searchcase": 1, + "name": "foo_in_a_class_depth_6", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } + }, { "key": { "searchcase": 1, diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_nokind.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_nokind.perf index 4ee212dcc..31f0612c2 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_nokind.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_insensitive_prefix_nokind.perf @@ -1,10 +1,10 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 7, - "cxx1.FunctionDeclarationByNameScope.5": 7, - "cxx1.FunctionDefinition.5": 7, - "cxx1.FunctionLowerCase.5": 7 + "cxx1.DeclarationNameSpan.5": 9, + "cxx1.FunctionDeclarationByNameScope.5": 9, + "cxx1.FunctionDefinition.5": 9, + "cxx1.FunctionLowerCase.5": 9 }, "full_scans": [ ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_kind_class.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_kind_class.out index 3ba379302..6382d46c5 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_kind_class.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_kind_class.out @@ -272,6 +272,356 @@ } } }, + { + "key": { + "name": "Class_1", + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + } + } + } + }, + "access": 2 + } + }, + "entity": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_1", + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + }, + "entity": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_2", + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + } + }, + "entity": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_2", + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + } + } + } + }, + "access": 2 + } + }, + "entity": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + } + } + } + } + }, + { + "key": { + "name": "Class_3", + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + } + }, + "entity": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + } + } + } + } + }, { "key": { "name": "D", diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_kind_class.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_kind_class.perf index 079020015..6e60e965b 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_kind_class.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_kind_class.perf @@ -1,5 +1,5 @@ { "@generated": null, - "facts_searched": { "cxx1.RecordDeclarationClass.5": 8 }, + "facts_searched": { "cxx1.RecordDeclarationClass.5": 13 }, "full_scans": [ "cxx1.RecordDeclarationClass.5" ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child.perf index ac615fd29..884f0567d 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child.perf @@ -1,8 +1,8 @@ { "@generated": null, "facts_searched": { - "cxx1.FunctionDefinition.5": 6, - "cxx1.RecordDefinition.5": 12 + "cxx1.FunctionDefinition.5": 8, + "cxx1.RecordDefinition.5": 20 }, "full_scans": [ "cxx1.FunctionDeclaration.5", diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child_namespace.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child_namespace.out index 06d40d805..d0a43d853 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child_namespace.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child_namespace.out @@ -242,6 +242,226 @@ "style": 0 } }, + { + "key": { + "query": 2, + "parent": { + "parent": { + "cxx": { + "decl": { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + } + } + } + }, + "location": { + "name": "NS_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1114, "length": 4 } + } + } + }, + "child": { + "child": { + "cxx": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + } + } + } + }, + "location": { + "name": "Class_2", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1133, "length": 7 } + } + } + }, + "style": 0 + } + }, + { + "key": { + "query": 2, + "parent": { + "parent": { + "cxx": { + "decl": { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + } + } + } + } + }, + "location": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1304, "length": 4 } + } + } + }, + "child": { + "child": { + "cxx": { + "decl": { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + } + } + } + }, + "location": { + "name": "Class_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1323, "length": 7 } + } + } + }, + "style": 0 + } + }, { "key": { "query": 2, diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child_namespace.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child_namespace.perf index 58ca615c0..34396eb65 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child_namespace.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_related_contains_child_namespace.perf @@ -1,11 +1,11 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 10, - "cxx1.FunctionDeclaration.5": 84, - "cxx1.NamespaceDeclaration.5": 12, - "cxx1.QName.5": 96, - "cxx1.RecordDeclaration.5": 4 + "cxx1.DeclarationNameSpan.5": 14, + "cxx1.FunctionDeclaration.5": 162, + "cxx1.NamespaceDeclaration.5": 18, + "cxx1.QName.5": 234, + "cxx1.RecordDeclaration.5": 6 }, "full_scans": [ "cxx1.FunctionDeclaration.5", diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkind.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkind.out index fac8fda2c..abfc546c9 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkind.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkind.out @@ -629,5 +629,221 @@ "kind": 13, "language": 0 } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_depth_6", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkind.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkind.perf index f20c18acf..11d0ca8de 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkind.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkind.perf @@ -1,9 +1,9 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 7, - "cxx1.FunctionDeclarationByNameScope.5": 7, - "cxx1.FunctionDefinition.5": 7 + "cxx1.DeclarationNameSpan.5": 9, + "cxx1.FunctionDeclarationByNameScope.5": 9, + "cxx1.FunctionDefinition.5": 9 }, "full_scans": [ ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkindplus.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkindplus.out index fac8fda2c..abfc546c9 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkindplus.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkindplus.out @@ -629,5 +629,221 @@ "kind": 13, "language": 0 } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_depth_6", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkindplus.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkindplus.perf index f20c18acf..11d0ca8de 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkindplus.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_exactkindplus.perf @@ -1,9 +1,9 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 7, - "cxx1.FunctionDeclarationByNameScope.5": 7, - "cxx1.FunctionDefinition.5": 7 + "cxx1.DeclarationNameSpan.5": 9, + "cxx1.FunctionDeclarationByNameScope.5": 9, + "cxx1.FunctionDefinition.5": 9 }, "full_scans": [ ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_nokind.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_nokind.out index fac8fda2c..abfc546c9 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_nokind.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_nokind.out @@ -629,5 +629,221 @@ "kind": 13, "language": 0 } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_depth_6", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_nokind.perf b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_nokind.perf index f20c18acf..11d0ca8de 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_nokind.perf +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/search_sensitive_prefix_nokind.perf @@ -1,9 +1,9 @@ { "@generated": null, "facts_searched": { - "cxx1.DeclarationNameSpan.5": 7, - "cxx1.FunctionDeclarationByNameScope.5": 7, - "cxx1.FunctionDefinition.5": 7 + "cxx1.DeclarationNameSpan.5": 9, + "cxx1.FunctionDeclarationByNameScope.5": 9, + "cxx1.FunctionDefinition.5": 9 }, "full_scans": [ ] } \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/searchbyname.out b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/searchbyname.out index 3ac5bb5b9..d8c6911fc 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/searchbyname.out +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/searchbyname.out @@ -1069,7 +1069,7 @@ { "key": { "searchcase": 0, - "name": "D", + "name": "Class_1", "entity": { "cxx": { "defn": { @@ -1079,25 +1079,25 @@ "key": { "name": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { "key": "ClassB" }, - "scope": { - "namespace_": { - "key": { "name": { "key": "NsA" } } + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } } } } - }, - "access": 2 + } } } } @@ -1110,10 +1110,10 @@ "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } } }, @@ -1125,36 +1125,40 @@ "key": { "name": { "key": { - "name": { "key": { "name": { "key": "fooD" } } }, + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "D" }, + "name": { "key": "Class_1" }, "scope": { "recordWithAccess": { "record": { "key": { - "name": { "key": "ClassC" }, + "name": { "key": "Class_2" }, "scope": { - "recordWithAccess": { - "record": { - "key": { - "name": { - "key": "ClassB" - }, - "scope": { - "namespace_": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { "key": { "name": { - "key": "NsA" + "key": "NS_5" } } } } } - }, - "access": 2 + } } } } @@ -1183,10 +1187,10 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 32, - "columnBegin": 9, - "lineEnd": 32, - "columnEnd": 32 + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 } } } @@ -1199,20 +1203,20 @@ } }, "location": { - "name": "D", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 31, - "columnBegin": 7, - "lineEnd": 33, - "columnEnd": 7 + "lineBegin": 69, + "columnBegin": 9, + "lineEnd": 71, + "columnEnd": 9 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 583, "length": 1 } + "span": { "start": 1157, "length": 7 } } }, "kind": 6, @@ -1222,43 +1226,154 @@ { "key": { "searchcase": 0, - "name": "D1_NS", + "name": "Class_1", "entity": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "D1_NS" } } }, + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "function_": { "key": { "name": { "key": { - "name": { "key": "C1_NS" }, - "parent": { - "key": { "name": { "key": "D1_NS" } } + "name": { + "key": { + "name": { "key": "foo_in_a_class_depth_6" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "Class_3" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NS_4" + }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } } } }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 57, - "columnBegin": 3, - "lineEnd": 63, - "columnEnd": 3 + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 } } } @@ -1271,48 +1386,50 @@ } }, "location": { - "name": "D1_NS", + "name": "Class_1", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 56, - "columnBegin": 1, - "lineEnd": 64, - "columnEnd": 1 + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 923, "length": 5 } + "span": { "start": 1373, "length": 7 } } }, - "kind": 5, + "kind": 6, "language": 0 } }, { "key": { "searchcase": 0, - "name": "D_NS", + "name": "Class_2", "entity": { "cxx": { "defn": { - "namespace_": { + "record_": { "key": { "declaration": { "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } } } } @@ -1320,48 +1437,60 @@ } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, + "lineBegin": 68, "columnBegin": 7, - "lineEnd": 51, + "lineEnd": 72, "columnEnd": 7 } } }, + "bases": [ ], "members": { "key": [ { - "namespace_": { + "record_": { "key": { "name": { "key": { - "name": { "key": "C_NS" }, - "parent": { - "key": { - "name": { "key": "D_NS" }, - "parent": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } } } } } - } + }, + "access": 2 } } } }, + "kind": { "class_": { } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 44, + "lineBegin": 69, "columnBegin": 9, - "lineEnd": 50, + "lineEnd": 71, "columnEnd": 9 } } @@ -1375,20 +1504,1125 @@ } }, "location": { - "name": "D_NS", + "name": "Class_2", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 43, + "lineBegin": 68, "columnBegin": 7, - "lineEnd": 51, + "lineEnd": 72, "columnEnd": 7 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 719, "length": 4 } + "span": { "start": 1133, "length": 7 } + } + }, + "kind": 6, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "Class_2", + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 81, + "columnBegin": 11, + "lineEnd": 83, + "columnEnd": 11 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "Class_2", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1347, "length": 7 } + } + }, + "kind": 6, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "Class_3", + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { + "name": { "key": "NS_6" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 80, + "columnBegin": 9, + "lineEnd": 84, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "Class_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1323, "length": 7 } + } + }, + "kind": 6, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "D", + "entity": { + "cxx": { + "defn": { + "record_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassB" }, + "scope": { + "namespace_": { + "key": { "name": { "key": "NsA" } } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + } + }, + "bases": [ ], + "members": { + "key": [ + { + "function_": { + "key": { + "name": { + "key": { + "name": { "key": { "name": { "key": "fooD" } } }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "D" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "ClassC" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { + "key": "ClassB" + }, + "scope": { + "namespace_": { + "key": { + "name": { + "key": "NsA" + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { + "returns": { "key": "int" }, + "parameters": [ ] + } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 32, + "columnBegin": 9, + "lineEnd": 32, + "columnEnd": 32 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "D", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 31, + "columnBegin": 7, + "lineEnd": 33, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 583, "length": 1 } + } + }, + "kind": 6, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "D1_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "D1_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C1_NS" }, + "parent": { + "key": { "name": { "key": "D1_NS" } } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 57, + "columnBegin": 3, + "lineEnd": 63, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "D1_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 56, + "columnBegin": 1, + "lineEnd": 64, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 923, "length": 5 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "D_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "C_NS" }, + "parent": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 44, + "columnBegin": 9, + "lineEnd": 50, + "columnEnd": 9 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "D_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 719, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "E_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "D_NS" }, + "parent": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 43, + "columnBegin": 7, + "lineEnd": 51, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "E_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 696, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "F_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "E_NS" }, + "parent": { + "key": { + "name": { "key": "F_NS" }, + "parent": { + "key": { "name": { "key": "G_NS" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 42, + "columnBegin": 5, + "lineEnd": 52, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "F_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 675, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "G_NS", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { "key": { "name": { "key": "G_NS" } } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "F_NS" }, + "parent": { "key": { "name": { "key": "G_NS" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 41, + "columnBegin": 3, + "lineEnd": 53, + "columnEnd": 3 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "G_NS", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 40, + "columnBegin": 1, + "lineEnd": 54, + "columnEnd": 1 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 656, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "NS_3", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 68, + "columnBegin": 7, + "lineEnd": 72, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "NS_3", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1114, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "NS_4", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + } + }, + "members": { + "key": [ + { + "namespace_": { + "key": { + "name": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { "name": { "key": "NS_5" } } + } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 67, + "columnBegin": 5, + "lineEnd": 73, + "columnEnd": 5 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1093, "length": 4 } + } + }, + "kind": 5, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "NS_4", + "entity": { + "cxx": { + "defn": { + "namespace_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } + } + } + } + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + } + }, + "members": { + "key": [ + { + "record_": { + "key": { + "name": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" }, + "parent": { + "key": { "name": { "key": "NS_6" } } + } + } + } + } + } + } + } + }, + "kind": { "class_": { } }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 79, + "columnBegin": 7, + "lineEnd": 85, + "columnEnd": 7 + } + } + } + } + ] + } + } + } + } + } + }, + "location": { + "name": "NS_4", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 78, + "columnBegin": 5, + "lineEnd": 86, + "columnEnd": 5 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1304, "length": 4 } } }, "kind": 5, @@ -1398,7 +2632,7 @@ { "key": { "searchcase": 0, - "name": "E_NS", + "name": "NS_5", "entity": { "cxx": { "defn": { @@ -1406,23 +2640,13 @@ "key": { "declaration": { "key": { - "name": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } - } - } - } - }, + "name": { "key": { "name": { "key": "NS_5" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } } }, @@ -1433,28 +2657,16 @@ "key": { "name": { "key": { - "name": { "key": "D_NS" }, - "parent": { - "key": { - "name": { "key": "E_NS" }, - "parent": { - "key": { - "name": { "key": "F_NS" }, - "parent": { - "key": { "name": { "key": "G_NS" } } - } - } - } - } - } + "name": { "key": "NS_4" }, + "parent": { "key": { "name": { "key": "NS_5" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 43, - "columnBegin": 7, - "lineEnd": 51, - "columnEnd": 7 + "lineBegin": 66, + "columnBegin": 3, + "lineEnd": 74, + "columnEnd": 3 } } } @@ -1467,20 +2679,20 @@ } }, "location": { - "name": "E_NS", + "name": "NS_5", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 42, - "columnBegin": 5, - "lineEnd": 52, - "columnEnd": 5 + "lineBegin": 65, + "columnBegin": 1, + "lineEnd": 75, + "columnEnd": 1 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 696, "length": 4 } + "span": { "start": 1074, "length": 4 } } }, "kind": 5, @@ -1490,7 +2702,7 @@ { "key": { "searchcase": 0, - "name": "F_NS", + "name": "NS_5", "entity": { "cxx": { "defn": { @@ -1500,15 +2712,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -1520,12 +2732,12 @@ "key": { "name": { "key": { - "name": { "key": "E_NS" }, + "name": { "key": "NS_4" }, "parent": { "key": { - "name": { "key": "F_NS" }, + "name": { "key": "NS_5" }, "parent": { - "key": { "name": { "key": "G_NS" } } + "key": { "name": { "key": "NS_6" } } } } } @@ -1533,9 +2745,9 @@ }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 42, + "lineBegin": 78, "columnBegin": 5, - "lineEnd": 52, + "lineEnd": 86, "columnEnd": 5 } } @@ -1549,20 +2761,20 @@ } }, "location": { - "name": "F_NS", + "name": "NS_5", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 675, "length": 4 } + "span": { "start": 1283, "length": 4 } } }, "kind": 5, @@ -1572,7 +2784,7 @@ { "key": { "searchcase": 0, - "name": "G_NS", + "name": "NS_6", "entity": { "cxx": { "defn": { @@ -1580,12 +2792,12 @@ "key": { "declaration": { "key": { - "name": { "key": { "name": { "key": "G_NS" } } }, + "name": { "key": { "name": { "key": "NS_6" } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } } @@ -1597,15 +2809,15 @@ "key": { "name": { "key": { - "name": { "key": "F_NS" }, - "parent": { "key": { "name": { "key": "G_NS" } } } + "name": { "key": "NS_5" }, + "parent": { "key": { "name": { "key": "NS_6" } } } } }, "source": { "file": { "key": "test.cpp" }, - "lineBegin": 41, + "lineBegin": 77, "columnBegin": 3, - "lineEnd": 53, + "lineEnd": 87, "columnEnd": 3 } } @@ -1619,20 +2831,20 @@ } }, "location": { - "name": "G_NS", + "name": "NS_6", "file": { "key": "test.cpp" }, "location": { "range": { "file": { "key": "test.cpp" }, - "lineBegin": 40, + "lineBegin": 76, "columnBegin": 1, - "lineEnd": 54, + "lineEnd": 88, "columnEnd": 1 } }, "destination": { "file": { "key": "test.cpp" }, - "span": { "start": 656, "length": 4 } + "span": { "start": 1264, "length": 4 } } }, "kind": 5, @@ -2928,5 +4140,221 @@ "kind": 13, "language": 0 } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_1_depth_5", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { + "name": { "key": "foo_in_a_class_1_depth_5" } + } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_3" }, + "parent": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { "key": "NS_5" } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_1_depth_5", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 70, + "columnBegin": 11, + "lineEnd": 70, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1181, "length": 24 } + } + }, + "kind": 13, + "language": 0 + } + }, + { + "key": { + "searchcase": 0, + "name": "foo_in_a_class_depth_6", + "entity": { + "cxx": { + "defn": { + "function_": { + "key": { + "declaration": { + "key": { + "name": { + "key": { + "name": { + "key": { "name": { "key": "foo_in_a_class_depth_6" } } + }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_1" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_2" }, + "scope": { + "recordWithAccess": { + "record": { + "key": { + "name": { "key": "Class_3" }, + "scope": { + "namespace_": { + "key": { + "name": { "key": "NS_4" }, + "parent": { + "key": { + "name": { + "key": "NS_5" + }, + "parent": { + "key": { + "name": { + "key": "NS_6" + } + } + } + } + } + } + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "access": 2 + } + } + } + }, + "signature": { + "key": { "returns": { "key": "int" }, "parameters": [ ] } + }, + "method": { + "isVirtual": false, + "isConst": false, + "isVolatile": false, + "refQualifier": 0 + }, + "source": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + } + }, + "isInline": false + } + } + } + } + }, + "location": { + "name": "foo_in_a_class_depth_6", + "file": { "key": "test.cpp" }, + "location": { + "range": { + "file": { "key": "test.cpp" }, + "lineBegin": 82, + "columnBegin": 13, + "lineEnd": 82, + "columnEnd": 54 + } + }, + "destination": { + "file": { "key": "test.cpp" }, + "span": { "start": 1399, "length": 22 } + } + }, + "kind": 13, + "language": 0 + } } ] \ No newline at end of file diff --git a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/test.cpp b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/test.cpp index 13a4b08c5..cbf4f787d 100644 --- a/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/test.cpp +++ b/glean/lang/codemarkup/tests/clang/xrefs/namespace-nesting/test.cpp @@ -62,3 +62,27 @@ namespace D1_NS { }; } } +namespace NS_5 { + namespace NS_4 { + namespace NS_3 { + class Class_2 { + class Class_1 { + int foo_in_a_class_1_depth_5() { return 1; } + }; + }; + } + } +} +namespace NS_6 { + namespace NS_5 { + namespace NS_4 { + class Class_3 { + class Class_2 { + class Class_1 { + int foo_in_a_class_depth_6() { return 1; } + }; + }; + }; + } + } +} diff --git a/glean/schema/source/search.cxx.angle b/glean/schema/source/search.cxx.angle index 9a830860d..59b4fc420 100644 --- a/glean/schema/source/search.cxx.angle +++ b/glean/schema/source/search.cxx.angle @@ -167,6 +167,64 @@ predicate QueryToQNameCase: } ) ) + ) | ( + # five tuple. we give up on expanding this and allow the outer term `E` to be a namespace only + [E,D,C,B,A] = Query; + CxxRecordCase { Case, A, AName }; + # simplest case, `B` is a ns, `C` and `D` must be too + ( CxxNamespaceCase { Case, B, BNameNS }; + CxxNamespaceCase { Case, C, CNameNS }; + CxxNamespaceCase { Case, D, DNameNS }; + CxxNamespaceCase { Case, E, ENameNS }; + { name = AName, + scope = { namespace_ = { name = { just = BNameNS }, + parent = { just = { name = { just = CNameNS }, + parent = { just = { name = { just = DNameNS }, + parent = { just = { name = { just = ENameNS } } } } } + } } } } + } + # or `B` is a record + ) | ( + # case 1: C (and thus D and E) are namespaces + CxxRecordCase { Case, B, BNameR }; + ( CxxNamespaceCase { Case, C, CNameNS }; + CxxNamespaceCase { Case, D, DNameNS }; + CxxNamespaceCase { Case, E, ENameNS }; + { name = AName, scope = + { recordWithAccess = { record = { name = BNameR, + scope = { namespace_ = { name = { just = CNameNS }, + parent = { just = { name = { just = DNameNS }, + parent = { just = { name = { just = ENameNS } } } + } } } } + } } + } } + ) | ( + # case 2: C is a record and D and E are namespaces + CxxRecordCase { Case, C, CNameR }; + CxxNamespaceCase { Case, D, DNameNS }; + CxxNamespaceCase { Case, E, ENameNS }; + { name = AName, scope = + { recordWithAccess = { record = { name = BNameR, + scope = { recordWithAccess = { record = { name = CNameR, + scope = { namespace_ = { name = { just = DNameNS } } } + } } } + } } } + } + ) | ( + # case 3: C is a record and D is record, and E is a namespace + CxxRecordCase { Case, C, CNameR }; + CxxRecordCase { Case, D, DNameR }; + CxxNamespaceCase { Case, E, ENameNS }; + { name = AName, scope = + { recordWithAccess = { record = { name = BNameR, + scope = { recordWithAccess = { record = { name = CNameR, + scope = { recordWithAccess = { record = { name = DNameR, + scope = { namespace_ = { name = { just = ENameNS } } } } } } + } } } + } } } + } + ) + ) ) = QName; # compile to namespace qname, case aware