Skip to content

Implement RecursiveTypeDecoder for nested data - #463

Merged
codeZe-us merged 2 commits into
Toolbox-Lab:mainfrom
Marvelg256:feat/462-recursive-type-decoder
Oct 3, 2026
Merged

codeZe-us merged 2 commits into
Toolbox-Lab:mainfrom
Marvelg256:feat/462-recursive-type-decoder

Conversation

@Marvelg256

@Marvelg256 Marvelg256 commented Sep 29, 2026 •

Copy link
Copy Markdown
Contributor

Description

Implement RecursiveTypeDecoder for nested data.

How It Was Done

  • Added RecursiveTypeDecoder and TypeRef in crates/core/src/decode/recursive_decoder.rs.
  • Updated scval_to_json to accept optional type metadata.
  • Propagated contract type context through nested structs, enums, tuples, unions, options, results, vectors, and maps.
  • Routed ReturnValueDecoder through the recursive dispatcher.
  • Added coverage for nested struct → struct → enum/tuple decoding.

Issues Encountered (If Any)

The local Windows environment could not complete Cargo verification because rust-lld.exe access was denied. Formatting and git diff checks passed.

Related Issue

Closes #462

How It Was Tested

  • rustfmt --check passed.
  • git diff --check passed.
  • Added a focused recursive nested-UDT unit test.
  • Full Cargo check was attempted but blocked by the local linker permission error.

@drips-wave

drips-wave Bot commented Sep 29, 2026

Copy link
Copy Markdown

@Marvelg256 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@coderabbitai

coderabbitai Bot commented Sep 29, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 4520e981-0593-4301-b9e7-124f6b6885cf

  • Autopilot · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Autopilot is currently an internal CodeRabbit preview.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codeZe-us

Copy link
Copy Markdown
Contributor

@Marvelg256 correct your PR description

@Marvelg256

Copy link
Copy Markdown
Contributor Author

@Marvelg256 correct your PR description

corrected

@codeZe-us
codeZe-us self-requested a review October 3, 2026 01:06
@codeZe-us
codeZe-us merged commit 3b8d64b into Toolbox-Lab:main Oct 3, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement RecursiveTypeDecoder for nested data

2 participants