dart-lang / dart-lang/source_gen
Add "Reviver" functionality.
- Dominant language
- Dart
- Stars
- 494
- Forks
- 115
- Avg merge
- 12h 13m
- Merged PRs (30d)
- 3
Description
It would be nicer as a builder library to allow for users to extend our classes and allow them to leverage our builder while not adding the user's custom logic into our builder. This means that we would need the ability to store `ConstantReader`s and `DartObject?`s within memory.
We have all the needed functionality currently with the `dart:mirrors` library (which currently has usage by the `TypeChecker`). This could be listed as an unstable functionality (as `dart:mirrors` is listed as unstable) until a new direction is found (be that metaprogramming etc). This would give builder package maintainers the ability to make some of our functionality more flexible, while not adding to the maintainers burden.
An example of what this would look like is available in #679.
Contributor guide
Research direction
No implementation file or test is named. Start by reading the existing TypeChecker use of dart:mirrors and the example in #679; clarify how ConstantReaders and DartObjects should be stored and what acceptance criteria apply to the proposed unstable functionality.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- dart
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100