Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

workspaceSymbols doesn't match fully qualified names or wildcards #2847

Closed
mickaelistria opened this issue Sep 13, 2023 · 3 comments
Closed

Comments

@mickaelistria
Copy link
Contributor

workspaceSymbols doesn't match fully qualified names or wildcards, so it makes it annoying to use when multiple types have the same SimpleName. I for example am having JDK and OpenJDK source as projects in my workspace, and 2 different JDK configured; when trying to open Expression or List, I get tons of results; so I'm trying to add a subset of the package name as prefix (org.eclipse.*Expression) but then nothing is matched.
It would be convenient if JDT-LS, like JDT UI Editor, could also match query with package prefix.

@rgrunber
Copy link
Contributor

rgrunber commented Sep 13, 2023

image

JDT-LS communication
[Trace - 12:48:53] Sending request 'workspace/symbol - (25)'.
Params: {
    "query": "org.eclipse.Expression"
}


[Trace - 12:48:54] Received response 'workspace/symbol - (25)' in 98ms.
Result: [
    {
        "name": "ExpressionVariable",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.manipulation_1.19.100.v20230811-2104.jar/org.eclipse.jdt.internal.corext.refactoring.typeconstraints/ExpressionVariable.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.manipulation_1.19.100.v20230811-2104.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.corext.refactoring.typeconstraints(ExpressionVariable.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.corext.refactoring.typeconstraints"
    },
    {
        "name": "ExpressionChecker",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.manipulation_1.19.100.v20230811-2104.jar/org.eclipse.jdt.internal.corext.refactoring.code/ConstantChecks$ExpressionChecker.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.manipulation_1.19.100.v20230811-2104.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.corext.refactoring.code(ConstantChecks$ExpressionChecker.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.corext.refactoring.code.ConstantChecks"
    },
    {
        "name": "ExpressionMethodReference",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/ExpressionMethodReference.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(ExpressionMethodReference.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "ExpressionStatement",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/ExpressionStatement.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(ExpressionStatement.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "ExpressionUtils",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.buildship.core_3.1.7.v20221108-1729-s.jar/org.eclipse.buildship.core.internal.util.variable/ExpressionUtils.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.buildship.core_3.1.7.v20221108-1729-s.jar%3Corg.eclipse.buildship.core.internal.util.variable(ExpressionUtils.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.buildship.core.internal.util.variable"
    },
    {
        "name": "ExpressionMethodRefUpdate",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.manipulation_1.19.100.v20230811-2104.jar/org.eclipse.jdt.internal.corext.refactoring.structure/ChangeSignatureProcessor$ExpressionMethodRefUpdate.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.manipulation_1.19.100.v20230811-2104.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.corext.refactoring.structure(ChangeSignatureProcessor$ExpressionMethodRefUpdate.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.corext.refactoring.structure.ChangeSignatureProcessor"
    },
    {
        "name": "ExpressionsNotifier",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.debug.core_3.21.100.v20230731-1425.jar/org.eclipse.debug.internal.core/ExpressionManager$ExpressionsNotifier.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.debug.core_3.21.100.v20230731-1425.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.platform.doc.isv_4.29.0.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.debug.internal.core(ExpressionManager$ExpressionsNotifier.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.debug.internal.core.ExpressionManager"
    },
    {
        "name": "ExpressionManager",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.debug.core_3.21.100.v20230731-1425.jar/org.eclipse.debug.internal.core/ExpressionManager.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.debug.core_3.21.100.v20230731-1425.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.platform.doc.isv_4.29.0.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.debug.internal.core(ExpressionManager.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.debug.internal.core"
    },
    {
        "name": "Expression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/Expression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(Expression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "ExpressionContext",
        "kind": 10,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/ExpressionContext.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(ExpressionContext.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "Expression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/Expression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(Expression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "ExpressionNotifier",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.debug.core_3.21.100.v20230731-1425.jar/org.eclipse.debug.internal.core/ExpressionManager$ExpressionNotifier.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.debug.core_3.21.100.v20230731-1425.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.platform.doc.isv_4.29.0.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.debug.internal.core(ExpressionManager$ExpressionNotifier.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.debug.internal.core.ExpressionManager"
    }
]

Part of the issue is https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#workspaceSymbolParams is pretty vague on whether we need to support regular expressions, or even just *.

Update: The other issue is that wildcards are outright ignored in VS Code

Update 2: Actually we even support org.eclipse.*Expression!

JDT-LS Communication
[Trace - 13:32:56] Sending request 'workspace/symbol - (313)'.
Params: {
    "query": "org.eclipse.*Expression"
}
...
...
[Trace - 13:32:56] Received response 'workspace/symbol - (313)' in 131ms.
Result: [
    {
        "name": "WatchExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.debug.core_3.21.100.v20230731-1425.jar/org.eclipse.debug.internal.core/WatchExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.debug.core_3.21.100.v20230731-1425.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.platform.doc.isv_4.29.0.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.debug.internal.core(WatchExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.debug.internal.core"
    },
    {
        "name": "ResolvedLambdaExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.internal.core/ResolvedLambdaExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.core(ResolvedLambdaExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.core"
    },
    {
        "name": "SwitchExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/SwitchExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(SwitchExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "InlineValueEvaluatableExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.lsp4j_0.21.0.v20230517-2120.jar/org.eclipse.lsp4j/InlineValueEvaluatableExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.lsp4j_0.21.0.v20230517-2120.jar%3Corg.eclipse.lsp4j(InlineValueEvaluatableExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.lsp4j"
    },
    {
        "name": "MatchTypedStringSearchExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.m2e.core_2.4.0.20230826-0915.jar/org.eclipse.m2e.core.internal.index/MatchTypedStringSearchExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.m2e.core_2.4.0.20230826-0915.jar%3Corg.eclipse.m2e.core.internal.index(MatchTypedStringSearchExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.m2e.core.internal.index"
    },
    {
        "name": "CompletionOnJavadocAllocationExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.internal.codeassist.complete/CompletionOnJavadocAllocationExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.codeassist.complete(CompletionOnJavadocAllocationExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.codeassist.complete"
    },
    {
        "name": "OperatorExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/OperatorExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(OperatorExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "UnaryExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/UnaryExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(UnaryExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "IPolyExpression",
        "kind": 11,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/IPolyExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(IPolyExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "AND_AND_Expression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/AND_AND_Expression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(AND_AND_Expression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "OrderedInfixExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.manipulation_1.19.100.v20230811-2104.jar/org.eclipse.jdt.internal.corext.dom/OrderedInfixExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.manipulation_1.19.100.v20230811-2104.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.corext.dom(OrderedInfixExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.corext.dom"
    },
    {
        "name": "InstanceofExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/InstanceofExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(InstanceofExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "SelectionOnQualifiedAllocationExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.internal.codeassist.select/SelectionOnQualifiedAllocationExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.codeassist.select(SelectionOnQualifiedAllocationExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.codeassist.select"
    },
    {
        "name": "BinaryLambdaExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.internal.core/BinaryLambdaExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.core(BinaryLambdaExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.core"
    },
    {
        "name": "CompletionOnQualifiedAllocationExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.internal.codeassist.complete/CompletionOnQualifiedAllocationExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.codeassist.complete(CompletionOnQualifiedAllocationExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.codeassist.complete"
    },
    {
        "name": "ThisExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/ThisExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(ThisExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "BinaryExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/BinaryExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(BinaryExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "IErrorReportingExpression",
        "kind": 11,
        "location": {
            "uri": "jdt://contents/org.eclipse.debug.core_3.21.100.v20230731-1425.jar/org.eclipse.debug.core.model/IErrorReportingExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.debug.core_3.21.100.v20230731-1425.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.platform.doc.isv_4.29.0.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.debug.core.model(IErrorReportingExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.debug.core.model"
    },
    {
        "name": "JavadocArgumentExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/JavadocArgumentExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(JavadocArgumentExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "IWatchExpression",
        "kind": 11,
        "location": {
            "uri": "jdt://contents/org.eclipse.debug.core_3.21.100.v20230731-1425.jar/org.eclipse.debug.core.model/IWatchExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.debug.core_3.21.100.v20230731-1425.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.platform.doc.isv_4.29.0.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.debug.core.model(IWatchExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.debug.core.model"
    },
    {
        "name": "SelectionOnReferenceExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.internal.codeassist.select/SelectionOnReferenceExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.codeassist.select(SelectionOnReferenceExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.codeassist.select"
    },
    {
        "name": "PostfixExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/PostfixExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(PostfixExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "ReferenceExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/ReferenceExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(ReferenceExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "VariableDeclarationExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/VariableDeclarationExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(VariableDeclarationExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "SelectionOnLambdaExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.internal.codeassist.select/SelectionOnLambdaExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.codeassist.select(SelectionOnLambdaExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.codeassist.select"
    },
    {
        "name": "ConditionalExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/ConditionalExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(ConditionalExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "QualifiedAllocationExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/QualifiedAllocationExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(QualifiedAllocationExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "EqualExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/EqualExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(EqualExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "JavadocAllocationExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/JavadocAllocationExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(JavadocAllocationExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "PrefixExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/PrefixExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(PrefixExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "CaseDefaultExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/CaseDefaultExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(CaseDefaultExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "CombinedBinaryExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/CombinedBinaryExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(CombinedBinaryExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "CastExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/CastExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(CastExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "Expression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/Expression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(Expression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "StringSearchExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.m2e.core_2.4.0.20230826-0915.jar/org.eclipse.m2e.core.internal.index/StringSearchExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.m2e.core_2.4.0.20230826-0915.jar%3Corg.eclipse.m2e.core.internal.index(StringSearchExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.m2e.core.internal.index"
    },
    {
        "name": "SearchExpression",
        "kind": 11,
        "location": {
            "uri": "jdt://contents/org.eclipse.m2e.core_2.4.0.20230826-0915.jar/org.eclipse.m2e.core.internal.index/SearchExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.m2e.core_2.4.0.20230826-0915.jar%3Corg.eclipse.m2e.core.internal.index(SearchExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.m2e.core.internal.index"
    },
    {
        "name": "AllocationExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/AllocationExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(AllocationExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "LambdaExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.internal.core/LambdaExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.core(LambdaExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.core"
    },
    {
        "name": "PrefixExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/PrefixExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(PrefixExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "ParenthesizedExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/ParenthesizedExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(ParenthesizedExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "UserInputSearchExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.m2e.core_2.4.0.20230826-0915.jar/org.eclipse.m2e.core.internal.index/UserInputSearchExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.m2e.core_2.4.0.20230826-0915.jar%3Corg.eclipse.m2e.core.internal.index(UserInputSearchExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.m2e.core.internal.index"
    },
    {
        "name": "OR_OR_Expression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/OR_OR_Expression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(OR_OR_Expression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "InfixExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/InfixExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(InfixExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "PatternInstanceofExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/PatternInstanceofExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(PatternInstanceofExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "ArrayAllocationExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/ArrayAllocationExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(ArrayAllocationExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "ConditionalExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/ConditionalExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(ConditionalExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "InstanceOfExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/InstanceOfExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(InstanceOfExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "PostfixExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/PostfixExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(PostfixExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "IExpression",
        "kind": 11,
        "location": {
            "uri": "jdt://contents/org.eclipse.debug.core_3.21.100.v20230731-1425.jar/org.eclipse.debug.core.model/IExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.debug.core_3.21.100.v20230731-1425.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.platform.doc.isv_4.29.0.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.debug.core.model(IExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.debug.core.model"
    },
    {
        "name": "LambdaExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/LambdaExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(LambdaExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "CastExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/CastExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(CastExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "Expression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/Expression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(Expression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "LambdaExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/LambdaExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(LambdaExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    },
    {
        "name": "SwitchExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.core.dom/SwitchExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.core.dom(SwitchExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.core.dom"
    },
    {
        "name": "CodeSnippetAllocationExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar/org.eclipse.jdt.internal.eval/CodeSnippetAllocationExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core_3.35.0.v20230814-1356.jar=/javadoc_location=/jar:file:%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.doc.isv_3.14.2100.v20230901-1632.jar%5C!%5C/reference%5C/api=/%3Corg.eclipse.jdt.internal.eval(CodeSnippetAllocationExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.eval"
    },
    {
        "name": "FunctionalExpression",
        "kind": 5,
        "location": {
            "uri": "jdt://contents/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar/org.eclipse.jdt.internal.compiler.ast/FunctionalExpression.class?=org.eclipse.jdt.ls.core/%5C/home%5C/rgrunber%5C/.config%5C/Code%5C/User%5C/workspaceStorage%5C/843e4ec647bdfd7265e8fa58e4757ee9%5C/redhat.java%5C/jdt_ws%5C/.metadata%5C/.plugins%5C/org.eclipse.pde.core%5C/.bundle_pool%5C/plugins%5C/org.eclipse.jdt.core.compiler.batch_3.35.0.v20230814-2020.jar%3Corg.eclipse.jdt.internal.compiler.ast(FunctionalExpression.class",
            "range": {
                "start": {
                    "line": 0,
                    "character": 0
                },
                "end": {
                    "line": 0,
                    "character": 0
                }
            }
        },
        "containerName": "org.eclipse.jdt.internal.compiler.ast"
    }
]

@mickaelistria
Copy link
Contributor Author

OK, thanks. It is more likely an issue on client-side then. I verified it (should have done it first) and you're right. I've opened redhat-developer/eclipseide-jdtls#98

@rgrunber
Copy link
Contributor

For reference, we also have some basic test of the wildcard support at

public void testSearchQualifiedTypeWithWildcards() {
List<SymbolInformation> results = WorkspaceSymbolHandler.search("java.util.*list*", monitor);
assertTrue(results.size() > 1);
assertTrue(results.stream().anyMatch(s -> "List".equals(s.getName()) && "java.util".equals(s.getContainerName())));
results = WorkspaceSymbolHandler.search("*.lang*.*exception", monitor);
assertTrue(results.size() > 1);
assertTrue(results.stream().allMatch(s -> s.getName().endsWith("Exception") && s.getContainerName().contains(".lang")));
}
.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants