[−][src]Struct drone_core::inventory::Inventory
The inventory wrapper for T
. Parameter C
encodes the number of emitted
tokens.
See the module-level documentation for details.
Methods
impl<T: Item> Inventory<T, Count0>
[src]
pub fn new(item: T) -> Self
[src]
Creates a new Inventory
in the inactive state with zero tokens
emitted.
item
should contain some form of token.
pub fn free(inventory: Self) -> T
[src]
Drops inventory
and returns the stored item.
pub fn guard(inventory: &mut Self) -> Guard<T>
[src]
Creates an RAII scoped guard.
The item should be already in its active state. The returned guard will
call Item::teardown
on drop.
pub fn teardown(inventory: &mut Self)
[src]
Calls Item::teardown
for the stored item.
impl<T: Item, C> Inventory<T, C>
[src]
pub fn inventory_token(&self) -> &Token<T>
[src]
Returns a reference to Token
<T>
. While the reference exists, the
item is always in its active state.
impl<T: Item> Inventory<T, Count0>
[src]
pub fn share1(self) -> (Inventory<T, Count1>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
impl<T: Item> Inventory<T, Count1>
[src]
pub fn share1(self) -> (Inventory<T, Count2>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share2(self) -> (Inventory<T, Count3>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share3(self) -> (Inventory<T, Count4>, Token<T>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share4(
self
) -> (Inventory<T, Count5>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count5>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share5(
self
) -> (Inventory<T, Count6>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count6>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share6(
self
) -> (Inventory<T, Count7>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count7>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share7(
self
) -> (Inventory<T, Count8>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count8>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share8(
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share9(
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share10(
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count0>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count2>
[src]
pub fn share1(self) -> (Inventory<T, Count3>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share2(self) -> (Inventory<T, Count4>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share3(self) -> (Inventory<T, Count5>, Token<T>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share4(
self
) -> (Inventory<T, Count6>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count6>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share5(
self
) -> (Inventory<T, Count7>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count7>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share6(
self
) -> (Inventory<T, Count8>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count8>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share7(
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share8(
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share9(
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count1>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count3>
[src]
pub fn share1(self) -> (Inventory<T, Count4>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share2(self) -> (Inventory<T, Count5>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share3(self) -> (Inventory<T, Count6>, Token<T>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share4(
self
) -> (Inventory<T, Count7>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count7>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share5(
self
) -> (Inventory<T, Count8>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count8>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share6(
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share7(
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share8(
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count2>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge2(self, a: Token<T>, b: Token<T>) -> Inventory<T, Count1>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count4>
[src]
pub fn share1(self) -> (Inventory<T, Count5>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share2(self) -> (Inventory<T, Count6>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share3(self) -> (Inventory<T, Count7>, Token<T>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share4(
self
) -> (Inventory<T, Count8>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count8>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share5(
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share6(
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share7(
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count3>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge2(self, a: Token<T>, b: Token<T>) -> Inventory<T, Count2>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge3(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count1>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count1>
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count5>
[src]
pub fn share1(self) -> (Inventory<T, Count6>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share2(self) -> (Inventory<T, Count7>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share3(self) -> (Inventory<T, Count8>, Token<T>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share4(
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share5(
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share6(
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count4>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge2(self, a: Token<T>, b: Token<T>) -> Inventory<T, Count3>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge3(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count2>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count2>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge4(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count1>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count1>
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count6>
[src]
pub fn share1(self) -> (Inventory<T, Count7>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share2(self) -> (Inventory<T, Count8>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share3(self) -> (Inventory<T, Count9>, Token<T>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share4(
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn share5(
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count5>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge2(self, a: Token<T>, b: Token<T>) -> Inventory<T, Count4>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge3(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count3>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count3>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge4(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count2>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count2>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge5(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count1>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count1>
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count7>
[src]
pub fn share1(self) -> (Inventory<T, Count8>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share2(self) -> (Inventory<T, Count9>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share3(self) -> (Inventory<T, Count10>, Token<T>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share4(
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>)
[src]
self
) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>, Token<T>)
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count6>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge2(self, a: Token<T>, b: Token<T>) -> Inventory<T, Count5>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge3(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count4>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count4>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge4(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count3>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count3>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge5(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count2>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count2>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge6(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count1>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count1>
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count8>
[src]
pub fn share1(self) -> (Inventory<T, Count9>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share2(self) -> (Inventory<T, Count10>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share3(self) -> (Inventory<T, Count11>, Token<T>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count7>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge2(self, a: Token<T>, b: Token<T>) -> Inventory<T, Count6>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge3(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count5>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count5>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge4(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count4>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count4>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge5(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count3>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count3>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge6(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count2>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count2>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge7(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>
) -> Inventory<T, Count1>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>
) -> Inventory<T, Count1>
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count9>
[src]
pub fn share1(self) -> (Inventory<T, Count10>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn share2(self) -> (Inventory<T, Count11>, Token<T>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count8>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge2(self, a: Token<T>, b: Token<T>) -> Inventory<T, Count7>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge3(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count6>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count6>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge4(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count5>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count5>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge5(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count4>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count4>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge6(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count3>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count3>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge7(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>
) -> Inventory<T, Count2>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>
) -> Inventory<T, Count2>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge8(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>
) -> Inventory<T, Count1>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>
) -> Inventory<T, Count1>
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count10>
[src]
pub fn share1(self) -> (Inventory<T, Count11>, Token<T>)
[src]
Returns a token and a new inventory object with increased counter in its type.
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count9>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge2(self, a: Token<T>, b: Token<T>) -> Inventory<T, Count8>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge3(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count7>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count7>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge4(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count6>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count6>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge5(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count5>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count5>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge6(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count4>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count4>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge7(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>
) -> Inventory<T, Count3>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>
) -> Inventory<T, Count3>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge8(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>
) -> Inventory<T, Count2>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>
) -> Inventory<T, Count2>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge9(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>,
i: Token<T>
) -> Inventory<T, Count1>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>,
i: Token<T>
) -> Inventory<T, Count1>
Consumes a token and returns a new inventory object with decreased counter in its type.
impl<T: Item> Inventory<T, Count11>
[src]
pub fn merge1(self, a: Token<T>) -> Inventory<T, Count10>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge2(self, a: Token<T>, b: Token<T>) -> Inventory<T, Count9>
[src]
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge3(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count8>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>
) -> Inventory<T, Count8>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge4(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count7>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>
) -> Inventory<T, Count7>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge5(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count6>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>
) -> Inventory<T, Count6>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge6(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count5>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>
) -> Inventory<T, Count5>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge7(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>
) -> Inventory<T, Count4>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>
) -> Inventory<T, Count4>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge8(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>
) -> Inventory<T, Count3>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>
) -> Inventory<T, Count3>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge9(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>,
i: Token<T>
) -> Inventory<T, Count2>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>,
i: Token<T>
) -> Inventory<T, Count2>
Consumes a token and returns a new inventory object with decreased counter in its type.
pub fn merge10(
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>,
i: Token<T>,
j: Token<T>
) -> Inventory<T, Count1>
[src]
self,
a: Token<T>,
b: Token<T>,
c: Token<T>,
d: Token<T>,
e: Token<T>,
f: Token<T>,
g: Token<T>,
h: Token<T>,
i: Token<T>,
j: Token<T>
) -> Inventory<T, Count1>
Consumes a token and returns a new inventory object with decreased counter in its type.
Trait Implementations
Auto Trait Implementations
impl<T, C> Unpin for Inventory<T, C> where
C: Unpin,
T: Unpin,
C: Unpin,
T: Unpin,
impl<T, C> Send for Inventory<T, C> where
C: Send,
T: Send,
C: Send,
T: Send,
impl<T, C> Sync for Inventory<T, C> where
C: Sync,
T: Sync,
C: Sync,
T: Sync,
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,