OLD | NEW |
1 Smoke (and mirrors) | 1 Smoke (and mirrors) |
2 =================== | 2 =================== |
3 | 3 |
4 Smoke is a package that exposes a reduced reflective system API. This API | 4 Smoke is a package that exposes a reduced reflective system API. This API |
5 includes accessing objects in a dynamic fashion (read properties, write | 5 includes accessing objects in a dynamic fashion (read properties, write |
6 properties, and call methods), inspecting types (for example, whether a | 6 properties, and call methods), inspecting types (for example, whether a |
7 method exists), and symbol/string convertion. | 7 method exists), and symbol/string convertion. |
8 | 8 |
9 The package provides a default implementation of this API that uses the system's | 9 The package provides a default implementation of this API that uses the system's |
10 mirrors, but additionally provides mechanisms for statically generating code | 10 mirrors, but additionally provides mechanisms for statically generating code |
(...skipping 13 matching lines...) Expand all Loading... |
24 | 24 |
25 Smoke reflective API | 25 Smoke reflective API |
26 ==================== | 26 ==================== |
27 | 27 |
28 Use `package:smoke/smoke.dart` in your framework to read and write objects and | 28 Use `package:smoke/smoke.dart` in your framework to read and write objects and |
29 to inspect type information. Read the Dart-docs for more details. | 29 to inspect type information. Read the Dart-docs for more details. |
30 | 30 |
31 Code Generation | 31 Code Generation |
32 =============== | 32 =============== |
33 | 33 |
34 TBD. We envision we'll have a base transformer class that can be tailored to | 34 Use `package:smoke/codegen/generator.dart` and |
35 create a transformer for your framework. | 35 `package:smoke/codegen/recorder.dart` in your transformer to create a static |
| 36 initialization that can be used by smoke. The test under |
| 37 `test/codegen/end_to_end_test.dart` is a good illustrating example to learn how |
| 38 to use these APIs. |
36 | 39 |
37 [MirrorsUsed]: https://api.dartlang.org/apidocs/channels/stable/#dart-mirrors.Mi
rrorsUsed | 40 [MirrorsUsed]: https://api.dartlang.org/apidocs/channels/stable/#dart-mirrors.Mi
rrorsUsed |
OLD | NEW |