Skip to content
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

Tracker: v2 tablegen todos #438

Open
29 of 47 tasks
dk1a opened this issue Feb 25, 2023 · 3 comments
Open
29 of 47 tasks

Tracker: v2 tablegen todos #438

dk1a opened this issue Feb 25, 2023 · 3 comments
Labels
enhancement New feature or request

Comments

@dk1a
Copy link
Contributor

dk1a commented Feb 25, 2023

General

World

  • Basic worldgen: generate system interfaces and IWorld
  • Add an aggregator command for all the generators

Prototypes

Arrays

Depends on StoreCore

Plugins

  • tablegen hooks? (to add e.g. getWithValue, keysInTable as methods in the main table lib)

Foreign Keys

This would likely be a plugin

  • on delete
  • on update
  • join (?)

Misc

Minor config options

@alvrs
Copy link
Member

alvrs commented Jul 10, 2023

Can you elaborate a bit on these points:

  • User-defined type wrapper
  • Types reuse

@dk1a
Copy link
Contributor Author

dk1a commented Jul 10, 2023

User-defined type wrapper

(currently we have abi types and enums)
Allow solidity's user-defined value types, which are abi types but named differently, implementation would be very similar to enums. Then they can be reused across tables (you could have type Entity is bytes32 for ECS for example)

Types reuse

(currently we generate Types.sol with enums)

  • Allow generating 1 struct for several tables with identical data, so the data can be seamlessly passed between tables
  • Allow types to be imported from a user-defined (not autogenerated) file
  • Allow structs to be imported from a manual user file

@alvrs
Copy link
Member

alvrs commented Jul 10, 2023

Seems like Allow types+structs to be imported from a user-defined (not autogenerated) file would solve both user-defined type wrappers and the two latter points of types reuse. Moved this to its own issue: #1139

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
Status: No status
Development

No branches or pull requests

2 participants