blob: e9265349a4c36c0b4a0888f3f30db58b1ec344e8 [file] [log] [blame]
Aliaksei Budavei100a6652024-03-02 01:11:14 +03001class NumbersTests
2{
3 static {
4 double[] dd = {
5 0x.0p0, 0x0.p0, 0x0.0p0, 0x0P0,
6 0x.0p0d, 0x0.p0d, 0x0.0p0d, 0x0P0D,
7 0x.0p0f, 0x0.p0f, 0x0.0p0f, 0x0P0F,
8 0x.0p0, 0x0.p0, 0x0.0p0, 0x0P0,
9 0x.0p0d, 0x0.p0d, 0x0.0p0d, 0x0P0D,
10 0x.0p0f, 0x0.p0f, 0x0.0p0f, 0x0P0F,
11 0x.0p-0, 0x0.p-0, 0x0.0p-0, 0x0P-0,
12 0x.0p-0d, 0x0.p-0d, 0x0.0p-0d, 0x0P-0D,
13 0x.0p-0f, 0x0.p-0f, 0x0.0p-0f, 0x0P-0F,
14 0x.0p+0, 0x0.p+0, 0x0.0p+0, 0x0P+0,
15 0x.0p+0d, 0x0.p+0d, 0x0.0p+0d, 0x0P+0D,
16 0x.0p+0f, 0x0.p+0f, 0x0.0p+0f, 0x0P+0F,
17
18 1., 1.2, 1.2e3, 1.2e3d, 1.2e3f,
19 1.2e-3, 1.2e-3d, 1.2E-3F,
20 1.2e+3, 1.2E+3D, 1.2e+3f,
21 .2, .2e3, .2e3d, .2e3f,
22 .2e-3, .2e-3d, .2E-3F,
23 .2e+3, .2E+3D, .2e+3f,
24 1e3, 1e3d, 1e3f,
25 1e-3, 1e-3d, 1E-3F,
26 1e+3, 1E+3D, 1e+3f,
27 1d, 1D, 1f, 1F,
28
29//// MALFORMED: :let g:java_comment_strings = 1 | doautocmd Syntax
30// 0_x.0p0, 0x._0p0, 0x.0_p0, 0x.0p_0, 0x.0p0_,
31// 0x0_.0p0, 0x_0.0p0, 0xp0,
32 };
33
34 int O = 0;
35 int OO = 00;
36 int OxO = 0x0;
37
38 int x = 0x12_345_678;
39 int y = 0b01_01_01_01_01;
40 int z = 0__1__2__3__4__5__6__7;
41
42 // String.format("%a", -1.0)
43 double minus_one_d = -0x1.0p0;
44
45 double z_d = -0x.0p0;
46 double y_d = 0xap1__0__0;
47 double x_d = .0__1__2__3__4__5__6__7__8__9;
48 double dot_O = .0;
49
50 // JLS, §3.10.2:
51 float max_dec_f = 3.4028235e38f;
52 float max_hex_f = 0x1.fffffeP+127f;
53 float min_dec_f = 1.4e-45f;
54 float min_hex_f_a = 0x0.000002P-126f;
55 float min_hex_f_b = 0x1.0P-149f;
56
57 double max_dec_d = 1.7976931348623157e3__0__8;
58 double max_hex_d = 0x1.f_ffff_ffff_ffffP+1023;
59 double min_dec_d = 4.9e-3__2__4;
60 double min_hex_d_a = 0x0.0_0000_0000_0001P-1022;
61 double min_hex_d_b = 0x1.0P-1074;
62
63 // JLS, §3.10.1:
64 int max_hex = 0x7fff_ffff;
65 int max_oct = 0177_7777_7777;
66 int max_bin = 0b0111_1111_1111_1111_1111_1111_1111_1111;
67
68 int min_hex = 0x8000_0000;
69 int min_oct = 0200_0000_0000;
70 int min_bin = 0b1000_0000_0000_0000_0000_0000_0000_0000;
71
72 int minus_one_hex = 0xffff_ffff;
73 int minus_one_oct = 0377_7777_7777;
74 int minus_one_bin = 0b1111_1111_1111_1111_1111_1111_1111_1111;
75
76 long max_hex_l = 0x7fff_ffff_ffff_ffffL;
77 long max_oct_l = 07_7777_7777_7777_7777_7777L;
78 long max_bin_l = 0b0111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L;
79
80 long min_hex_l = 0x8000_0000_0000_0000L;
81 long min_oct_l = 010_0000_0000_0000_0000_0000L;
82 long min_bin_l = 0b1000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000L;
83
84 long minus_one_hex_l = 0xffff_ffff_ffff_ffffL;
85 long minus_one_oct_l = 017_7777_7777_7777_7777_7777L;
86 long minus_one_bin_l = 0b1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111_1111L;
87 }
88}