pub trait Contract {
fn new<S: Storage, A: Api, Q: Querier>(
&self,
initial_value: u64,
deps: &mut Extern<S, A, Q>,
env: Env
) -> StdResult<InitResponse> { ... }
fn add<S: Storage, A: Api, Q: Querier>(
&self,
value: u64,
deps: &mut Extern<S, A, Q>,
env: Env
) -> StdResult<HandleResponse> { ... }
fn sub<S: Storage, A: Api, Q: Querier>(
&self,
value: u64,
deps: &mut Extern<S, A, Q>,
env: Env
) -> StdResult<HandleResponse> { ... }
fn mul<S: Storage, A: Api, Q: Querier>(
&self,
value: u64,
deps: &mut Extern<S, A, Q>,
env: Env
) -> StdResult<HandleResponse> { ... }
fn div<S: Storage, A: Api, Q: Querier>(
&self,
value: u64,
deps: &mut Extern<S, A, Q>,
env: Env
) -> StdResult<HandleResponse> { ... }
fn state<S: Storage, A: Api, Q: Querier>(
&self,
deps: &Extern<S, A, Q>
) -> StdResult<StateResponse> { ... }
}