aconfig: add read/write permission
Introduce the concept of flag read/write permissions: a read-only flag
can only have its value set during the build; a writable flag can by
updated in runtime.
Bug: 279485059
Test: atest aconfig.test
Change-Id: I3ec5c9571faa54de5666120ccd60090d3db9e331
diff --git a/tools/aconfig/src/protos.rs b/tools/aconfig/src/protos.rs
index 3c156b3..e9a1ab5 100644
--- a/tools/aconfig/src/protos.rs
+++ b/tools/aconfig/src/protos.rs
@@ -42,6 +42,9 @@
#[cfg(not(feature = "cargo"))]
pub use aconfig_protos::aconfig::Override as ProtoOverride;
+#[cfg(not(feature = "cargo"))]
+pub use aconfig_protos::aconfig::Permission as ProtoPermission;
+
// ---- When building with cargo ----
#[cfg(feature = "cargo")]
include!(concat!(env!("OUT_DIR"), "/aconfig_proto/mod.rs"));
@@ -61,6 +64,9 @@
#[cfg(feature = "cargo")]
pub use aconfig::Override as ProtoOverride;
+#[cfg(feature = "cargo")]
+pub use aconfig::Permission as ProtoPermission;
+
// ---- Common for both the Android tool-chain and cargo ----
use anyhow::Result;