Skip to content

Commit

Permalink
add Technicalcommittee
Browse files Browse the repository at this point in the history
  • Loading branch information
abenso committed Nov 6, 2024
1 parent f46fb83 commit bdc173e
Show file tree
Hide file tree
Showing 7 changed files with 340 additions and 10 deletions.
186 changes: 186 additions & 0 deletions app/src/substrate/substrate_dispatch_V1.c
Original file line number Diff line number Diff line change
Expand Up @@ -403,6 +403,41 @@ __Z_INLINE parser_error_t _readMethod_staking_update_payee_V1(
return parser_ok;
}

__Z_INLINE parser_error_t _readMethod_technicalcommittee_set_members_V1(
parser_context_t* c, pd_technicalcommittee_set_members_V1_t* m)
{
CHECK_ERROR(_readVecAccountId(c, &m->new_members))
CHECK_ERROR(_readOptionAccountId(c, &m->prime))
CHECK_ERROR(_readMemberCount(c, &m->old_count))
return parser_ok;
}

__Z_INLINE parser_error_t _readMethod_technicalcommittee_execute_V1(
parser_context_t* c, pd_technicalcommittee_execute_V1_t* m)
{
CHECK_ERROR(_readProposal(c, &m->proposal))
CHECK_ERROR(_readCompactu32(c, &m->length_bound))
return parser_ok;
}

__Z_INLINE parser_error_t _readMethod_technicalcommittee_propose_V1(
parser_context_t* c, pd_technicalcommittee_propose_V1_t* m)
{
CHECK_ERROR(_readCompactu32(c, &m->threshold))
CHECK_ERROR(_readProposal(c, &m->proposal))
CHECK_ERROR(_readCompactu32(c, &m->length_bound))
return parser_ok;
}

__Z_INLINE parser_error_t _readMethod_technicalcommittee_vote_V1(
parser_context_t* c, pd_technicalcommittee_vote_V1_t* m)
{
CHECK_ERROR(_readHash(c, &m->proposal))
CHECK_ERROR(_readCompactu32(c, &m->index))
CHECK_ERROR(_readbool(c, &m->approve))
return parser_ok;
}

