1// Copyright 2016 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#if defined(_MSC_VER) 6#pragma warning(push) 7#pragma warning(disable:4065) 8#endif 9 10#include "{{module.path}}-shared.h" 11 12#include <utility> 13 14#include "base/logging.h" 15#include "mojo/public/cpp/bindings/lib/validate_params.h" 16#include "mojo/public/cpp/bindings/lib/validation_context.h" 17#include "mojo/public/cpp/bindings/lib/validation_errors.h" 18#include "mojo/public/cpp/bindings/lib/validation_util.h" 19 20{%- for header in extra_traits_headers %} 21#include "{{header}}" 22{%- endfor %} 23 24{%- for namespace in namespaces_as_array %} 25namespace {{namespace}} { 26{%- endfor %} 27 28namespace internal { 29 30{#--- Union definitions #} 31{%- for union in unions %} 32{% include "union_definition.tmpl" %} 33{%- endfor %} 34 35{#--- Struct definitions #} 36{%- for struct in structs %} 37{%- if not struct|is_native_only_kind %} 38{% include "struct_definition.tmpl" %} 39{%- endif %} 40{%- endfor %} 41 42{#--- Interface parameter definitions #} 43{%- for interface in interfaces %} 44{%- for method in interface.methods %} 45{%- set struct = method.param_struct %} 46{% include "struct_definition.tmpl" %} 47{%- if method.response_parameters != None %} 48{%- set struct = method.response_param_struct %} 49{% include "struct_definition.tmpl" %} 50{%- endif %} 51{%- endfor %} 52{%- endfor %} 53 54} // namespace internal 55 56{%- for namespace in namespaces_as_array|reverse %} 57} // namespace {{namespace}} 58{%- endfor %} 59 60#if defined(_MSC_VER) 61#pragma warning(pop) 62#endif 63 64