platform_system_core/property_service/libpropertyinfoserializer
Tom Cherry 927c5d5fdc Introduce property types
Properties right now can take any format, but that makes it hard to
specify an API for these properties as Treble intends to do.
Therefore this change introduces the idea of property types, described below.

1) 'string' this is the default type and allows any property to be set.
2) 'bool' this allows only boolean values (true|false|1|0)
3) 'int' and 'uint' these allow signed and unsigned integer values
respectively.
4) 'double' this allows floating point numbers with double precision.
5) 'size' this allows for strings matching [0-9]+[gkm].
6) 'enum' this allows only a specific set of space deliminated values
to be set, e.g. 'enum allow these strings' only allows one of 'allow',
'these', or 'strings' to be set.

Bug: 70858511
Test: unit tests, test that properties are only set if their type matches
Change-Id: I7a6b00fb43ec630d1f56c9e9a1f1b61d3914f603
2018-01-16 14:44:40 -08:00
..
include/property_info_serializer Rename property 'schema' to 'type' 2018-01-11 16:26:50 -08:00
Android.bp Reland: Add getprop to toolbox 2018-01-10 11:26:24 -08:00
property_info_file.cpp Introduce property types 2018-01-16 14:44:40 -08:00
property_info_serializer.cpp Rename property 'schema' to 'type' 2018-01-11 16:26:50 -08:00
property_info_serializer_test.cpp Rename property 'schema' to 'type' 2018-01-11 16:26:50 -08:00
space_tokenizer.h Create a host side checker for property info file correctness 2018-01-04 22:00:11 +00:00
trie_builder.cpp Rename property 'schema' to 'type' 2018-01-11 16:26:50 -08:00
trie_builder.h Rename property 'schema' to 'type' 2018-01-11 16:26:50 -08:00
trie_builder_test.cpp Rename property 'schema' to 'type' 2018-01-11 16:26:50 -08:00
trie_node_arena.h Parse property contexts via a serialized trie 2017-12-11 16:11:42 -08:00
trie_serializer.cpp Rename property 'schema' to 'type' 2018-01-11 16:26:50 -08:00
trie_serializer.h Parse property contexts via a serialized trie 2017-12-11 16:11:42 -08:00