CodeChain-io / CodeChain-io/codechain

Tracker method calling part needs to be refactored

未关闭
#1,551 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
refactoring
主要语言
Rust
星标
256
派生
50
PR 合并指标
30 天内没有已合并 PR

描述

Now the `tracker()` method can be called through the structs [`ShardTransaction`](https://github.com/CodeChain-io/codechain/blob/a9686064fd36c3325f5c985047bf4529cce0d3b0/types/src/transaction/shard.rs#L101), [`Action`](https://github.com/CodeChain-io/codechain/blob/a9686064fd36c3325f5c985047bf4529cce0d3b0/types/src/transaction/action.rs#L183) and [`Transaction`](https://github.com/CodeChain-io/codechain/blob/a9686064fd36c3325f5c985047bf4529cce0d3b0/types/src/transaction/transaction.rs#L54).

Some caller function code is now using useless conversion from `Action` to `ShardTransaction` though the conversion was already implemented inside of the `tracker()` of `Action`.
As well as the above, after the [pr#1548](https://github.com/CodeChain-io/codechain/pull/1548), the implementations will become inconsistent. Previously the tracker was needed only for asset transactions, but now the `WrapCCC` needs tracker though it's not an asset transaction.

From this semantic inconsistency, there is an implementation gap between `tracker()` of `Action` and the others. Therefore, the refactoring needs for `tracker()` and related caller functions not to be confused in the future.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。