References

All variables can be passed as a reference by prefixing with a &, for example:

fn main() {
	let foo = 10; 
	print(foo); 
	print_ref(&foo);
}

fn print(value: i32) { 
	//Passed by value so no need to deference
	example(value);
}

fn print_ref(value: &i32) {
	//Dereferenced with *
	example(*value); 
}

fn example(value: i32) {
	//do something with value
}

Dereferencing a variable moves the value, so the value must implement Copy. See Deriving and implementing

For clarity:

SymbolsMeaning
<No symbols>Value, immutable
mutValue, mutable
&Reference, immutable
&mutReference, mutable
*Dereferenced