Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'editors/code/src/lsp_ext.ts')
-rw-r--r--editors/code/src/lsp_ext.ts19
1 files changed, 19 insertions, 0 deletions
diff --git a/editors/code/src/lsp_ext.ts b/editors/code/src/lsp_ext.ts
index b72804e510..5af2cab0ee 100644
--- a/editors/code/src/lsp_ext.ts
+++ b/editors/code/src/lsp_ext.ts
@@ -150,6 +150,11 @@ export const serverStatus = new lc.NotificationType<ServerStatusParams>(
"experimental/serverStatus"
);
export const ssr = new lc.RequestType<SsrParams, lc.WorkspaceEdit, void>("experimental/ssr");
+export const viewRecursiveMemoryLayout = new lc.RequestType<
+ lc.TextDocumentPositionParams,
+ RecursiveMemoryLayout | null,
+ void
+>("rust-analyzer/viewRecursiveMemoryLayout");
export type JoinLinesParams = {
textDocument: lc.TextDocumentIdentifier;
@@ -197,3 +202,17 @@ export type SsrParams = {
position: lc.Position;
selections: readonly lc.Range[];
};
+
+export type RecursiveMemoryLayoutNode = {
+ item_name: string;
+ typename: string;
+ size: number;
+ alignment: number;
+ offset: number;
+ parent_idx: number;
+ children_start: number;
+ children_len: number;
+};
+export type RecursiveMemoryLayout = {
+ nodes: RecursiveMemoryLayoutNode[];
+};