From 49ed499c44d9368d2b954697f362452d1447eecf Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Fri, 4 Aug 2023 13:46:44 -0600 Subject: Refactor Rust code for slice-to-array operation This patch exposes rust_slice_type_p and introduces rust_slice_to_array, in preparation for subsequent patches that will need these. --- gdb/rust-lang.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'gdb/rust-lang.h') diff --git a/gdb/rust-lang.h b/gdb/rust-lang.h index 85c93a9..2c7ccb9 100644 --- a/gdb/rust-lang.h +++ b/gdb/rust-lang.h @@ -34,6 +34,9 @@ extern bool rust_tuple_type_p (struct type *type); /* Return true if TYPE is a tuple struct type; otherwise false. */ extern bool rust_tuple_struct_type_p (struct type *type); +/* Return true if TYPE is a slice type, otherwise false. */ +extern bool rust_slice_type_p (const struct type *type); + /* Given a block, find the name of the block's crate. Returns an empty stringif no crate name can be found. */ extern std::string rust_crate_for_block (const struct block *block); @@ -50,6 +53,10 @@ extern const char *rust_last_path_segment (const char *path); extern struct type *rust_slice_type (const char *name, struct type *elt_type, struct type *usize_type); +/* Return a new array that holds the contents of the given slice, + VAL. */ +extern struct value *rust_slice_to_array (struct value *val); + /* Class representing the Rust language. */ class rust_language : public language_defn -- cgit v1.1