From 60343a6b919673bd30204dce8f14c52ec10c8707 Mon Sep 17 00:00:00 2001 From: Don Stewart Date: Fri, 4 Aug 2023 02:11:50 -0700 Subject: [PATCH] Add symbol id lookup for Pp symbols Summary: Update symbol id encoding for pp.angle things to be more precise. Then implement symbol lookup. This is sufficient to give us describe() , symbol pages and hover text. Reviewed By: mpark Differential Revision: D48059438 fbshipit-source-id: e476eb6d3548d61e4e7c202cbcd29e4e72b3fb99 --- glean/glass/Glean/Glass/Search.hs | 4 +- glean/glass/Glean/Glass/Search/Pp.hs | 105 ++++++++++++++++++ glean/glass/Glean/Glass/SymbolId/Pp.hs | 6 +- .../tests/cpp/describe_symbol_macro.out | 50 +++++++++ .../tests/cpp/describe_symbol_macro.query | 2 + .../tests/cpp/describe_symbol_macro_2.out | 50 +++++++++ .../tests/cpp/describe_symbol_macro_2.query | 2 + .../tests/cpp/documentSymbolIndex.out | 6 +- .../tests/cpp/documentSymbolListX.out | 60 +++++----- .../cpp/searchScope_scope_ignorecase.out | 2 +- .../tests/cpp/searchSymbol_ignorecase.out | 2 +- .../cpp/searchSymbol_lang_wild_ignorecase.out | 2 +- .../cpp/searchSymbol_prefix_empty_name.out | 12 +- ...earchSymbol_prefix_empty_name_describe.out | 24 ++-- ...rchSymbol_prefix_empty_name_ignorecase.out | 12 +- ...bol_prefix_exact_kind_class_ignorecase.out | 2 +- ...Symbol_prefix_one_char_name_ignorecase.out | 2 +- ...hSymbol_prefix_partial_name_ignorecase.out | 2 +- 18 files changed, 279 insertions(+), 66 deletions(-) create mode 100644 glean/glass/Glean/Glass/Search/Pp.hs create mode 100644 glean/glass/test/regression/tests/cpp/describe_symbol_macro.out create mode 100644 glean/glass/test/regression/tests/cpp/describe_symbol_macro.query create mode 100644 glean/glass/test/regression/tests/cpp/describe_symbol_macro_2.out create mode 100644 glean/glass/test/regression/tests/cpp/describe_symbol_macro_2.query diff --git a/glean/glass/Glean/Glass/Search.hs b/glean/glass/Glean/Glass/Search.hs index 68a4c66df..47e90eb58 100644 --- a/glean/glass/Glean/Glass/Search.hs +++ b/glean/glass/Glean/Glass/Search.hs @@ -36,8 +36,9 @@ import qualified Glean.Glass.Search.Haskell ({- instances -}) import qualified Glean.Glass.Search.Java ({- instances -}) import qualified Glean.Glass.Search.Kotlin ({- instances -}) import qualified Glean.Glass.Search.LSIF ({- instances -}) -import qualified Glean.Glass.Search.SCIP ({- instances -}) +import qualified Glean.Glass.Search.Pp ({- instances -}) import qualified Glean.Glass.Search.Python ({- instances -}) +import qualified Glean.Glass.Search.SCIP ({- instances -}) import qualified Glean.Glass.Search.Thrift ({- instances -}) import Glean.Glass.Types (ServerException(ServerException)) import qualified Glean.Schema.Code.Types as Code @@ -66,6 +67,7 @@ searchEntity searchEntity lang toks = case lang of Language_Cpp -> fmap Code.Entity_cxx <$> Search.symbolSearch toks Language_Hack -> fmap Code.Entity_hack <$> Search.symbolSearch toks + Language_PreProcessor -> fmap Code.Entity_pp <$> Search.symbolSearch toks Language_Python -> fmap Code.Entity_python <$> Search.symbolSearch toks Language_JavaScript -> fmap Code.Entity_flow <$> Search.symbolSearch toks Language_Haskell -> fmap Code.Entity_hs <$> Search.symbolSearch toks diff --git a/glean/glass/Glean/Glass/Search/Pp.hs b/glean/glass/Glean/Glass/Search/Pp.hs new file mode 100644 index 000000000..031909917 --- /dev/null +++ b/glean/glass/Glean/Glass/Search/Pp.hs @@ -0,0 +1,105 @@ +{- + Copyright (c) Meta Platforms, Inc. and affiliates. + All rights reserved. + + This source code is licensed under the BSD-style license found in the + LICENSE file in the root directory of this source tree. +-} + +{-# LANGUAGE TypeApplications, ApplicativeDo, PartialTypeSignatures #-} +{-# LANGUAGE AllowAmbiguousTypes #-} +{-# OPTIONS_GHC -Wno-orphans #-} + +module Glean.Glass.Search.Pp + ( {- instances -} + ) where + +import Data.Text ( Text ) + +import Glean.Glass.Search.Class +import Glean.Angle as Angle +import Glean.Glass.Query ( entityLocation ) +import Glean.Glass.Utils ( joinFragments ) + +import qualified Glean.Schema.CodePp.Types as Pp +import qualified Glean.Schema.CodemarkupTypes.Types as Code +import qualified Glean.Schema.Pp1.Types as Pp +import qualified Glean.Schema.Src.Types as Src + +breakPathAndName :: [Text] -> Maybe (Path, Name) +breakPathAndName [] = Nothing +breakPathAndName [_name] = Nothing -- has to be a file and a name +breakPathAndName toks@(_:_) = Just (Path path, Name name) + where + path = joinFragments (init toks) + name = last toks + +data Query + = Define !Path !Name + | Undef !Path !Name + | Include !Path + +newtype Path = Path Text +newtype Name = Name Text + +instance Search Pp.Entity where + symbolSearch toks = case toks of + [] -> return $ None "PP.symbolSearch: empty" + [_] -> return $ None "PP.symbolSearch: singleton: not a symbolid" + base:rest -> case base of + "define" -> case breakPathAndName rest of + Nothing -> return $ None "Pp.symbolSearch: define: missing name" + Just (path, name) -> searchSymbolId toks $ runQuery (Define path name) + "undef" -> case breakPathAndName rest of + Nothing -> return $ None "Pp.symbolSearch: undef: missing name" + Just (path, name) -> searchSymbolId toks $ runQuery (Undef path name) + _ -> searchSymbolId toks $ runQuery (Include (Path (joinFragments toks))) + +runQuery :: Query -> Angle (ResultLocation Pp.Entity) +runQuery (Define path name) = searchDefine path name +runQuery (Undef path name) = searchUndef path name +runQuery (Include path) = searchInclude path + +searchDefine :: Path -> Name -> Angle (ResultLocation Pp.Entity) +searchDefine (Path path) (Name name) = + vars $ \(entity :: Angle Pp.Entity) (file :: Angle Src.File) + (decl :: Angle Pp.Define) (rangespan :: Angle Code.RangeSpan) + (lname :: Angle Text) -> + tuple (entity,file,rangespan,lname) `where_` [ + file .= predicate @Src.File (string path), + decl .= predicate @Pp.Define ( + rec $ + field @"macro" (string name) $ + field @"source" (rec $ field @"file" (asPredicate file) end) + end), + alt @"define" (asPredicate decl) .= sig entity, + entityLocation (alt @"pp" entity) file rangespan lname + ] + +searchUndef :: Path -> Name -> Angle (ResultLocation Pp.Entity) +searchUndef (Path path) (Name name) = + vars $ \(entity :: Angle Pp.Entity) (file :: Angle Src.File) + (decl :: Angle Pp.Undef) (rangespan :: Angle Code.RangeSpan) + (lname :: Angle Text) -> + tuple (entity,file,rangespan,lname) `where_` [ + file .= predicate @Src.File (string path), + decl .= predicate @Pp.Undef ( + rec $ + field @"macro" (string name) $ + field @"source" (rec $ field @"file" (asPredicate file) end) + end), + alt @"undef" (asPredicate decl) .= sig entity, + entityLocation (alt @"pp" entity) file rangespan lname + ] + +searchInclude :: Path -> Angle (ResultLocation Pp.Entity) +searchInclude (Path path) = + vars $ \(entity :: Angle Pp.Entity) (file :: Angle Src.File) + (rangespan :: Angle Code.RangeSpan) (lname :: Angle Text) -> + tuple (entity,file,rangespan,lname) `where_` [ + file .= predicate @Src.File (string path), + wild .= predicate @Pp.Include ( -- asserts it is a member of pp.Include + rec $ field @"file" (asPredicate file) end), + alt @"include_" (asPredicate file) .= sig entity, + entityLocation (alt @"pp" entity) file rangespan lname + ] diff --git a/glean/glass/Glean/Glass/SymbolId/Pp.hs b/glean/glass/Glean/Glass/SymbolId/Pp.hs index 51f36577c..1df0eb869 100644 --- a/glean/glass/Glean/Glass/SymbolId/Pp.hs +++ b/glean/glass/Glean/Glass/SymbolId/Pp.hs @@ -34,10 +34,12 @@ instance Symbol Pp.Entity where Pp.Entity_EMPTY -> return [] instance Symbol Pp1.Define_key where - toSymbol (Pp1.Define_key macro source) = toSymbolMacro macro source + toSymbol (Pp1.Define_key macro source) = + (\x -> "define" : x) <$> toSymbolMacro macro source instance Symbol Pp1.Undef_key where - toSymbol (Pp1.Undef_key macro source) = toSymbolMacro macro source + toSymbol (Pp1.Undef_key macro source) = + (\x -> "undef" : x) <$> toSymbolMacro macro source instance Symbol Src.File where toSymbol k = pathFragments <$> Glean.keyOf k diff --git a/glean/glass/test/regression/tests/cpp/describe_symbol_macro.out b/glean/glass/test/regression/tests/cpp/describe_symbol_macro.out new file mode 100644 index 000000000..d888af965 --- /dev/null +++ b/glean/glass/test/regression/tests/cpp/describe_symbol_macro.out @@ -0,0 +1,50 @@ +[ + "@generated", + { + "comments": [], + "contains_relation": { + "firstChild": "nondeterministic", + "firstParent": "nondeterministic", + "hasMoreChildren": false, + "hasMoreParents": false + }, + "extends_relation": { + "firstChild": "nondeterministic", + "firstParent": "nondeterministic", + "hasMoreChildren": false, + "hasMoreParents": false + }, + "kind": 30, + "language": 8, + "location": { + "filepath": "test2.h", + "range": { + "columnBegin": 9, + "columnEnd": 12, + "lineBegin": 10, + "lineEnd": 10 + }, + "repository": "test" + }, + "modifiers": [], + "name": { + "container": "test2.h", + "localName": "FOO" + }, + "pretty_comments": [], + "repo_hash": "testhash", + "sym": "test/pp/define/test2.h/FOO", + "sym_location": { + "filepath": "test2.h", + "range": { + "columnBegin": 9, + "columnEnd": 12, + "lineBegin": 10, + "lineEnd": 10 + }, + "repository": "test" + }, + "sym_other_locations": [], + "type_xrefs": [] + } +] \ No newline at end of file diff --git a/glean/glass/test/regression/tests/cpp/describe_symbol_macro.query b/glean/glass/test/regression/tests/cpp/describe_symbol_macro.query new file mode 100644 index 000000000..eba16be19 --- /dev/null +++ b/glean/glass/test/regression/tests/cpp/describe_symbol_macro.query @@ -0,0 +1,2 @@ +action: describeSymbol +args: "test/pp/define/test2.h/FOO" diff --git a/glean/glass/test/regression/tests/cpp/describe_symbol_macro_2.out b/glean/glass/test/regression/tests/cpp/describe_symbol_macro_2.out new file mode 100644 index 000000000..c8680b94f --- /dev/null +++ b/glean/glass/test/regression/tests/cpp/describe_symbol_macro_2.out @@ -0,0 +1,50 @@ +[ + "@generated", + { + "comments": [], + "contains_relation": { + "firstChild": "nondeterministic", + "firstParent": "nondeterministic", + "hasMoreChildren": false, + "hasMoreParents": false + }, + "extends_relation": { + "firstChild": "nondeterministic", + "firstParent": "nondeterministic", + "hasMoreChildren": false, + "hasMoreParents": false + }, + "kind": 30, + "language": 8, + "location": { + "filepath": "test.cpp", + "range": { + "columnBegin": 9, + "columnEnd": 10, + "lineBegin": 87, + "lineEnd": 87 + }, + "repository": "test" + }, + "modifiers": [], + "name": { + "container": "test.cpp", + "localName": "A" + }, + "pretty_comments": [], + "repo_hash": "testhash", + "sym": "test/pp/define/test.cpp/A", + "sym_location": { + "filepath": "test.cpp", + "range": { + "columnBegin": 9, + "columnEnd": 10, + "lineBegin": 87, + "lineEnd": 87 + }, + "repository": "test" + }, + "sym_other_locations": [], + "type_xrefs": [] + } +] \ No newline at end of file diff --git a/glean/glass/test/regression/tests/cpp/describe_symbol_macro_2.query b/glean/glass/test/regression/tests/cpp/describe_symbol_macro_2.query new file mode 100644 index 000000000..a0b10b2ec --- /dev/null +++ b/glean/glass/test/regression/tests/cpp/describe_symbol_macro_2.query @@ -0,0 +1,2 @@ +action: describeSymbol +args: "test/pp/define/test.cpp/A" diff --git a/glean/glass/test/regression/tests/cpp/documentSymbolIndex.out b/glean/glass/test/regression/tests/cpp/documentSymbolIndex.out index dcfe195b7..2877b058e 100644 --- a/glean/glass/test/regression/tests/cpp/documentSymbolIndex.out +++ b/glean/glass/test/regression/tests/cpp/documentSymbolIndex.out @@ -2554,7 +2554,7 @@ "lineBegin": 25, "lineEnd": 25 }, - "sym": "test/pp/test2.h/FOO", + "sym": "test/pp/define/test2.h/FOO", "target": { "filepath": "test2.h", "range": { @@ -4598,7 +4598,7 @@ "lineBegin": 87, "lineEnd": 87 }, - "sym": "test/pp/test.cpp/A" + "sym": "test/pp/define/test.cpp/A" } ], "88": [ @@ -4626,7 +4626,7 @@ "lineBegin": 88, "lineEnd": 88 }, - "sym": "test/pp/test.cpp/B" + "sym": "test/pp/define/test.cpp/B" } ], "9": [ diff --git a/glean/glass/test/regression/tests/cpp/documentSymbolListX.out b/glean/glass/test/regression/tests/cpp/documentSymbolListX.out index f64d4bf87..44761492c 100644 --- a/glean/glass/test/regression/tests/cpp/documentSymbolListX.out +++ b/glean/glass/test/regression/tests/cpp/documentSymbolListX.out @@ -4929,7 +4929,7 @@ "lineBegin": 87, "lineEnd": 87 }, - "sym": "test/pp/test.cpp/A" + "sym": "test/pp/define/test.cpp/A" }, { "attributes": [ @@ -4970,7 +4970,7 @@ "lineBegin": 88, "lineEnd": 88 }, - "sym": "test/pp/test.cpp/B" + "sym": "test/pp/define/test.cpp/B" } ], "references": [ @@ -7543,19 +7543,19 @@ "attributes": [ { "attribute": { - "aString": "test.h" + "aString": "FOO" }, "key": "symbolName" }, { "attribute": { - "aString": "" + "aString": "test2.h" }, "key": "symbolParent" }, { "attribute": { - "aInteger": 4 + "aInteger": 30 }, "key": "symbolKind" }, @@ -7573,19 +7573,19 @@ } ], "range": { - "columnBegin": 1, - "columnEnd": 18, - "lineBegin": 9, - "lineEnd": 9 + "columnBegin": 14, + "columnEnd": 17, + "lineBegin": 25, + "lineEnd": 25 }, - "sym": "test/pp/test.h", + "sym": "test/pp/define/test2.h/FOO", "target": { - "filepath": "test.h", + "filepath": "test2.h", "range": { - "columnBegin": 1, - "columnEnd": 1, - "lineBegin": 1, - "lineEnd": 1 + "columnBegin": 9, + "columnEnd": 12, + "lineBegin": 10, + "lineEnd": 10 }, "repository": "test" } @@ -7626,8 +7626,8 @@ "range": { "columnBegin": 1, "columnEnd": 18, - "lineBegin": 85, - "lineEnd": 85 + "lineBegin": 9, + "lineEnd": 9 }, "sym": "test/pp/test.h", "target": { @@ -7645,19 +7645,19 @@ "attributes": [ { "attribute": { - "aString": "FOO" + "aString": "test.h" }, "key": "symbolName" }, { "attribute": { - "aString": "test2.h" + "aString": "" }, "key": "symbolParent" }, { "attribute": { - "aInteger": 30 + "aInteger": 4 }, "key": "symbolKind" }, @@ -7675,19 +7675,19 @@ } ], "range": { - "columnBegin": 14, - "columnEnd": 17, - "lineBegin": 25, - "lineEnd": 25 + "columnBegin": 1, + "columnEnd": 18, + "lineBegin": 85, + "lineEnd": 85 }, - "sym": "test/pp/test2.h/FOO", + "sym": "test/pp/test.h", "target": { - "filepath": "test2.h", + "filepath": "test.h", "range": { - "columnBegin": 9, - "columnEnd": 12, - "lineBegin": 10, - "lineEnd": 10 + "columnBegin": 1, + "columnEnd": 1, + "lineBegin": 1, + "lineEnd": 1 }, "repository": "test" } diff --git a/glean/glass/test/regression/tests/cpp/searchScope_scope_ignorecase.out b/glean/glass/test/regression/tests/cpp/searchScope_scope_ignorecase.out index 11767f111..47e77d834 100644 --- a/glean/glass/test/regression/tests/cpp/searchScope_scope_ignorecase.out +++ b/glean/glass/test/regression/tests/cpp/searchScope_scope_ignorecase.out @@ -70,7 +70,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test2.h/FOO" + "symbol": "test/pp/define/test2.h/FOO" } ] } diff --git a/glean/glass/test/regression/tests/cpp/searchSymbol_ignorecase.out b/glean/glass/test/regression/tests/cpp/searchSymbol_ignorecase.out index 8d6680360..0f78e11c3 100644 --- a/glean/glass/test/regression/tests/cpp/searchSymbol_ignorecase.out +++ b/glean/glass/test/regression/tests/cpp/searchSymbol_ignorecase.out @@ -70,7 +70,7 @@ "score": { "exactness": 0 }, - "symbol": "test/pp/test2.h/FOO" + "symbol": "test/pp/define/test2.h/FOO" } ] } diff --git a/glean/glass/test/regression/tests/cpp/searchSymbol_lang_wild_ignorecase.out b/glean/glass/test/regression/tests/cpp/searchSymbol_lang_wild_ignorecase.out index 8d6680360..0f78e11c3 100644 --- a/glean/glass/test/regression/tests/cpp/searchSymbol_lang_wild_ignorecase.out +++ b/glean/glass/test/regression/tests/cpp/searchSymbol_lang_wild_ignorecase.out @@ -70,7 +70,7 @@ "score": { "exactness": 0 }, - "symbol": "test/pp/test2.h/FOO" + "symbol": "test/pp/define/test2.h/FOO" } ] } diff --git a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name.out b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name.out index 4d503d3e3..fcf07f69b 100644 --- a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name.out +++ b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name.out @@ -943,7 +943,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test.cpp/A" + "symbol": "test/pp/define/test.cpp/A" }, { "kind": 30, @@ -966,7 +966,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test.cpp/B" + "symbol": "test/pp/define/test.cpp/B" }, { "kind": 30, @@ -989,7 +989,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test.h/C" + "symbol": "test/pp/define/test.h/C" }, { "kind": 30, @@ -1012,7 +1012,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test2.h/D" + "symbol": "test/pp/define/test2.h/D" }, { "kind": 30, @@ -1035,7 +1035,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test2.h/FOO" + "symbol": "test/pp/define/test2.h/FOO" }, { "kind": 30, @@ -1058,7 +1058,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test3.h/D" + "symbol": "test/pp/define/test3.h/D" } ] } diff --git a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name_describe.out b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name_describe.out index 5341d8bb9..930b05ae6 100644 --- a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name_describe.out +++ b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name_describe.out @@ -1807,7 +1807,7 @@ }, "pretty_comments": [], "repo_hash": "testhash", - "sym": "test/pp/test.cpp/A", + "sym": "test/pp/define/test.cpp/A", "sym_location": { "filepath": "test.cpp", "range": { @@ -1854,7 +1854,7 @@ }, "pretty_comments": [], "repo_hash": "testhash", - "sym": "test/pp/test.cpp/B", + "sym": "test/pp/define/test.cpp/B", "sym_location": { "filepath": "test.cpp", "range": { @@ -1901,7 +1901,7 @@ }, "pretty_comments": [], "repo_hash": "testhash", - "sym": "test/pp/test.h/C", + "sym": "test/pp/define/test.h/C", "sym_location": { "filepath": "test.h", "range": { @@ -1948,7 +1948,7 @@ }, "pretty_comments": [], "repo_hash": "testhash", - "sym": "test/pp/test2.h/D", + "sym": "test/pp/define/test2.h/D", "sym_location": { "filepath": "test2.h", "range": { @@ -1995,7 +1995,7 @@ }, "pretty_comments": [], "repo_hash": "testhash", - "sym": "test/pp/test2.h/FOO", + "sym": "test/pp/define/test2.h/FOO", "sym_location": { "filepath": "test2.h", "range": { @@ -2042,7 +2042,7 @@ }, "pretty_comments": [], "repo_hash": "testhash", - "sym": "test/pp/test3.h/D", + "sym": "test/pp/define/test3.h/D", "sym_location": { "filepath": "test3.h", "range": { @@ -2998,7 +2998,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test.cpp/A" + "symbol": "test/pp/define/test.cpp/A" }, { "kind": 30, @@ -3021,7 +3021,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test.cpp/B" + "symbol": "test/pp/define/test.cpp/B" }, { "kind": 30, @@ -3044,7 +3044,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test.h/C" + "symbol": "test/pp/define/test.h/C" }, { "kind": 30, @@ -3067,7 +3067,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test2.h/D" + "symbol": "test/pp/define/test2.h/D" }, { "kind": 30, @@ -3090,7 +3090,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test2.h/FOO" + "symbol": "test/pp/define/test2.h/FOO" }, { "kind": 30, @@ -3113,7 +3113,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test3.h/D" + "symbol": "test/pp/define/test3.h/D" } ] } diff --git a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name_ignorecase.out b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name_ignorecase.out index 4d503d3e3..fcf07f69b 100644 --- a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name_ignorecase.out +++ b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_empty_name_ignorecase.out @@ -943,7 +943,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test.cpp/A" + "symbol": "test/pp/define/test.cpp/A" }, { "kind": 30, @@ -966,7 +966,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test.cpp/B" + "symbol": "test/pp/define/test.cpp/B" }, { "kind": 30, @@ -989,7 +989,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test.h/C" + "symbol": "test/pp/define/test.h/C" }, { "kind": 30, @@ -1012,7 +1012,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test2.h/D" + "symbol": "test/pp/define/test2.h/D" }, { "kind": 30, @@ -1035,7 +1035,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test2.h/FOO" + "symbol": "test/pp/define/test2.h/FOO" }, { "kind": 30, @@ -1058,7 +1058,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test3.h/D" + "symbol": "test/pp/define/test3.h/D" } ] } diff --git a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_exact_kind_class_ignorecase.out b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_exact_kind_class_ignorecase.out index 3d2edec65..d357c2a75 100644 --- a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_exact_kind_class_ignorecase.out +++ b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_exact_kind_class_ignorecase.out @@ -93,7 +93,7 @@ "score": { "exactness": 0 }, - "symbol": "test/pp/test2.h/FOO" + "symbol": "test/pp/define/test2.h/FOO" } ] } diff --git a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_one_char_name_ignorecase.out b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_one_char_name_ignorecase.out index 94fc40c96..deb6b96e7 100644 --- a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_one_char_name_ignorecase.out +++ b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_one_char_name_ignorecase.out @@ -93,7 +93,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test2.h/FOO" + "symbol": "test/pp/define/test2.h/FOO" } ] } diff --git a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_partial_name_ignorecase.out b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_partial_name_ignorecase.out index 94fc40c96..deb6b96e7 100644 --- a/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_partial_name_ignorecase.out +++ b/glean/glass/test/regression/tests/cpp/searchSymbol_prefix_partial_name_ignorecase.out @@ -93,7 +93,7 @@ "score": { "exactness": 2 }, - "symbol": "test/pp/test2.h/FOO" + "symbol": "test/pp/define/test2.h/FOO" } ] }