// This file is generated by Forward_h.template. // Copyright 2016 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef {{"_".join(config.protocol.namespace)}}_Forward_h #define {{"_".join(config.protocol.namespace)}}_Forward_h {% if config.lib.export_header %} #include {{format_include(config.lib.export_header)}} {% endif %} #include {{format_include(config.lib.string_header)}} #include #include #include #include #include #include "{{config.crdtp.dir}}/error_support.h" #include "{{config.crdtp.dir}}/dispatch.h" #include "{{config.crdtp.dir}}/frontend_channel.h" #include "{{config.crdtp.dir}}/protocol_core.h" {% for namespace in config.protocol.namespace %} namespace {{namespace}} { {% endfor %} class DictionaryValue; using DispatchResponse = {{config.crdtp.namespace}}::DispatchResponse; using ErrorSupport = {{config.crdtp.namespace}}::ErrorSupport; using Serializable = {{config.crdtp.namespace}}::Serializable; using FrontendChannel = {{config.crdtp.namespace}}::FrontendChannel; using DomainDispatcher = {{config.crdtp.namespace}}::DomainDispatcher; using UberDispatcher = {{config.crdtp.namespace}}::UberDispatcher; class FundamentalValue; class ListValue; class Object; using Response = DispatchResponse; class SerializedValue; class StringValue; class Value; using {{config.crdtp.namespace}}::detail::PtrMaybe; using {{config.crdtp.namespace}}::detail::ValueMaybe; template using Maybe = {{config.crdtp.namespace}}::Maybe; namespace detail { template struct ArrayTypedef { typedef std::vector> type; }; template <> struct ArrayTypedef { typedef std::vector type; }; template <> struct ArrayTypedef { typedef std::vector type; }; template <> struct ArrayTypedef { typedef std::vector type; }; template <> struct ArrayTypedef { typedef std::vector type; }; template <> struct ArrayTypedef { typedef std::vector type; }; } // namespace detail template using Array = typename detail::ArrayTypedef::type; {% for namespace in config.protocol.namespace %} } // namespace {{namespace}} {% endfor %} #endif // !defined({{"_".join(config.protocol.namespace)}}_Forward_h)