OLD | NEW |
1 module js_to_cpp { | 1 module js_to_cpp { |
2 | 2 |
3 // This struct encompasses all of the basic types, so that they | 3 // This struct encompasses all of the basic types, so that they |
4 // may be sent from C++ to JS and back for validation. | 4 // may be sent from C++ to JS and back for validation. |
5 struct EchoArgs { | 5 struct EchoArgs { |
6 int64 si64; | 6 int64 si64; |
7 int32 si32; | 7 int32 si32; |
8 int16 si16; | 8 int16 si16; |
9 int8 si8; | 9 int8 si8; |
10 uint64 ui64; | 10 uint64 ui64; |
11 uint32 ui32; | 11 uint32 ui32; |
12 uint16 ui16; | 12 uint16 ui16; |
13 uint8 ui8; | 13 uint8 ui8; |
14 float float_val; | 14 float float_val; |
15 float float_inf; | 15 float float_inf; |
16 float float_nan; | 16 float float_nan; |
17 double double_val; | 17 double double_val; |
18 double double_inf; | 18 double double_inf; |
19 double double_nan; | 19 double double_nan; |
20 string name; | 20 string name; |
21 string[] string_array; | 21 string[] string_array; |
22 handle<message_pipe> message_handle; | 22 handle<message_pipe> message_handle; |
23 handle<data_pipe_consumer> data_handle; | 23 handle<data_pipe_consumer> data_handle; |
24 }; | 24 }; |
25 | 25 |
| 26 struct EchoArgsList { |
| 27 EchoArgsList next; |
| 28 EchoArgs item; |
| 29 }; |
| 30 |
26 interface CppSide { | 31 interface CppSide { |
27 StartTest(); // Sent for all tests to notify that the JS side is now ready. | 32 StartTest(); // Sent for all tests to notify that the JS side is now ready. |
28 TestFinished(); // Sent in echo / bit-flip tests to indicate end. | 33 TestFinished(); // Sent in echo / bit-flip tests to indicate end. |
29 PingResponse(); | 34 PingResponse(); |
30 EchoResponse(EchoArgs arg1, EchoArgs arg2); | 35 EchoResponse(EchoArgsList list); |
31 BitFlipResponse(EchoArgs arg); | 36 BitFlipResponse(EchoArgs arg); |
32 }; | 37 }; |
33 | 38 |
34 [Client=CppSide] | 39 [Client=CppSide] |
35 interface JsSide { | 40 interface JsSide { |
36 Ping(); | 41 Ping(); |
37 Echo(int32 numIterations, EchoArgs arg); | 42 Echo(int32 numIterations, EchoArgsList list); |
38 BitFlip(EchoArgs arg); | 43 BitFlip(EchoArgs arg); |
39 }; | 44 }; |
40 | 45 |
41 } | 46 } |
OLD | NEW |