aconfig: update cpp codegen to use static methods

Update c++ codegen to static methods interface.

Bug: b/279483801
Test: atest aconfig.test
Change-Id: I78da3bbca6240bee660c692807930d00f2242b0a
This commit is contained in:
Dennis Shen 2023-06-09 18:01:56 +00:00
parent a0c6f31ef7
commit 4f78f10015
2 changed files with 23 additions and 38 deletions

View file

@ -134,18 +134,12 @@ mod tests {
namespace com::example {
class my_flag_one {
public:
virtual const bool value() {
return false;
}
static const bool my_flag_one() {
return false;
}
class my_flag_two {
public:
virtual const bool value() {
return true;
}
static const bool my_flag_two() {
return true;
}
}
@ -201,24 +195,18 @@ mod tests {
namespace com::example {
class my_flag_one {
public:
virtual const bool value() {
return GetServerConfigurableFlag(
"ns",
"com.example.my_flag_one",
"false") == "true";
}
static const bool my_flag_one() {
return GetServerConfigurableFlag(
"ns",
"com.example.my_flag_one",
"false") == "true";
}
class my_flag_two {
public:
virtual const bool value() {
return GetServerConfigurableFlag(
"ns",
"com.example.my_flag_two",
"true") == "true";
}
static const bool my_flag_two() {
return GetServerConfigurableFlag(
"ns",
"com.example.my_flag_two",
"true") == "true";
}
}

View file

@ -6,18 +6,15 @@ using namespace server_configurable_flags;
{{ endif }}
namespace {cpp_namespace} \{
{{ for item in class_elements}}
class {item.flag_name} \{
public:
virtual const bool value() \{
{{ if item.readwrite- }}
return GetServerConfigurableFlag(
"{item.device_config_namespace}",
"{item.device_config_flag}",
"{item.default_value}") == "true";
{{ -else- }}
return {item.default_value};
{{ -endif }}
}
static const bool {item.flag_name}() \{
{{ if item.readwrite- }}
return GetServerConfigurableFlag(
"{item.device_config_namespace}",
"{item.device_config_flag}",
"{item.default_value}") == "true";
{{ -else- }}
return {item.default_value};
{{ -endif }}
}
{{ endfor }}
}