platform_build_blueprint/proptools
Cole Faust ad00dd50bf Return an Optional[T] from Configurable.Get()
Previously, Configurable.Get() copied the value in the property,
because it needed to return a pointer in order to indicate whether
the property was set or not. Now, it returns a ConfigurableOptional[T],
which is the same as the pointer, but it prevents users from altering
the pointed-to value, so we don't need to copy it.

There are still copies for slice properties, because those are also
pointers. In the future we may want to consider making an ImmutableList
type to use instead.

Bug: 323382414
Test: m nothing --no-skip-soong-tests
Change-Id: Ic9ed5ba269d10158e3eac1fea272555c9fa5c0e8
2024-05-21 14:48:39 -07:00
..
clone.go Refactor selects 2024-04-29 13:23:30 -07:00
clone_test.go Fix TestCloneProperties for go 1.21 2023-11-08 22:07:58 -08:00
configurable.go Return an Optional[T] from Configurable.Get() 2024-05-21 14:48:39 -07:00
escape.go Use maps and slices packages 2024-04-01 15:54:22 -07:00
escape_test.go Use maps and slices packages 2024-04-01 15:54:22 -07:00
extend.go Refactor selects 2024-04-29 13:23:30 -07:00
extend_test.go Refactor selects 2024-04-29 13:23:30 -07:00
filter.go Don't recurse into configurable properties in filterPropertyStructFields 2024-03-26 16:46:48 -07:00
filter_test.go Always shard structs if they would exceed maxNameSize even if unfiltered 2021-03-26 09:59:19 +00:00
hash_provider.go Use WriteString in hashProviderInternal 2024-02-02 15:57:26 -08:00
hash_provider_test.go Enforce that providers are not changed 2024-01-30 15:18:24 -08:00
proptools.go Support generating docs for Configurable properties 2024-05-06 15:14:17 -07:00
proptools_test.go Select statements 2024-03-06 15:00:39 -08:00
tag.go Select statements 2024-03-06 15:00:39 -08:00
tag_test.go propertyIndexesWithTag can handle slice of struct 2021-02-24 01:02:59 +09:00
typeequal.go Fix bugs when appending selects 2024-04-25 15:38:56 -07:00
typeequal_test.go Support nil pointers to structs in properties 2016-08-05 17:19:36 -07:00
unpack.go Improve error message when assigning select to nonconfigurable property 2024-04-30 13:58:17 -07:00
unpack_test.go Refactor selects 2024-04-29 13:23:30 -07:00
utils.go Write ninja file in parallel. 2024-05-20 21:46:19 +00:00