diff options
author | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-04 20:58:06 +0000 |
---|---|---|
committer | sky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-04 20:58:06 +0000 |
commit | e918a17e76945beee5edb559fbe5a885b59b0eb6 (patch) | |
tree | 10fd5d840329ed7fd7ba13e6dd8546c4cf5e79ce | |
parent | 5c1f13f551811eab35ddf07e22668f3c8984e36e (diff) | |
download | chromium_src-e918a17e76945beee5edb559fbe5a885b59b0eb6.zip chromium_src-e918a17e76945beee5edb559fbe5a885b59b0eb6.tar.gz chromium_src-e918a17e76945beee5edb559fbe5a885b59b0eb6.tar.bz2 |
Makes it so mojom files don't need a module
This is for code that doesn't want to use a namespace, such as chrome.
BUG=none
TEST=none
R=davemoore@chromium.org
Review URL: https://codereview.chromium.org/224873002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@261863 0039d316-1c4b-4281-b951-d872f2087c98
4 files changed, 18 insertions, 2 deletions
diff --git a/mojo/public/bindings/generators/cpp_templates/module-internal.h.tmpl b/mojo/public/bindings/generators/cpp_templates/module-internal.h.tmpl index d298cc3..e804fc6 100644 --- a/mojo/public/bindings/generators/cpp_templates/module-internal.h.tmpl +++ b/mojo/public/bindings/generators/cpp_templates/module-internal.h.tmpl @@ -13,7 +13,9 @@ #include "{{import.module.path}}-internal.h" {%- endfor %} +{%- if namespace %} namespace {{namespace}} { +{%- endif %} {#--- Wrapper forward declarations #} {% for struct in structs %} @@ -32,6 +34,8 @@ namespace internal { #pragma pack(pop) } // namespace internal +{%- if namespace %} } // namespace {{namespace}} +{%- endif %} #endif // {{header_guard}} diff --git a/mojo/public/bindings/generators/cpp_templates/module.cc.tmpl b/mojo/public/bindings/generators/cpp_templates/module.cc.tmpl index 33bd46b..d99a3e2 100644 --- a/mojo/public/bindings/generators/cpp_templates/module.cc.tmpl +++ b/mojo/public/bindings/generators/cpp_templates/module.cc.tmpl @@ -12,7 +12,9 @@ #include "mojo/public/cpp/bindings/lib/bindings_serialization.h" #include "mojo/public/cpp/bindings/lib/message_builder.h" +{%- if namespace %} namespace {{namespace}} { +{%- endif %} namespace internal { namespace { @@ -57,7 +59,9 @@ const uint32_t {{method_name}} = {{method.ordinal}}; {%- for interface in interfaces %} {%- include "interface_definition.tmpl" %} {%- endfor %} +{%- if namespace %} } // namespace {{namespace}} +{%- endif %} #if defined(__clang__) #pragma clang diagnostic pop diff --git a/mojo/public/bindings/generators/cpp_templates/module.h.tmpl b/mojo/public/bindings/generators/cpp_templates/module.h.tmpl index 1912d5c..c223386 100644 --- a/mojo/public/bindings/generators/cpp_templates/module.h.tmpl +++ b/mojo/public/bindings/generators/cpp_templates/module.h.tmpl @@ -16,7 +16,9 @@ #include "{{import.module.path}}.h" {%- endfor %} +{%- if namespace %} namespace {{namespace}} { +{%- endif %} {#--- Enums #} {% for enum in enums %} @@ -43,6 +45,8 @@ namespace {{namespace}} { {% include "interface_stub_declaration.tmpl" %} {%- endfor %} +{%- if namespace %} } // namespace {{namespace}} +{%- endif %} #endif // {{header_guard}} diff --git a/mojo/public/bindings/pylib/parse/mojo_parser.py b/mojo/public/bindings/pylib/parse/mojo_parser.py index 4d63490..3c021df 100755 --- a/mojo/public/bindings/pylib/parse/mojo_parser.py +++ b/mojo/public/bindings/pylib/parse/mojo_parser.py @@ -70,11 +70,15 @@ class Parser(object): def p_root(self, p): """root : import root - | module""" + | module + | definitions""" if len(p) > 2: p[0] = _ListFromConcat(p[1], p[2]) else: - p[0] = [p[1]] + if p[1][0] != 'MODULE': + p[0] = [('MODULE', '', p[1])] + else: + p[0] = [p[1]] def p_import(self, p): """import : IMPORT STRING_LITERAL""" |