[clangd][HLSL] Add hover support for vector swizzle and matrix element access (#212741)
Hovering over a vector swizzle expression (e.g. `.xyz`) or a matrix
element access (e.g. `._m00`) previously produced no hover information,
since ExtVectorElementExpr and MatrixElementExpr were not handled in
getHoverContents(const Expr *E).
This patch adds support for these expressions within `getHoverContents`
by extracting the accessor name and resolved type for both node kinds.
Fixes #212612