eth,rpc: make RPCBlock,RPCTransaction,RPCReceipt as public struct #27265
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR moves the RPC Response-related structures, which were originally in the internal/ethapi package, to the rpc package.
This allows third-party clients to access more raw data based on these structures. For example,
ethclient.BlockByNumber
can only return thetypes.Block
structure:go-ethereum/ethclient/ethclient.go
Lines 84 to 86 in 9e8575c
But on RPC server's side, we do return more data (such as
totalDifficulty
) inrpcMarshalBlock
.go-ethereum/internal/ethapi/api.go
Lines 1234 to 1243 in 9e8575c