Trait clarity_repl::clarity::costs::CostTracker
source · [−]pub trait CostTracker {
fn compute_cost(
&mut self,
cost_function: ClarityCostFunction,
input: &[u64]
) -> Result<ExecutionCost, CostErrors>;
fn add_cost(&mut self, cost: ExecutionCost) -> Result<(), CostErrors>;
fn add_memory(&mut self, memory: u64) -> Result<(), CostErrors>;
fn drop_memory(&mut self, memory: u64);
fn reset_memory(&mut self);
fn short_circuit_contract_call(
&mut self,
contract: &QualifiedContractIdentifier,
function: &ClarityName,
input: &[u64]
) -> Result<bool, CostErrors>;
}
Required Methods
sourcefn compute_cost(
fn compute_cost(
&mut self,
cost_function: ClarityCostFunction,
input: &[u64]
) -> Result<ExecutionCost, CostErrors>
source
fn add_cost(&mut self, cost: ExecutionCost) -> Result<(), CostErrors>
source
fn add_memory(&mut self, memory: u64) -> Result<(), CostErrors>
source
fn drop_memory(&mut self, memory: u64)
source
fn reset_memory(&mut self)
sourcefn short_circuit_contract_call(
&mut self,
contract: &QualifiedContractIdentifier,
function: &ClarityName,
input: &[u64]
) -> Result<bool, CostErrors>
fn short_circuit_contract_call(
&mut self,
contract: &QualifiedContractIdentifier,
function: &ClarityName,
input: &[u64]
) -> Result<bool, CostErrors>
Check if the given contract-call should be short-circuited. If so: this charges the cost to the CostTracker, and return true If not: return false