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

Unified Diff: third_party/mojo/src/mojo/public/tools/bindings/generators/cpp_templates/module.h.tmpl

Issue 1127293003: Update mojo sdk to rev f84766d3b6420b7cf6a113d9d65d73cb5fe18d90 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: formatting Created 5 years, 7 months 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 side-by-side diff with in-line comments
Download patch
Index: third_party/mojo/src/mojo/public/tools/bindings/generators/cpp_templates/module.h.tmpl
diff --git a/third_party/mojo/src/mojo/public/tools/bindings/generators/cpp_templates/module.h.tmpl b/third_party/mojo/src/mojo/public/tools/bindings/generators/cpp_templates/module.h.tmpl
index 503e19decb942e889348a60bc0f6ea18a2eb4bb3..d96fb60b8ff72f23d91a55e3f5fa37f81fd66dc9 100644
--- a/third_party/mojo/src/mojo/public/tools/bindings/generators/cpp_templates/module.h.tmpl
+++ b/third_party/mojo/src/mojo/public/tools/bindings/generators/cpp_templates/module.h.tmpl
@@ -13,6 +13,8 @@
#include "mojo/public/cpp/bindings/interface_impl.h"
#include "mojo/public/cpp/bindings/interface_ptr.h"
#include "mojo/public/cpp/bindings/interface_request.h"
+#include "mojo/public/cpp/bindings/lib/control_message_handler.h"
+#include "mojo/public/cpp/bindings/lib/control_message_proxy.h"
#include "mojo/public/cpp/bindings/map.h"
#include "mojo/public/cpp/bindings/message_filter.h"
#include "mojo/public/cpp/bindings/no_interface.h"
@@ -27,16 +29,22 @@
namespace {{namespace}} {
{%- endfor %}
-{#--- Constants #}
-{% for constant in module.constants %}
-extern const {{constant.kind|cpp_pod_type}} {{constant.name}};
-{%- endfor %}
-
{#--- Enums #}
{% for enum in enums %}
{% include "enum_declaration.tmpl" %}
{%- endfor %}
+{#--- Constants #}
+{%- for constant in module.constants %}
+{#- To be consistent with constants defined inside interfaces, only make
+ integral types compile-time constants. #}
+{%- if constant.kind|is_integral_kind %}
+const {{constant.kind|cpp_pod_type}} {{constant.name}} = {{constant|constant_value}};
+{%- else %}
+extern const {{constant.kind|cpp_pod_type}} {{constant.name}};
+{%- endif %}
+{%- endfor %}
+
{#--- Interface Forward Declarations -#}
{% for interface in interfaces %}
class {{interface.name}};
@@ -63,29 +71,6 @@ typedef mojo::StructPtr<{{union.name}}> {{union.name}}Ptr;
{% endif %}
{%- endfor %}
-{#--- Unions must be declared first because they can be members of structs #}
-{#--- Unions #}
-{% for union in unions %}
-{% include "wrapper_union_class_declaration.tmpl" %}
-{%- endfor %}
-
-{#--- NOTE: Non-inlined structs may have pointers to inlined structs, so we #}
-{#--- need to fully define inlined structs ahead of the others. #}
-
-{#--- Inlined structs #}
-{% for struct in structs %}
-{% if struct|should_inline %}
-{% include "wrapper_class_declaration.tmpl" %}
-{% endif %}
-{%- endfor %}
-
-{#--- Non-inlined structs #}
-{% for struct in structs %}
-{% if not struct|should_inline %}
-{% include "wrapper_class_declaration.tmpl" %}
-{% endif %}
-{%- endfor %}
-
{#--- Interfaces -#}
{% for interface in interfaces %}
{% include "interface_declaration.tmpl" %}
@@ -111,6 +96,29 @@ typedef mojo::StructPtr<{{union.name}}> {{union.name}}Ptr;
{% include "interface_response_validator_declaration.tmpl" %}
{%- endfor %}
+{#--- Unions must be declared first because they can be members of structs #}
+{#--- Unions #}
+{% for union in unions %}
+{% include "wrapper_union_class_declaration.tmpl" %}
+{%- endfor %}
+
+{#--- NOTE: Non-inlined structs may have pointers to inlined structs, so we #}
+{#--- need to fully define inlined structs ahead of the others. #}
+
+{#--- Inlined structs #}
+{% for struct in structs %}
+{% if struct|should_inline %}
+{% include "wrapper_class_declaration.tmpl" %}
+{% endif %}
+{%- endfor %}
+
+{#--- Non-inlined structs #}
+{% for struct in structs %}
+{% if not struct|should_inline %}
+{% include "wrapper_class_declaration.tmpl" %}
+{% endif %}
+{%- endfor %}
+
{#--- Struct Serialization Helpers -#}
{% if structs %}
{% for struct in structs %}

Powered by Google App Engine
This is Rietveld 408576698