Primitive Type tuple
Operations on tuples
To access a single element of a tuple one can use the following
methods:
valN - returns a value of N-th element
refN - returns a reference to N-th element
mutN - returns a mutable reference to N-th element
Indexing starts from zero, so val0 returns first value, val1
returns second value, and so on. In general, a tuple with S
elements provides aforementioned methods suffixed with numbers
from 0 to S-1. Traits which contain these methods are
implemented for tuples with up to 12 elements.
If every type inside a tuple implements one of the following
traits, then a tuple itself also implements it.
Clone
PartialEq
Eq
PartialOrd
Ord
Default
Using methods:
fn main() {
let pair = ("pi", 3.14f64);
assert_eq!(pair.val0(), "pi");
assert_eq!(pair.val1(), 3.14f64);
}
let pair = ("pi", 3.14f64);
assert_eq!(pair.val0(), "pi");
assert_eq!(pair.val1(), 3.14f64);
Using traits implemented for tuples:
fn main() {
use std::default::Default;
let a = (1i, 2i);
let b = (3i, 4i);
assert!(a != b);
let c = b.clone();
assert!(b == c);
let d : (u32, f32) = Default::default();
assert_eq!(d, (0u32, 0.0f32));
}
use std::default::Default;
let a = (1i, 2i);
let b = (3i, 4i);
assert!(a != b);
let c = b.clone();
assert!(b == c);
let d : (u32, f32) = Default::default();
assert_eq!(d, (0u32, 0.0f32));
Trait Implementations
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
impl<A: Eq> Eq for (A)
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val3(self) -> D
fn ref3<'a>(&'a self) -> &'a D
fn mut3<'a>(&'a mut self) -> &'a mut D
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val3(self) -> D
fn ref3<'a>(&'a self) -> &'a D
fn mut3<'a>(&'a mut self) -> &'a mut D
fn val4(self) -> E
fn ref4<'a>(&'a self) -> &'a E
fn mut4<'a>(&'a mut self) -> &'a mut E
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val3(self) -> D
fn ref3<'a>(&'a self) -> &'a D
fn mut3<'a>(&'a mut self) -> &'a mut D
fn val4(self) -> E
fn ref4<'a>(&'a self) -> &'a E
fn mut4<'a>(&'a mut self) -> &'a mut E
fn val5(self) -> F
fn ref5<'a>(&'a self) -> &'a F
fn mut5<'a>(&'a mut self) -> &'a mut F
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val3(self) -> D
fn ref3<'a>(&'a self) -> &'a D
fn mut3<'a>(&'a mut self) -> &'a mut D
fn val4(self) -> E
fn ref4<'a>(&'a self) -> &'a E
fn mut4<'a>(&'a mut self) -> &'a mut E
fn val5(self) -> F
fn ref5<'a>(&'a self) -> &'a F
fn mut5<'a>(&'a mut self) -> &'a mut F
fn val6(self) -> G
fn ref6<'a>(&'a self) -> &'a G
fn mut6<'a>(&'a mut self) -> &'a mut G
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val3(self) -> D
fn ref3<'a>(&'a self) -> &'a D
fn mut3<'a>(&'a mut self) -> &'a mut D
fn val4(self) -> E
fn ref4<'a>(&'a self) -> &'a E
fn mut4<'a>(&'a mut self) -> &'a mut E
fn val5(self) -> F
fn ref5<'a>(&'a self) -> &'a F
fn mut5<'a>(&'a mut self) -> &'a mut F
fn val6(self) -> G
fn ref6<'a>(&'a self) -> &'a G
fn mut6<'a>(&'a mut self) -> &'a mut G
fn val7(self) -> H
fn ref7<'a>(&'a self) -> &'a H
fn mut7<'a>(&'a mut self) -> &'a mut H
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val3(self) -> D
fn ref3<'a>(&'a self) -> &'a D
fn mut3<'a>(&'a mut self) -> &'a mut D
fn val4(self) -> E
fn ref4<'a>(&'a self) -> &'a E
fn mut4<'a>(&'a mut self) -> &'a mut E
fn val5(self) -> F
fn ref5<'a>(&'a self) -> &'a F
fn mut5<'a>(&'a mut self) -> &'a mut F
fn val6(self) -> G
fn ref6<'a>(&'a self) -> &'a G
fn mut6<'a>(&'a mut self) -> &'a mut G
fn val7(self) -> H
fn ref7<'a>(&'a self) -> &'a H
fn mut7<'a>(&'a mut self) -> &'a mut H
fn val8(self) -> I
fn ref8<'a>(&'a self) -> &'a I
fn mut8<'a>(&'a mut self) -> &'a mut I
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val3(self) -> D
fn ref3<'a>(&'a self) -> &'a D
fn mut3<'a>(&'a mut self) -> &'a mut D
fn val4(self) -> E
fn ref4<'a>(&'a self) -> &'a E
fn mut4<'a>(&'a mut self) -> &'a mut E
fn val5(self) -> F
fn ref5<'a>(&'a self) -> &'a F
fn mut5<'a>(&'a mut self) -> &'a mut F
fn val6(self) -> G
fn ref6<'a>(&'a self) -> &'a G
fn mut6<'a>(&'a mut self) -> &'a mut G
fn val7(self) -> H
fn ref7<'a>(&'a self) -> &'a H
fn mut7<'a>(&'a mut self) -> &'a mut H
fn val8(self) -> I
fn ref8<'a>(&'a self) -> &'a I
fn mut8<'a>(&'a mut self) -> &'a mut I
fn val9(self) -> J
fn ref9<'a>(&'a self) -> &'a J
fn mut9<'a>(&'a mut self) -> &'a mut J
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val3(self) -> D
fn ref3<'a>(&'a self) -> &'a D
fn mut3<'a>(&'a mut self) -> &'a mut D
fn val4(self) -> E
fn ref4<'a>(&'a self) -> &'a E
fn mut4<'a>(&'a mut self) -> &'a mut E
fn val5(self) -> F
fn ref5<'a>(&'a self) -> &'a F
fn mut5<'a>(&'a mut self) -> &'a mut F
fn val6(self) -> G
fn ref6<'a>(&'a self) -> &'a G
fn mut6<'a>(&'a mut self) -> &'a mut G
fn val7(self) -> H
fn ref7<'a>(&'a self) -> &'a H
fn mut7<'a>(&'a mut self) -> &'a mut H
fn val8(self) -> I
fn ref8<'a>(&'a self) -> &'a I
fn mut8<'a>(&'a mut self) -> &'a mut I
fn val9(self) -> J
fn ref9<'a>(&'a self) -> &'a J
fn mut9<'a>(&'a mut self) -> &'a mut J
fn val10(self) -> K
fn ref10<'a>(&'a self) -> &'a K
fn mut10<'a>(&'a mut self) -> &'a mut K
fn val0(self) -> A
fn ref0<'a>(&'a self) -> &'a A
fn mut0<'a>(&'a mut self) -> &'a mut A
fn val1(self) -> B
fn ref1<'a>(&'a self) -> &'a B
fn mut1<'a>(&'a mut self) -> &'a mut B
fn val2(self) -> C
fn ref2<'a>(&'a self) -> &'a C
fn mut2<'a>(&'a mut self) -> &'a mut C
fn val3(self) -> D
fn ref3<'a>(&'a self) -> &'a D
fn mut3<'a>(&'a mut self) -> &'a mut D
fn val4(self) -> E
fn ref4<'a>(&'a self) -> &'a E
fn mut4<'a>(&'a mut self) -> &'a mut E
fn val5(self) -> F
fn ref5<'a>(&'a self) -> &'a F
fn mut5<'a>(&'a mut self) -> &'a mut F
fn val6(self) -> G
fn ref6<'a>(&'a self) -> &'a G
fn mut6<'a>(&'a mut self) -> &'a mut G
fn val7(self) -> H
fn ref7<'a>(&'a self) -> &'a H
fn mut7<'a>(&'a mut self) -> &'a mut H
fn val8(self) -> I
fn ref8<'a>(&'a self) -> &'a I
fn mut8<'a>(&'a mut self) -> &'a mut I
fn val9(self) -> J
fn ref9<'a>(&'a self) -> &'a J
fn mut9<'a>(&'a mut self) -> &'a mut J
fn val10(self) -> K
fn ref10<'a>(&'a self) -> &'a K
fn mut10<'a>(&'a mut self) -> &'a mut K
fn val11(self) -> L
fn ref11<'a>(&'a self) -> &'a L
fn mut11<'a>(&'a mut self) -> &'a mut L
Keyboard shortcuts
- ?
- Show this help dialog
- S
- Focus the search field
- ⇤
- Move up in search results
- ⇥
- Move down in search results
- ⏎
- Go to active search result
Search tricks
Prefix searches with a type followed by a colon (e.g.
fn:) to restrict the search to a given type.
Accepted types are: fn, mod,
struct (or str), enum,
trait, typedef (or
tdef).