| Commit message (Collapse) | Author | Age |
|
|
|
| |
PiperOrigin-RevId: 183842057
|
|
|
|
|
|
| |
Also add accessor to SkylarkInfo for the custom error message, and expose its concrete implementation classes for the benefit of reflection.
PiperOrigin-RevId: 182443146
|
|
|
|
|
|
|
|
|
| |
This avoids invalid layouts (non-sequential map values), and provides better separation between a layout's representation as a map and its view as a list.
Also removed a factory method that's unnecessary, now that the plan is not to closely tie SkylarkInfo to SkylarkProvider.
RELNOTES: None
PiperOrigin-RevId: 181807071
|
|
|
|
|
|
|
| |
Info objects no longer store a string pointer for their error message format, which is almost always the same as the one specified by their provider type. Only map-based SkylarkInfo used this (for fancy built-in structs like ctx.attr), so the field is pushed down to there.
RELNOTES: None
PiperOrigin-RevId: 181654641
|
|
|
|
|
|
|
|
|
| |
- Info now has one protected constructor. (Would've preferred the builder pattern, but inheritance makes it much more verbose.)
- Direct SkylarkInfo subclass access is replaced by factory methods and an isCompact() accessor.
- Added/simplified tests
RELNOTES: None
PiperOrigin-RevId: 181616757
|
|
|
|
|
|
|
|
|
| |
- Reorder Info methods for consistency with ClassObject
- "StructConstructor" -> "StructProvider"
- Added javadoc
RELNOTES: None
PiperOrigin-RevId: 181469643
|
|
|
|
|
|
|
| |
The terminology "field" is preferred over "key" for the components of a struct or struct-like object.
RELNOTES: None
PiperOrigin-RevId: 180269374
|
|
|
|
|
| |
RELNOTES: None
PiperOrigin-RevId: 178408662
|
|
|
|
|
|
|
|
|
|
| |
Add CompactSkylarkInfo, which stores its values as an array instead of
a map. The space savings will probably not be dramatic because
providers usually have a limited amount of keys. But, there are a lot
of them!
Change-Id: Idd452a5e3982f773b1c5202c73f3d7031ec022c6
PiperOrigin-RevId: 176995376
|
|
Prerequisite to implementing shape-declaration and shape-sharing
for declared providers, and cleaning up NativeInfo interface.
RELNOTES: None.
PiperOrigin-RevId: 166057070
|