/* * Copyright (c) 2011 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. */ /** * This file will test that the IDL snippet matches the comment. */ label Chrome { M14 = 1.0, M15 = 2.0 }; /* struct ist { void* X; }; */ struct ist { mem_t X; }; /* * struct ifaceFoo_1_0 { * int8_t (*mem1)(int16_t x, int32_t y); * int32_t (*mem2)(const struct ist* a); * int32_t (*mem3)(struct ist* b); * int32_t (*mem4)(const void** ptr); * int32_t (*mem5)(void** ptr); * }; * typedef struct ifaceFoo_1_0 ifaceFoo; */ interface ifaceFoo { int8_t mem1([in] int16_t x, [in] int32_t y); int32_t mem2([in] ist a); int32_t mem3([out] ist b); int32_t mem4([in] blob_t ptr); int32_t mem5([out] blob_t ptr); [version=2.0] int32_t mem6([inout] blob_t ptr); }; interface ifaceBar { int8_t testIface([in] ifaceFoo foo, [in] int32_t y); ifaceFoo createIface([in] str_t name); }; struct struct2 { ifaceBar bar; };