__Z_INLINE parser_error_t _readMethod_dataavailability_create_application_key_V1(
parser_context_t* c, pd_dataavailability_create_application_key_V1_t* m)
{
Expand Down Expand Up @@ -896,6 +931,18 @@ parser_error_t _readMethod_V1(
case 2587: /* module 10 call 27 */
CHECK_ERROR(_readMethod_staking_update_payee_V1(c, &method->basic.staking_update_payee_V1))
break;
case 3584: /* module 14 call 0 */
CHECK_ERROR(_readMethod_technicalcommittee_set_members_V1(c, &method->basic.technicalcommittee_set_members_V1))
break;
case 3585: /* module 14 call 1 */
CHECK_ERROR(_readMethod_technicalcommittee_execute_V1(c, &method->basic.technicalcommittee_execute_V1))
break;
case 3586: /* module 14 call 2 */
CHECK_ERROR(_readMethod_technicalcommittee_propose_V1(c, &method->basic.technicalcommittee_propose_V1))
break;
case 3587: /* module 14 call 3 */
CHECK_ERROR(_readMethod_technicalcommittee_vote_V1(c, &method->basic.technicalcommittee_vote_V1))
break;
case 7424: /* module 29 call 0 */
CHECK_ERROR(_readMethod_dataavailability_create_application_key_V1(c, &method->basic.dataavailability_create_application_key_V1))
break;
Expand Down Expand Up @@ -1042,6 +1089,8 @@ const char* _getMethod_ModuleName_V1(uint8_t moduleIdx)
#endif
case 0:
return STR_MO_SYSTEM;
case 14:
return STR_MO_TECHNICALCOMMITTEE;
case 29:
return STR_MO_DATAAVAILABILITY;
case 34:
Expand Down Expand Up @@ -1180,6 +1229,14 @@ const char* _getMethod_Name_V1_ParserFull(uint16_t callPrivIdx)
return STR_ME_PAYOUT_STAKERS_BY_PAGE;
case 2587: /* module 10 call 27 */
return STR_ME_UPDATE_PAYEE;
case 3584: /* module 14 call 0 */
return STR_ME_SET_MEMBERS;
case 3585: /* module 14 call 1 */
return STR_ME_EXECUTE;
case 3586: /* module 14 call 2 */
return STR_ME_PROPOSE;
case 3587: /* module 14 call 3 */
return STR_ME_VOTE;
case 7424: /* module 29 call 0 */
return STR_ME_CREATE_APPLICATION_KEY;
case 7425: /* module 29 call 1 */
Expand Down Expand Up @@ -1374,6 +1431,14 @@ uint8_t _getMethod_NumItems_V1(uint8_t moduleIdx, uint8_t callIdx)
return 3;
case 2587: /* module 10 call 27 */
return 1;
case 3584: /* module 14 call 0 */
return 3;
case 3585: /* module 14 call 1 */
return 2;
case 3586: /* module 14 call 2 */
return 3;
case 3587: /* module 14 call 3 */
return 3;
case 7424: /* module 29 call 0 */
return 1;
case 7425: /* module 29 call 1 */
Expand Down Expand Up @@ -1850,6 +1915,48 @@ const char* _getMethod_ItemName_V1(uint8_t moduleIdx, uint8_t callIdx, uint8_t i
default:
return NULL;
}
case 3584: /* module 14 call 0 */
switch (itemIdx) {
case 0:
return STR_IT_new_members;
case 1:
return STR_IT_prime;
case 2:
return STR_IT_old_count;
default:
return NULL;
}
case 3585: /* module 14 call 1 */
switch (itemIdx) {
case 0:
return STR_IT_proposal;
case 1:
return STR_IT_length_bound;
default:
return NULL;
}
case 3586: /* module 14 call 2 */
switch (itemIdx) {
case 0:
return STR_IT_threshold;
case 1:
return STR_IT_proposal;
case 2:
return STR_IT_length_bound;
default:
return NULL;
}
case 3587: /* module 14 call 3 */
switch (itemIdx) {
case 0:
return STR_IT_proposal;
case 1:
return STR_IT_index;
case 2:
return STR_IT_approve;
default:
return NULL;
}
case 7424: /* module 29 call 0 */
switch (itemIdx) {
case 0:
Expand Down Expand Up @@ -2823,6 +2930,81 @@ parser_error_t _getMethod_ItemValue_V1(
default:
return parser_no_data;
}
case 3584: /* module 14 call 0 */
switch (itemIdx) {
case 0: /* technicalcommittee_set_members_V1 - new_members */;
return _toStringVecAccountId(
&m->basic.technicalcommittee_set_members_V1.new_members,
outValue, outValueLen,
pageIdx, pageCount);
case 1: /* technicalcommittee_set_members_V1 - prime */;
return _toStringOptionAccountId(
&m->basic.technicalcommittee_set_members_V1.prime,
outValue, outValueLen,
pageIdx, pageCount);
case 2: /* technicalcommittee_set_members_V1 - old_count */;
return _toStringMemberCount(
&m->basic.technicalcommittee_set_members_V1.old_count,
outValue, outValueLen,
pageIdx, pageCount);
default:
return parser_no_data;
}
case 3585: /* module 14 call 1 */
switch (itemIdx) {
case 0: /* technicalcommittee_execute_V1 - proposal */;
return _toStringProposal(
&m->basic.technicalcommittee_execute_V1.proposal,
outValue, outValueLen,
pageIdx, pageCount);
case 1: /* technicalcommittee_execute_V1 - length_bound */;
return _toStringCompactu32(
&m->basic.technicalcommittee_execute_V1.length_bound,
outValue, outValueLen,
pageIdx, pageCount);
default:
return parser_no_data;
}
case 3586: /* module 14 call 2 */
switch (itemIdx) {
case 0: /* technicalcommittee_propose_V1 - threshold */;
return _toStringCompactu32(
&m->basic.technicalcommittee_propose_V1.threshold,
outValue, outValueLen,
pageIdx, pageCount);
case 1: /* technicalcommittee_propose_V1 - proposal */;
return _toStringProposal(
&m->basic.technicalcommittee_propose_V1.proposal,
outValue, outValueLen,
pageIdx, pageCount);
case 2: /* technicalcommittee_propose_V1 - length_bound */;
return _toStringCompactu32(
&m->basic.technicalcommittee_propose_V1.length_bound,
outValue, outValueLen,
pageIdx, pageCount);
default:
return parser_no_data;
}
case 3587: /* module 14 call 3 */
switch (itemIdx) {
case 0: /* technicalcommittee_vote_V1 - proposal */;
return _toStringHash(
&m->basic.technicalcommittee_vote_V1.proposal,
outValue, outValueLen,
pageIdx, pageCount);
case 1: /* technicalcommittee_vote_V1 - index */;
return _toStringCompactu32(
&m->basic.technicalcommittee_vote_V1.index,
outValue, outValueLen,
pageIdx, pageCount);
case 2: /* technicalcommittee_vote_V1 - approve */;
return _toStringbool(
&m->basic.technicalcommittee_vote_V1.approve,
outValue, outValueLen,
pageIdx, pageCount);
default:
return parser_no_data;
}
case 7424: /* module 29 call 0 */
switch (itemIdx) {
case 0: /* dataavailability_create_application_key_V1 - key */;
Expand Down Expand Up @@ -3550,6 +3732,10 @@ bool _getMethod_IsNestingSupported_V1(uint8_t moduleIdx, uint8_t callIdx)
case 2585: // Staking:Set min commission
case 2586: // Staking:Payout stakers by page
case 2587: // Staking:Update payee
case 3584: // TechnicalCommittee:Set members
case 3585: // TechnicalCommittee:Execute
case 3586: // TechnicalCommittee:Propose
case 3587: // TechnicalCommittee:Vote
case 7424: // DataAvailability:Create application key
case 7425: // DataAvailability:Submit data
case 7426: // DataAvailability:Submit block length proposal
Expand Down
24 changes: 24 additions & 0 deletions app/src/substrate/substrate_functions.h
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ parser_error_t _readIdentityInfo(parser_context_t* c, pd_IdentityInfo_t* v);
parser_error_t _readOptionCommissionClaimPermissionAccountId(parser_context_t* c, pd_OptionCommissionClaimPermissionAccountId_t* v);
parser_error_t _readOptionTimepoint(parser_context_t* c, pd_OptionTimepoint_t* v);
parser_error_t _readOptionTuplePerbillAccountId(parser_context_t* c, pd_OptionTuplePerbillAccountId_t* v);
parser_error_t _readProposal(parser_context_t* c, pd_Proposal_t* v);
parser_error_t _readRewardDestination(parser_context_t* c, pd_RewardDestination_t* v);
parser_error_t _readValidProof(parser_context_t* c, pd_ValidProof_t* v);
parser_error_t _readValidatorPrefs(parser_context_t* c, pd_ValidatorPrefs_t* v);
Expand All @@ -86,6 +87,8 @@ parser_error_t _readConfigOpu32(parser_context_t* c, pd_ConfigOpu32_t* v);
parser_error_t _readEraIndex(parser_context_t* c, pd_EraIndex_t* v);
parser_error_t _readHash(parser_context_t* c, pd_Hash_t* v);
parser_error_t _readKeys(parser_context_t* c, pd_Keys_t* v);
parser_error_t _readMemberCount(parser_context_t* c, pd_MemberCount_t* v);
parser_error_t _readOptionAccountId(parser_context_t* c, pd_OptionAccountId_t* v);
parser_error_t _readOptionProxyType(parser_context_t* c, pd_OptionProxyType_t* v);
parser_error_t _readPage(parser_context_t* c, pd_Page_t* v);
parser_error_t _readPoolId(parser_context_t* c, pd_PoolId_t* v);
Expand Down Expand Up @@ -418,6 +421,13 @@ parser_error_t _toStringOptionTuplePerbillAccountId(
uint8_t pageIdx,
uint8_t* pageCount);

parser_error_t _toStringProposal(
const pd_Proposal_t* v,
char* outValue,
uint16_t outValueLen,
uint8_t pageIdx,
uint8_t* pageCount);

parser_error_t _toStringRewardDestination(
const pd_RewardDestination_t* v,
char* outValue,
Expand Down Expand Up @@ -516,6 +526,20 @@ parser_error_t _toStringKeys(
uint8_t pageIdx,
uint8_t* pageCount);

parser_error_t _toStringMemberCount(
const pd_MemberCount_t* v,
char* outValue,
uint16_t outValueLen,
uint8_t pageIdx,
uint8_t* pageCount);

parser_error_t _toStringOptionAccountId(
const pd_OptionAccountId_t* v,
char* outValue,
uint16_t outValueLen,
uint8_t pageIdx,
uint8_t* pageCount);

parser_error_t _toStringOptionProxyType(
const pd_OptionProxyType_t* v,
char* outValue,
Expand Down
32 changes: 32 additions & 0 deletions app/src/substrate/substrate_methods_V1.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ extern "C" {
#define PD_CALL_BALANCES_V1 6
#define PD_CALL_STAKING_V1 10
#define PD_CALL_SESSION_V1 11
#define PD_CALL_TECHNICALCOMMITTEE_V1 14
#define PD_CALL_DATAAVAILABILITY_V1 29
#define PD_CALL_MULTISIG_V1 34
#define PD_CALL_NOMINATIONPOOLS_V1 36
Expand Down Expand Up @@ -197,6 +198,33 @@ typedef struct {
pd_AccountId_t controller;
} pd_staking_update_payee_V1_t;

#define PD_CALL_TECHNICALCOMMITTEE_SET_MEMBERS_V1 0
typedef struct {
pd_VecAccountId_t new_members;
pd_OptionAccountId_t prime;
pd_MemberCount_t old_count;
} pd_technicalcommittee_set_members_V1_t;

#define PD_CALL_TECHNICALCOMMITTEE_EXECUTE_V1 1
typedef struct {
pd_Proposal_t proposal;
pd_Compactu32_t length_bound;
} pd_technicalcommittee_execute_V1_t;

#define PD_CALL_TECHNICALCOMMITTEE_PROPOSE_V1 2
typedef struct {
pd_Compactu32_t threshold;
pd_Proposal_t proposal;
pd_Compactu32_t length_bound;
} pd_technicalcommittee_propose_V1_t;

#define PD_CALL_TECHNICALCOMMITTEE_VOTE_V1 3
typedef struct {
pd_Hash_t proposal;
pd_Compactu32_t index;
pd_bool_t approve;
} pd_technicalcommittee_vote_V1_t;

#define PD_CALL_DATAAVAILABILITY_CREATE_APPLICATION_KEY_V1 0
typedef struct {
pd_AppKey_t key;
Expand Down Expand Up @@ -324,6 +352,10 @@ typedef union {
pd_staking_set_min_commission_V1_t staking_set_min_commission_V1;
pd_staking_payout_stakers_by_page_V1_t staking_payout_stakers_by_page_V1;
pd_staking_update_payee_V1_t staking_update_payee_V1;
pd_technicalcommittee_set_members_V1_t technicalcommittee_set_members_V1;
pd_technicalcommittee_execute_V1_t technicalcommittee_execute_V1;
pd_technicalcommittee_propose_V1_t technicalcommittee_propose_V1;
pd_technicalcommittee_vote_V1_t technicalcommittee_vote_V1;
pd_dataavailability_create_application_key_V1_t dataavailability_create_application_key_V1;
pd_dataavailability_submit_data_V1_t dataavailability_submit_data_V1;
pd_dataavailability_submit_block_length_proposal_V1_t dataavailability_submit_block_length_proposal_V1;
Expand Down
16 changes: 14 additions & 2 deletions app/src/substrate/substrate_strings.h
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ static const char* STR_MO_UTILITY = "Utility";
static const char* STR_MO_BALANCES = "Balances";
static const char* STR_MO_STAKING = "Staking";
static const char* STR_MO_SESSION = "Session";
static const char* STR_MO_TECHNICALCOMMITTEE = "Technicalcommittee";
static const char* STR_MO_DATAAVAILABILITY = "Dataavailability";
static const char* STR_MO_MULTISIG = "Multisig";
static const char* STR_MO_NOMINATIONPOOLS = "Nominationpools";
Expand Down Expand Up @@ -83,6 +84,10 @@ static const char* STR_ME_PAYOUT_STAKERS_BY_PAGE = "Payout stakers by page";
static const char* STR_ME_UPDATE_PAYEE = "Update payee";
static const char* STR_ME_SET_KEYS = "Set keys";
static const char* STR_ME_PURGE_KEYS = "Purge keys";
static const char* STR_ME_SET_MEMBERS = "Set members";
static const char* STR_ME_EXECUTE = "Execute";
static const char* STR_ME_PROPOSE = "Propose";
static const char* STR_ME_VOTE = "Vote";
static const char* STR_ME_CREATE_APPLICATION_KEY = "Create application key";
static const char* STR_ME_SUBMIT_DATA = "Submit data";
static const char* STR_ME_SUBMIT_BLOCK_LENGTH_PROPOSAL = "Submit block length proposal";
Expand Down Expand Up @@ -112,7 +117,6 @@ static const char* STR_ME_ADJUST_POOL_DEPOSIT = "Adjust pool deposit";
static const char* STR_ME_SET_COMMISSION_CLAIM_PERMISSION = "Set commission claim permission";
static const char* STR_ME_SET_IDENTITY = "Set identity";
static const char* STR_ME_CLEAR_IDENTITY = "Clear identity";
static const char* STR_ME_EXECUTE = "Execute";
static const char* STR_ME_SEND_MESSAGE = "Send message";
static const char* STR_ME_PROXY = "Proxy";
static const char* STR_ME_ADD_PROXY = "Add proxy";
Expand Down Expand Up @@ -162,6 +166,15 @@ static const char* STR_IT_page = "Page";
static const char* STR_IT_controller = "Controller";
static const char* STR_IT_controllers = "Controllers";
static const char* STR_IT_proof = "Proof";
static const char* STR_IT_new_members = "New members";
static const char* STR_IT_prime = "Prime";
static const char* STR_IT_old_count = "Old count";
static const char* STR_IT_proposal = "Proposal";
static const char* STR_IT_length_bound = "Length bound";
static const char* STR_IT_threshold = "Threshold";
static const char* STR_IT_approve = "Approve";
static const char* STR_IT_proposal_hash = "Proposal hash";
static const char* STR_IT_proposal_weight_bound = "Proposal weight bound";
static const char* STR_IT_key = "Key";
static const char* STR_IT_data = "Data";
static const char* STR_IT_rows = "Rows";
Expand All @@ -170,7 +183,6 @@ static const char* STR_IT_old_key = "Old key";
static const char* STR_IT_new_key = "New key";
static const char* STR_IT_modifier = "Modifier";
static const char* STR_IT_other_signatories = "Other signatories";
static const char* STR_IT_threshold = "Threshold";
static const char* STR_IT_maybe_timepoint = "Maybe timepoint";
static const char* STR_IT_max_weight = "Max weight";
static const char* STR_IT_call_hash = "Call hash";
Expand Down
Loading

0 comments on commit bdc173e

Please sign in to comment.