조건부 가중치 사용
목표
Weight 구조체 작성
use frame_support:: { dispatch::{DispatchClass, Pays}, }, weights::Weight,pub struct Conditional(u32); impl WeighData<(&bool, &u32)> for Conditional { fn weigh_data(&self, (switch, val): (&bool, &u32)) -> Weight { // 첫 번째 매개변수가 true인 경우, 두 번째 매개변수에 대한 가중치는 선형적으로 증가합니다. if *switch { val.saturating_mul(self.0) } // 그렇지 않으면 가중치는 상수입니다. else { self.0 } } }
디스패치 호출 분류
가중치 구조체를 외부에 사용
예제
관련 자료
Last updated