pub fn contract_obj<A>(api: A) -> ContractObj<A>where
for<'b> A::
BigUint:
BigUintApi +
AddAssign<&'b A::
BigUint> +
SubAssign<&'b A::
BigUint> +
MulAssign<&'b A::
BigUint> +
DivAssign<&'b A::
BigUint> +
RemAssign<&'b A::
BigUint> +
BitAndAssign<&'b A::
BigUint> +
BitOrAssign<&'b A::
BigUint> +
BitXorAssign<&'b A::
BigUint>,
for<'a, 'b> &'a A::
BigUint:
Add<&'b A::
BigUint, Output = A::
BigUint> +
Sub<&'b A::
BigUint, Output = A::
BigUint> +
Mul<&'b A::
BigUint, Output = A::
BigUint> +
Div<&'b A::
BigUint, Output = A::
BigUint> +
Rem<&'b A::
BigUint, Output = A::
BigUint> +
BitAnd<&'b A::
BigUint, Output = A::
BigUint> +
BitOr<&'b A::
BigUint, Output = A::
BigUint> +
BitXor<&'b A::
BigUint, Output = A::
BigUint> +
Shr<
usize, Output = A::
BigUint> +
Shl<
usize, Output = A::
BigUint>,
for<'b> A::
BigInt:
BigIntApi +
AddAssign<&'b A::
BigInt> +
SubAssign<&'b A::
BigInt> +
MulAssign<&'b A::
BigInt> +
DivAssign<&'b A::
BigInt> +
RemAssign<&'b A::
BigInt>,
for<'a, 'b> &'a A::
BigInt:
Add<&'b A::
BigInt, Output = A::
BigInt> +
Sub<&'b A::
BigInt, Output = A::
BigInt> +
Mul<&'b A::
BigInt, Output = A::
BigInt> +
Div<&'b A::
BigInt, Output = A::
BigInt> +
Rem<&'b A::
BigInt, Output = A::
BigInt>,
A:
ContractBase +
ErrorApi +
EndpointArgumentApi +
EndpointFinishApi +
Clone + 'static,