const uint8 kTwelve = 12;
const uint64 kTooBigForSignedInt64 = 9999999999999999999;
+const double kDoubleInfinity = double.INFINITY;
+const double kDoubleNegativeInfinity = double.NEGATIVE_INFINITY;
+const double kDoubleNaN = double.NAN;
+
+const float kFloatInfinity = float.INFINITY;
+const float kFloatNegativeInfinity = float.NEGATIVE_INFINITY;
+const float kFloatNaN = float.NAN;
+
struct Bar {
enum Type {
VERTICAL = 1,
bool a@2 = true;
bool b@3;
bool c@4;
- Bar bar@5;
- Bar[] extra_bars@7;
- uint8[] data@6;
- handle<message_pipe> source@9;
- handle<data_pipe_consumer>[] input_streams@10;
- handle<data_pipe_producer>[] output_streams@11;
- bool[][] array_of_array_of_bools@12;
- string[][][] multi_array_of_strings@13;
- bool[] array_of_bools@14;
+ Bar? bar@5;
+ Bar[]? extra_bars@7;
+ uint8[]? data@6;
+ handle<message_pipe>? source@9;
+ handle<data_pipe_consumer>[]? input_streams@10;
+ handle<data_pipe_producer>[]? output_streams@11;
+ bool[][]? array_of_array_of_bools@12;
+ string[][][]? multi_array_of_strings@13;
+ bool[]? array_of_bools@14;
};
struct DefaultsTest {
uint64 a23@23 = 0xFFFFFFFFFFFFFFFF;
int64 a24@24 = 0x123456789;
int64 a25@25 = -0x123456789;
+
+ double a26@26 = double.INFINITY;
+ double a27@27 = double.NEGATIVE_INFINITY;
+ double a28@28 = double.NAN;
+ float a29@29 = float.INFINITY;
+ float a30@30 = float.NEGATIVE_INFINITY;
+ float a31@31 = float.NAN;
};
struct StructWithHoleV1 {
EXTRA
};
const uint8 kFavoriteBaz = 1;
- Frobinate@0(Foo foo@0, BazOptions baz@1, Port port@2);
+ Frobinate@0(Foo? foo@0, BazOptions baz@1, Port? port@2);
GetPort@1(Port& port @0);
};