1 // Autogenerated by the ProtoZero compiler plugin. DO NOT EDIT.
2 
3 #ifndef PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_ANDROID_CONTENT_LOCALE_PROTO_H_
4 #define PERFETTO_PROTOS_PROTOS_PERFETTO_TRACE_ANDROID_CONTENT_LOCALE_PROTO_H_
5 
6 #include <stddef.h>
7 #include <stdint.h>
8 
9 #include "perfetto/protozero/field_writer.h"
10 #include "perfetto/protozero/message.h"
11 #include "perfetto/protozero/packed_repeated_fields.h"
12 #include "perfetto/protozero/proto_decoder.h"
13 #include "perfetto/protozero/proto_utils.h"
14 
15 
16 namespace perfetto {
17 namespace protos {
18 namespace pbzero {
19 
20 class LocaleProto_Decoder : public ::protozero::TypedProtoDecoder</*MAX_FIELD_ID=*/4, /*HAS_NONPACKED_REPEATED_FIELDS=*/false> {
21  public:
LocaleProto_Decoder(const uint8_t * data,size_t len)22   LocaleProto_Decoder(const uint8_t* data, size_t len) : TypedProtoDecoder(data, len) {}
LocaleProto_Decoder(const std::string & raw)23   explicit LocaleProto_Decoder(const std::string& raw) : TypedProtoDecoder(reinterpret_cast<const uint8_t*>(raw.data()), raw.size()) {}
LocaleProto_Decoder(const::protozero::ConstBytes & raw)24   explicit LocaleProto_Decoder(const ::protozero::ConstBytes& raw) : TypedProtoDecoder(raw.data, raw.size) {}
has_language()25   bool has_language() const { return at<1>().valid(); }
language()26   ::protozero::ConstChars language() const { return at<1>().as_string(); }
has_country()27   bool has_country() const { return at<2>().valid(); }
country()28   ::protozero::ConstChars country() const { return at<2>().as_string(); }
has_variant()29   bool has_variant() const { return at<3>().valid(); }
variant()30   ::protozero::ConstChars variant() const { return at<3>().as_string(); }
has_script()31   bool has_script() const { return at<4>().valid(); }
script()32   ::protozero::ConstChars script() const { return at<4>().as_string(); }
33 };
34 
35 class LocaleProto : public ::protozero::Message {
36  public:
37   using Decoder = LocaleProto_Decoder;
38   enum : int32_t {
39     kLanguageFieldNumber = 1,
40     kCountryFieldNumber = 2,
41     kVariantFieldNumber = 3,
42     kScriptFieldNumber = 4,
43   };
GetName()44   static constexpr const char* GetName() { return ".perfetto.protos.LocaleProto"; }
45 
46 
47   using FieldMetadata_Language =
48     ::protozero::proto_utils::FieldMetadata<
49       1,
50       ::protozero::proto_utils::RepetitionType::kNotRepeated,
51       ::protozero::proto_utils::ProtoSchemaType::kString,
52       std::string,
53       LocaleProto>;
54 
55   static constexpr FieldMetadata_Language kLanguage{};
set_language(const char * data,size_t size)56   void set_language(const char* data, size_t size) {
57     AppendBytes(FieldMetadata_Language::kFieldId, data, size);
58   }
set_language(::protozero::ConstChars chars)59   void set_language(::protozero::ConstChars chars) {
60     AppendBytes(FieldMetadata_Language::kFieldId, chars.data, chars.size);
61   }
set_language(std::string value)62   void set_language(std::string value) {
63     static constexpr uint32_t field_id = FieldMetadata_Language::kFieldId;
64     // Call the appropriate protozero::Message::Append(field_id, ...)
65     // method based on the type of the field.
66     ::protozero::internal::FieldWriter<
67       ::protozero::proto_utils::ProtoSchemaType::kString>
68         ::Append(*this, field_id, value);
69   }
70 
71   using FieldMetadata_Country =
72     ::protozero::proto_utils::FieldMetadata<
73       2,
74       ::protozero::proto_utils::RepetitionType::kNotRepeated,
75       ::protozero::proto_utils::ProtoSchemaType::kString,
76       std::string,
77       LocaleProto>;
78 
79   static constexpr FieldMetadata_Country kCountry{};
set_country(const char * data,size_t size)80   void set_country(const char* data, size_t size) {
81     AppendBytes(FieldMetadata_Country::kFieldId, data, size);
82   }
set_country(::protozero::ConstChars chars)83   void set_country(::protozero::ConstChars chars) {
84     AppendBytes(FieldMetadata_Country::kFieldId, chars.data, chars.size);
85   }
set_country(std::string value)86   void set_country(std::string value) {
87     static constexpr uint32_t field_id = FieldMetadata_Country::kFieldId;
88     // Call the appropriate protozero::Message::Append(field_id, ...)
89     // method based on the type of the field.
90     ::protozero::internal::FieldWriter<
91       ::protozero::proto_utils::ProtoSchemaType::kString>
92         ::Append(*this, field_id, value);
93   }
94 
95   using FieldMetadata_Variant =
96     ::protozero::proto_utils::FieldMetadata<
97       3,
98       ::protozero::proto_utils::RepetitionType::kNotRepeated,
99       ::protozero::proto_utils::ProtoSchemaType::kString,
100       std::string,
101       LocaleProto>;
102 
103   static constexpr FieldMetadata_Variant kVariant{};
set_variant(const char * data,size_t size)104   void set_variant(const char* data, size_t size) {
105     AppendBytes(FieldMetadata_Variant::kFieldId, data, size);
106   }
set_variant(::protozero::ConstChars chars)107   void set_variant(::protozero::ConstChars chars) {
108     AppendBytes(FieldMetadata_Variant::kFieldId, chars.data, chars.size);
109   }
set_variant(std::string value)110   void set_variant(std::string value) {
111     static constexpr uint32_t field_id = FieldMetadata_Variant::kFieldId;
112     // Call the appropriate protozero::Message::Append(field_id, ...)
113     // method based on the type of the field.
114     ::protozero::internal::FieldWriter<
115       ::protozero::proto_utils::ProtoSchemaType::kString>
116         ::Append(*this, field_id, value);
117   }
118 
119   using FieldMetadata_Script =
120     ::protozero::proto_utils::FieldMetadata<
121       4,
122       ::protozero::proto_utils::RepetitionType::kNotRepeated,
123       ::protozero::proto_utils::ProtoSchemaType::kString,
124       std::string,
125       LocaleProto>;
126 
127   static constexpr FieldMetadata_Script kScript{};
set_script(const char * data,size_t size)128   void set_script(const char* data, size_t size) {
129     AppendBytes(FieldMetadata_Script::kFieldId, data, size);
130   }
set_script(::protozero::ConstChars chars)131   void set_script(::protozero::ConstChars chars) {
132     AppendBytes(FieldMetadata_Script::kFieldId, chars.data, chars.size);
133   }
set_script(std::string value)134   void set_script(std::string value) {
135     static constexpr uint32_t field_id = FieldMetadata_Script::kFieldId;
136     // Call the appropriate protozero::Message::Append(field_id, ...)
137     // method based on the type of the field.
138     ::protozero::internal::FieldWriter<
139       ::protozero::proto_utils::ProtoSchemaType::kString>
140         ::Append(*this, field_id, value);
141   }
142 };
143 
144 } // Namespace.
145 } // Namespace.
146 } // Namespace.
147 #endif  // Include guard.
148