blob: 0d4cf59b3f63065d3c4164341386d9a54ed335ad [file] [log] [blame]
// Part of the Crubit project, under the Apache License v2.0 with LLVM
// Exceptions. See /LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
#ifndef CRUBIT_RS_BINDINGS_FROM_CC_TEST_GOLDEN_TEMPLATES_SOURCE_ORDER_H_
#define CRUBIT_RS_BINDINGS_FROM_CC_TEST_GOLDEN_TEMPLATES_SOURCE_ORDER_H_
template <typename T>
class MyTemplate final {
T t;
public:
void processT(T t);
};
struct TopLevel final {};
using Alias1 = MyTemplate<int>;
using Alias2 = MyTemplate<float>;
using Alias3 = MyTemplate<TopLevel>;
using Alias4 = MyTemplate<double>;
using Alias5 = MyTemplate<bool>;
using Alias6 = MyTemplate<MyTemplate<TopLevel>>;
namespace test_namespace_bindings {
struct Inner final {};
using Alias7 = MyTemplate<char>;
using Alias8 = MyTemplate<Inner>;
using Alias9 = MyTemplate<MyTemplate<Inner>>;
} // namespace test_namespace_bindings
#endif // CRUBIT_RS_BINDINGS_FROM_CC_TEST_GOLDEN_TEMPLATES_SOURCE_ORDER_H_