-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Value and object representation overhaul #682
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👏🏻 I really like the design with the small types in the RawVal and how that doesn’t leak into the ScVal anymore.
graydon
force-pushed
the
midwinter-val-reform
branch
2 times, most recently
from
February 14, 2023 07:28
49dcea6
to
f76154f
Compare
jayz22
reviewed
Feb 14, 2023
graydon
force-pushed
the
midwinter-val-reform
branch
8 times, most recently
from
February 23, 2023 04:43
6d356e4
to
9bf43ef
Compare
graydon
force-pushed
the
midwinter-val-reform
branch
11 times, most recently
from
March 1, 2023 06:45
d532d6b
to
3ce1549
Compare
graydon
force-pushed
the
midwinter-val-reform
branch
from
March 2, 2023 05:52
3ce1549
to
7637f01
Compare
graydon
changed the title
Preliminary pass of value-and-object reform.
Value and object representation overhaul
Mar 2, 2023
7 tasks
* Small changes and fixes * Small restructure on macro * Rename some conversion funcs for better clarity * Minor * Fix bug in small signed number conversion
6 tasks
This was referenced Mar 8, 2023
* Small changes and fixes * Small restructure on macro * Rename some conversion funcs for better clarity * Minor * Fix bug in small signed number conversion * Add `repr(transparent)` to RawVal wrapping types * Add U/I256 conversion
sisuresh
approved these changes
Mar 8, 2023
graydon
added a commit
to stellar/rs-soroban-sdk
that referenced
this pull request
Mar 9, 2023
This is the SDK adaptation of stellar/rs-soroban-env#682, which we're going to try writing collaboratively --------- Co-authored-by: Dmytro Kozhevin <[email protected]> Co-authored-by: Jay Geng <[email protected]>
This was referenced Mar 9, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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 is a bit more than a sketch of a subset of things we've discussed doing in #679:
SmallSymbol
to 9 chars; but we have tag-room for a big symbol type that's an object!SymbolObject
) and a union between the two (Symbol
). Unfortuantely now all the code that used to thinkSymbol
didn't need anEnv
to work with .. needs anEnv
.ethnum
, a crate supporting {i,u}256 numbers.ScObject
but make it a marker typeScValObject
that marks the subset ofScVal
s that need to be objects (this is a dynamic judgment based on the size of the values in some cases).MapObject
now, not justObject
)At this point env-common, guest and host are compiling. Tests are about passing and the corresponding SDK change is done too: stellar/rs-soroban-sdk#879