Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(255)

Side by Side Diff: templates/TypeBuilder_h.template

Issue 2495353004: [inspector_protocol] Support chromium code style. (Closed)
Patch Set: Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « templates/TypeBuilder_cpp.template ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // This file is generated 1 // This file is generated
2 2
3 // Copyright (c) 2016 The Chromium Authors. All rights reserved. 3 // Copyright (c) 2016 The Chromium Authors. All rights reserved.
4 // Use of this source code is governed by a BSD-style license that can be 4 // Use of this source code is governed by a BSD-style license that can be
5 // found in the LICENSE file. 5 // found in the LICENSE file.
6 6
7 #ifndef {{"_".join(config.protocol.namespace)}}_{{domain.domain}}_h 7 #ifndef {{"_".join(config.protocol.namespace)}}_{{domain.domain}}_h
8 #define {{"_".join(config.protocol.namespace)}}_{{domain.domain}}_h 8 #define {{"_".join(config.protocol.namespace)}}_{{domain.domain}}_h
9 9
10 {% if config.protocol.export_header %} 10 {% if config.protocol.export_header %}
11 #include {{format_include(config.protocol.export_header)}} 11 #include {{format_include(config.protocol.export_header)}}
12 {% endif %} 12 {% endif %}
13 #include "{{config.protocol.package}}/Protocol.h" 13 #include {{format_include(config.protocol.package, "Protocol")}}
14 // For each imported domain we generate a ValueConversions struct instead of a f ull domain definition 14 // For each imported domain we generate a ValueConversions struct instead of a f ull domain definition
15 // and include Domain::API version from there. 15 // and include Domain::API version from there.
16 {% for name in domain.dependencies %} 16 {% for name in domain.dependencies %}
17 #include "{{config.protocol.package}}/{{name}}.h" 17 #include {{format_include(config.protocol.package, name)}}
18 {% endfor %} 18 {% endfor %}
19 {% if domain["has_exports"] %} 19 {% if domain["has_exports"] %}
20 #include "{{config.exported.package}}/{{domain.domain}}.h" 20 #include {{format_include(config.exported.package, domain.domain)}}
21 {% endif %} 21 {% endif %}
22 22
23 {% for namespace in config.protocol.namespace %} 23 {% for namespace in config.protocol.namespace %}
24 namespace {{namespace}} { 24 namespace {{namespace}} {
25 {% endfor %} 25 {% endfor %}
26 namespace {{domain.domain}} { 26 namespace {{domain.domain}} {
27 27
28 // ------------- Forward and enum declarations. 28 // ------------- Forward and enum declarations.
29 {% for type in domain.types %} 29 {% for type in domain.types %}
30 {% if type.type == "object" %} 30 {% if type.type == "object" %}
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 {% if "enum" in property %} 81 {% if "enum" in property %}
82 82
83 struct {{config.protocol.export_macro}} {{property.name | to_title_case}}Enu m { 83 struct {{config.protocol.export_macro}} {{property.name | to_title_case}}Enu m {
84 {% for literal in property.enum %} 84 {% for literal in property.enum %}
85 static const char* {{literal | dash_to_camelcase}}; 85 static const char* {{literal | dash_to_camelcase}};
86 {% endfor %} 86 {% endfor %}
87 }; // {{property.name | to_title_case}}Enum 87 }; // {{property.name | to_title_case}}Enum
88 {% endif %} 88 {% endif %}
89 89
90 {% if property.optional %} 90 {% if property.optional %}
91 bool has{{property.name | to_title_case}}() { return m_{{property.name}}.isJ ust(); } 91 bool {{"has" | to_method_case}}{{property.name | to_title_case}}() { return m_{{property.name}}.isJust(); }
92 {{resolve_type(property).raw_return_type}} get{{property.name | to_title_cas e}}({{resolve_type(property).raw_pass_type}} defaultValue) { return m_{{property .name}}.isJust() ? m_{{property.name}}.fromJust() : defaultValue; } 92 {{resolve_type(property).raw_return_type}} {{"get" | to_method_case}}{{prope rty.name | to_title_case}}({{resolve_type(property).raw_pass_type}} defaultValue ) { return m_{{property.name}}.isJust() ? m_{{property.name}}.fromJust() : defau ltValue; }
93 {% else %} 93 {% else %}
94 {{resolve_type(property).raw_return_type}} get{{property.name | to_title_cas e}}() { return {{resolve_type(property).to_raw_type % ("m_" + property.name)}}; } 94 {{resolve_type(property).raw_return_type}} {{"get" | to_method_case}}{{prope rty.name | to_title_case}}() { return {{resolve_type(property).to_raw_type % ("m _" + property.name)}}; }
95 {% endif %} 95 {% endif %}
96 void set{{property.name | to_title_case}}({{resolve_type(property).pass_type }} value) { m_{{property.name}} = {{resolve_type(property).to_rvalue % "value"}} ; } 96 void {{"set" | to_method_case}}{{property.name | to_title_case}}({{resolve_t ype(property).pass_type}} value) { m_{{property.name}} = {{resolve_type(property ).to_rvalue % "value"}}; }
97 {% endfor %} 97 {% endfor %}
98 98
99 std::unique_ptr<protocol::DictionaryValue> serialize() const; 99 std::unique_ptr<protocol::DictionaryValue> serialize() const;
100 std::unique_ptr<{{type.id}}> clone() const; 100 std::unique_ptr<{{type.id}}> clone() const;
101 {% if type.exported %} 101 {% if type.exported %}
102 {{config.exported.string_out}} toJSONString() const override; 102 {{config.exported.string_out}} toJSONString() const override;
103 {% endif %} 103 {% endif %}
104 104
105 template<int STATE> 105 template<int STATE>
106 class {{type.id}}Builder { 106 class {{type.id}}Builder {
107 public: 107 public:
108 enum { 108 enum {
109 NoFieldsSet = 0, 109 NoFieldsSet = 0,
110 {% set count = 0 %} 110 {% set count = 0 %}
111 {% for property in type.properties %} 111 {% for property in type.properties %}
112 {% if not(property.optional) %} 112 {% if not(property.optional) %}
113 {% set count = count + 1 %} 113 {% set count = count + 1 %}
114 {{property.name | to_title_case}}Set = 1 << {{count}}, 114 {{property.name | to_title_case}}Set = 1 << {{count}},
115 {% endif %} 115 {% endif %}
116 {% endfor %} 116 {% endfor %}
117 AllFieldsSet = ( 117 AllFieldsSet = (
118 {%- for property in type.properties %} 118 {%- for property in type.properties %}
119 {% if not(property.optional) %}{{property.name | to_title_case}}Set | {%en dif %} 119 {% if not(property.optional) %}{{property.name | to_title_case}}Set | {%en dif %}
120 {% endfor %}0)}; 120 {% endfor %}0)};
121 121
122 {% for property in type.properties %} 122 {% for property in type.properties %}
123 123
124 {% if property.optional %} 124 {% if property.optional %}
125 {{type.id}}Builder<STATE>& set{{property.name | to_title_case}}({{resolv e_type(property).pass_type}} value) 125 {{type.id}}Builder<STATE>& {{"set" | to_method_case}}{{property.name | t o_title_case}}({{resolve_type(property).pass_type}} value)
126 { 126 {
127 m_result->set{{property.name | to_title_case}}({{resolve_type(proper ty).to_rvalue % "value"}}); 127 m_result->{{"set" | to_method_case}}{{property.name | to_title_case} }({{resolve_type(property).to_rvalue % "value"}});
128 return *this; 128 return *this;
129 } 129 }
130 {% else %} 130 {% else %}
131 {{type.id}}Builder<STATE | {{property.name | to_title_case}}Set>& set{{p roperty.name | to_title_case}}({{resolve_type(property).pass_type}} value) 131 {{type.id}}Builder<STATE | {{property.name | to_title_case}}Set>& {{"set " | to_method_case}}{{property.name | to_title_case}}({{resolve_type(property).p ass_type}} value)
132 { 132 {
133 static_assert(!(STATE & {{property.name | to_title_case}}Set), "prop erty {{property.name}} should not be set yet"); 133 static_assert(!(STATE & {{property.name | to_title_case}}Set), "prop erty {{property.name}} should not be set yet");
134 m_result->set{{property.name | to_title_case}}({{resolve_type(proper ty).to_rvalue % "value"}}); 134 m_result->{{"set" | to_method_case}}{{property.name | to_title_case} }({{resolve_type(property).to_rvalue % "value"}});
135 return castState<{{property.name | to_title_case}}Set>(); 135 return castState<{{property.name | to_title_case}}Set>();
136 } 136 }
137 {% endif %} 137 {% endif %}
138 {% endfor %} 138 {% endfor %}
139 139
140 std::unique_ptr<{{type.id}}> build() 140 std::unique_ptr<{{type.id}}> {{"build" | to_method_case}}()
141 { 141 {
142 static_assert(STATE == AllFieldsSet, "state should be AllFieldsSet") ; 142 static_assert(STATE == AllFieldsSet, "state should be AllFieldsSet") ;
143 return std::move(m_result); 143 return std::move(m_result);
144 } 144 }
145 145
146 private: 146 private:
147 friend class {{type.id}}; 147 friend class {{type.id}};
148 {{type.id}}Builder() : m_result(new {{type.id}}()) { } 148 {{type.id}}Builder() : m_result(new {{type.id}}()) { }
149 149
150 template<int STEP> {{type.id}}Builder<STATE | STEP>& castState() 150 template<int STEP> {{type.id}}Builder<STATE | STEP>& castState()
151 { 151 {
152 return *reinterpret_cast<{{type.id}}Builder<STATE | STEP>*>(this); 152 return *reinterpret_cast<{{type.id}}Builder<STATE | STEP>*>(this);
153 } 153 }
154 154
155 {{type_def.type}} m_result; 155 {{type_def.type}} m_result;
156 }; 156 };
157 157
158 static {{type.id}}Builder<0> create() 158 static {{type.id}}Builder<0> {{"create" | to_method_case}}()
159 { 159 {
160 return {{type.id}}Builder<0>(); 160 return {{type.id}}Builder<0>();
161 } 161 }
162 162
163 private: 163 private:
164 {{type.id}}() 164 {{type.id}}()
165 { 165 {
166 {% for property in type.properties %} 166 {% for property in type.properties %}
167 {% if not(property.optional) and "default_value" in resolve_type(property) %} 167 {% if not(property.optional) and "default_value" in resolve_type(property) %}
168 m_{{property.name}} = {{resolve_type(property).default_value}}; 168 m_{{property.name}} = {{resolve_type(property).default_value}};
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
201 {{resolve_type(parameter).pass_type}} {{parameter.name}} 201 {{resolve_type(parameter).pass_type}} {{parameter.name}}
202 {%- endif -%} 202 {%- endif -%}
203 {%- if not loop.last -%}, {% endif -%} 203 {%- if not loop.last -%}, {% endif -%}
204 {%- endfor -%} 204 {%- endfor -%}
205 ) = 0; 205 ) = 0;
206 virtual void sendFailure(const DispatchResponse&) = 0; 206 virtual void sendFailure(const DispatchResponse&) = 0;
207 virtual ~{{command.name | to_title_case}}Callback() { } 207 virtual ~{{command.name | to_title_case}}Callback() { }
208 }; 208 };
209 {% endif %} 209 {% endif %}
210 {%- if not is_async_command(domain.domain, command.name) %} 210 {%- if not is_async_command(domain.domain, command.name) %}
211 virtual DispatchResponse {{command.name}}( 211 virtual DispatchResponse {{command.name | to_method_case}}(
212 {%- else %} 212 {%- else %}
213 virtual void {{command.name}}( 213 virtual void {{command.name | to_method_case}}(
214 {%- endif %} 214 {%- endif %}
215 {%- for parameter in command.parameters -%} 215 {%- for parameter in command.parameters -%}
216 {%- if not loop.first -%}, {% endif -%} 216 {%- if not loop.first -%}, {% endif -%}
217 {%- if "optional" in parameter -%} 217 {%- if "optional" in parameter -%}
218 Maybe<{{resolve_type(parameter).raw_type}}> in_{{parameter.name}} 218 Maybe<{{resolve_type(parameter).raw_type}}> in_{{parameter.name}}
219 {%- else -%} 219 {%- else -%}
220 {{resolve_type(parameter).pass_type}} in_{{parameter.name}} 220 {{resolve_type(parameter).pass_type}} in_{{parameter.name}}
221 {%- endif -%} 221 {%- endif -%}
222 {%- endfor -%} 222 {%- endfor -%}
223 {%- if is_async_command(domain.domain, command.name) -%} 223 {%- if is_async_command(domain.domain, command.name) -%}
224 {%- if command.parameters -%}, {% endif -%} 224 {%- if command.parameters -%}, {% endif -%}
225 std::unique_ptr<{{command.name | to_title_case}}Callback> callback 225 std::unique_ptr<{{command.name | to_title_case}}Callback> callback
226 {%- else -%} 226 {%- else -%}
227 {%- for parameter in command.returns -%} 227 {%- for parameter in command.returns -%}
228 {%- if (not loop.first) or command.parameters -%}, {% endif -%} 228 {%- if (not loop.first) or command.parameters -%}, {% endif -%}
229 {%- if "optional" in parameter -%} 229 {%- if "optional" in parameter -%}
230 Maybe<{{resolve_type(parameter).raw_type}}>* out_{{parameter.name}} 230 Maybe<{{resolve_type(parameter).raw_type}}>* out_{{parameter.name}}
231 {%- else -%} 231 {%- else -%}
232 {{resolve_type(parameter).type}}* out_{{parameter.name}} 232 {{resolve_type(parameter).type}}* out_{{parameter.name}}
233 {%- endif -%} 233 {%- endif -%}
234 {%- endfor -%} 234 {%- endfor -%}
235 {%- endif -%} 235 {%- endif -%}
236 ) = 0; 236 ) = 0;
237 {% endfor %} 237 {% endfor %}
238 238
239 {% if generate_disable(domain) %} 239 {% if generate_disable(domain) %}
240 virtual DispatchResponse disable() 240 virtual DispatchResponse {{"disable" | to_method_case}}()
241 { 241 {
242 return DispatchResponse::OK(); 242 return DispatchResponse::OK();
243 } 243 }
244 {% endif %} 244 {% endif %}
245 }; 245 };
246 246
247 // ------------- Frontend interface. 247 // ------------- Frontend interface.
248 248
249 class {{config.protocol.export_macro}} Frontend { 249 class {{config.protocol.export_macro}} Frontend {
250 public: 250 public:
251 Frontend(FrontendChannel* frontendChannel) : m_frontendChannel(frontendChann el) { } 251 explicit Frontend(FrontendChannel* frontendChannel) : m_frontendChannel(fron tendChannel) { }
252 {% for event in domain.events %} 252 {% for event in domain.events %}
253 {% if not generate_event(domain.domain, event.name) %}{% continue %}{% endif %} 253 {% if not generate_event(domain.domain, event.name) %}{% continue %}{% endif %}
254 void {{event.name}}( 254 void {{event.name | to_method_case}}(
255 {%- for parameter in event.parameters -%} 255 {%- for parameter in event.parameters -%}
256 {%- if "optional" in parameter -%} 256 {%- if "optional" in parameter -%}
257 Maybe<{{resolve_type(parameter).raw_type}}> {{parameter.name}} = Maybe<{ {resolve_type(parameter).raw_type}}>() 257 Maybe<{{resolve_type(parameter).raw_type}}> {{parameter.name}} = Maybe<{ {resolve_type(parameter).raw_type}}>()
258 {%- else -%} 258 {%- else -%}
259 {{resolve_type(parameter).pass_type}} {{parameter.name}} 259 {{resolve_type(parameter).pass_type}} {{parameter.name}}
260 {%- endif -%}{%- if not loop.last -%}, {% endif -%} 260 {%- endif -%}{%- if not loop.last -%}, {% endif -%}
261 {%- endfor -%} 261 {%- endfor -%}
262 ); 262 );
263 {% endfor %} 263 {% endfor %}
264 264
(...skipping 23 matching lines...) Expand all
288 static const char commandPrefix[]; 288 static const char commandPrefix[];
289 static const char version[]; 289 static const char version[];
290 }; 290 };
291 291
292 } // namespace {{domain.domain}} 292 } // namespace {{domain.domain}}
293 {% for namespace in config.protocol.namespace %} 293 {% for namespace in config.protocol.namespace %}
294 } // namespace {{namespace}} 294 } // namespace {{namespace}}
295 {% endfor %} 295 {% endfor %}
296 296
297 #endif // !defined({{"_".join(config.protocol.namespace)}}_{{domain.domain}}_h) 297 #endif // !defined({{"_".join(config.protocol.namespace)}}_{{domain.domain}}_h)
OLDNEW
« no previous file with comments | « templates/TypeBuilder_cpp.template ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698