Skip to content

Commit 5b8df20

Browse files
committed
save() and try_save() take Gd<T> by-ref
1 parent 0d1f4d1 commit 5b8df20

File tree

2 files changed

+11
-10
lines changed

2 files changed

+11
-10
lines changed

godot-core/src/tools/save_load.rs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -78,17 +78,18 @@ where
7878
/// See [`try_save`] for more information.
7979
///
8080
/// # Panics
81-
/// If the resouce cannot be saved.
81+
/// If the resource cannot be saved.
8282
///
8383
/// # Example
8484
/// ```no_run
8585
/// use godot::prelude::*;
8686
///
87-
/// save(Resource::new_gd(), "res://BaseResource.tres")
87+
/// let obj = Resource::new_gd();
88+
/// save(&obj, "res://BaseResource.tres")
8889
/// ```
8990
/// use godot::
9091
#[inline]
91-
pub fn save<T>(obj: Gd<T>, path: impl AsArg<GString>)
92+
pub fn save<T>(obj: &Gd<T>, path: impl AsArg<GString>)
9293
where
9394
T: Inherits<Resource>,
9495
{
@@ -120,12 +121,12 @@ where
120121
/// };
121122
///
122123
/// let save_state = SavedGame::new_gd();
123-
/// let res = try_save(save_state, "user://save.tres");
124+
/// let res = try_save(&save_state, "user://save.tres");
124125
///
125126
/// assert!(res.is_ok());
126127
/// ```
127128
#[inline]
128-
pub fn try_save<T>(obj: Gd<T>, path: impl AsArg<GString>) -> Result<(), IoError>
129+
pub fn try_save<T>(obj: &Gd<T>, path: impl AsArg<GString>) -> Result<(), IoError>
129130
where
130131
T: Inherits<Resource>,
131132
{
@@ -163,7 +164,7 @@ where
163164
}
164165
}
165166

166-
fn save_impl<T>(obj: Gd<T>, path: &GString) -> Result<(), IoError>
167+
fn save_impl<T>(obj: &Gd<T>, path: &GString) -> Result<(), IoError>
167168
where
168169
T: Inherits<Resource>,
169170
{

itest/rust/src/engine_tests/save_load_test.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,13 @@ fn save_test() {
3434

3535
let resource = SavedGame::new_gd();
3636

37-
let res = try_save(resource.clone(), FAULTY_PATH);
37+
let res = try_save(&resource, FAULTY_PATH);
3838
assert!(res.is_err());
3939

40-
let res = try_save(resource.clone(), &res_path);
40+
let res = try_save(&resource, &res_path);
4141
assert!(res.is_ok());
4242

43-
save(resource.clone(), &res_path);
43+
save(&resource, &res_path);
4444

4545
remove_test_file(RESOURCE_NAME);
4646
}
@@ -53,7 +53,7 @@ fn load_test() {
5353
let mut resource = SavedGame::new_gd();
5454
resource.bind_mut().set_level(level);
5555

56-
save(resource.clone(), &res_path);
56+
save(&resource, &res_path);
5757

5858
let res = try_load::<SavedGame>(FAULTY_PATH);
5959
assert!(res.is_err());

0 commit comments

Comments
 (0)