// Here, spatial_reference_name_moved goes out of scope and is dropped.
// spatial_reference_name_new goes out of scope but was moved, so nothing happens.
// spatial_reference_name goies out of scope and is dropped.
Here, spatial_reference_name_moved goes out of scope and is dropped.
spatial_reference_name_new goes out of scope but was moved, so nothing happens.
spatial_reference_name goies out of scope and is dropped.
Here spatial_reference_name_moved goes out of scope and is dropped . spatial_reference_name_new goes out of scope but was moved so nothing happens . spatial_reference_name goies out of scope and is dropped .
fn use_borrowed(spatial_reference_name: &String) -> i32 { // spatial_reference_name is a reference to a String
    match spatial_reference_name.as_ref() {
        "WGS84" => 4326,
        _ => 0,
    }
}
fn use_borrowed ( spatial_reference_name : & String ) -> i32 { // spatial_reference_name is a reference to a String match spatial_reference_name . as_ref ( ) { " " => 4326 , _ => 0 , } }
Here, spatial_reference_name_moved goes out of scope and is dropped.
Here spatial_reference_name_moved goes out of scope and is dropped .
spatial_reference_name
&String