@zigc/lib 0.17.0-dev.644 → 0.17.0-dev.657
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/compiler/Maker/ScannedConfig.zig +4 -3
- package/compiler/Maker/Step/FindProgram.zig +2 -2
- package/compiler/Maker/Watch/FsEvents.zig +3 -2
- package/compiler/aro/aro/Attribute.zig +52 -51
- package/compiler/aro/aro/Compilation.zig +5 -5
- package/compiler/aro/aro/Diagnostics.zig +7 -7
- package/compiler/aro/aro/Parser.zig +2 -2
- package/compiler/aro/aro/Tree.zig +11 -11
- package/compiler/aro/aro/features.zig +4 -4
- package/compiler/aro/aro/text_literal.zig +2 -2
- package/compiler/aro/backend/Interner.zig +14 -13
- package/compiler/configurer.zig +2 -2
- package/compiler/resinator/bmp.zig +3 -2
- package/compiler/resinator/code_pages.zig +14 -12
- package/compiler/resinator/cvtres.zig +11 -10
- package/compiler/resinator/errors.zig +18 -22
- package/compiler/resinator/lang.zig +7 -7
- package/compiler/resinator/parse.zig +1 -1
- package/compiler/translate-c/ast.zig +6 -6
- package/docs/wasm/markdown/Document.zig +3 -3
- package/docs/wasm/markdown/Parser.zig +3 -3
- package/package.json +1 -1
- package/std/Build/Cache.zig +2 -2
- package/std/Build/Configuration.zig +19 -16
- package/std/Build/Step/ConfigHeader.zig +3 -2
- package/std/Build/Step/Options.zig +28 -22
- package/std/Build.zig +52 -53
- package/std/Io/Kqueue.zig +2 -2
- package/std/Io/Reader.zig +1 -1
- package/std/Io/Threaded.zig +18 -15
- package/std/Io/Uring.zig +2 -2
- package/std/Io/Writer.zig +18 -18
- package/std/Io/net.zig +3 -1
- package/std/Io.zig +7 -6
- package/std/Progress.zig +2 -2
- package/std/Target/aarch64.zig +2 -2
- package/std/Target/alpha.zig +2 -2
- package/std/Target/amdgcn.zig +2 -2
- package/std/Target/arc.zig +2 -2
- package/std/Target/arm.zig +2 -2
- package/std/Target/avr.zig +2 -2
- package/std/Target/bpf.zig +2 -2
- package/std/Target/csky.zig +2 -2
- package/std/Target/hexagon.zig +2 -2
- package/std/Target/hppa.zig +2 -2
- package/std/Target/kvx.zig +2 -2
- package/std/Target/lanai.zig +2 -2
- package/std/Target/loongarch.zig +2 -2
- package/std/Target/m68k.zig +2 -2
- package/std/Target/mips.zig +2 -2
- package/std/Target/msp430.zig +2 -2
- package/std/Target/nvptx.zig +2 -2
- package/std/Target/powerpc.zig +2 -2
- package/std/Target/propeller.zig +2 -2
- package/std/Target/riscv.zig +2 -2
- package/std/Target/s390x.zig +2 -2
- package/std/Target/sparc.zig +2 -2
- package/std/Target/spirv.zig +2 -2
- package/std/Target/ve.zig +2 -2
- package/std/Target/wasm.zig +2 -2
- package/std/Target/x86.zig +2 -2
- package/std/Target/xcore.zig +2 -2
- package/std/Target/xtensa.zig +2 -2
- package/std/Target.zig +4 -4
- package/std/c/darwin.zig +1 -1
- package/std/coff.zig +1 -1
- package/std/crypto/codecs/asn1/Oid.zig +8 -8
- package/std/crypto/codecs/asn1/der/Decoder.zig +7 -7
- package/std/crypto/codecs/asn1/der/Encoder.zig +10 -8
- package/std/crypto/phc_encoding.zig +23 -20
- package/std/crypto/timing_safe.zig +1 -1
- package/std/crypto/tls/Client.zig +3 -3
- package/std/crypto/tls.zig +1 -1
- package/std/debug/Dwarf/Unwind/VirtualMachine.zig +11 -5
- package/std/debug/ElfFile.zig +12 -8
- package/std/debug/MachOFile.zig +2 -2
- package/std/debug/SelfInfo/MachO.zig +2 -2
- package/std/debug/SelfInfo/Windows.zig +2 -2
- package/std/elf.zig +7 -7
- package/std/enums.zig +66 -67
- package/std/gpu.zig +1 -1
- package/std/hash/auto_hash.zig +8 -8
- package/std/hash/verify.zig +3 -3
- package/std/http/Client.zig +2 -2
- package/std/json/Stringify.zig +14 -14
- package/std/json/static.zig +47 -31
- package/std/lang.zig +65 -97
- package/std/math.zig +2 -2
- package/std/mem/Allocator.zig +9 -9
- package/std/mem.zig +86 -102
- package/std/meta/trailer_flags.zig +26 -19
- package/std/meta.zig +131 -171
- package/std/multi_array_list.zig +49 -57
- package/std/os/uefi/protocol/device_path.zig +8 -7
- package/std/os/uefi/tables/boot_services.zig +1 -1
- package/std/os/windows.zig +9 -15
- package/std/start.zig +6 -6
- package/std/testing/Smith.zig +35 -21
- package/std/testing.zig +15 -15
- package/std/zig/Ast.zig +4 -4
- package/std/zig/AstGen.zig +42 -42
- package/std/zig/ErrorBundle.zig +16 -13
- package/std/zig/LibCInstallation.zig +11 -11
- package/std/zig/Parse.zig +6 -6
- package/std/zig/Zir.zig +10 -10
- package/std/zig/c_translation/helpers.zig +2 -2
- package/std/zig/llvm/BitcodeReader.zig +3 -3
- package/std/zig/llvm/Builder.zig +124 -93
- package/std/zig/llvm/bitcode_writer.zig +4 -4
- package/std/zig/system/windows.zig +11 -11
- package/std/zig/system.zig +4 -4
- package/std/zig.zig +4 -4
- package/std/zon/Serializer.zig +28 -23
- package/std/zon/parse.zig +58 -61
package/std/Target/avr.zig
CHANGED
|
@@ -52,7 +52,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
52
52
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
53
53
|
|
|
54
54
|
pub const all_features = blk: {
|
|
55
|
-
const len = @typeInfo(Feature).@"enum".
|
|
55
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
56
56
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
57
57
|
var result: [len]CpuFeature = undefined;
|
|
58
58
|
result[@intFromEnum(Feature.addsubiw)] = .{
|
|
@@ -388,7 +388,7 @@ pub const all_features = blk: {
|
|
|
388
388
|
const ti = @typeInfo(Feature);
|
|
389
389
|
for (&result, 0..) |*elem, i| {
|
|
390
390
|
elem.index = i;
|
|
391
|
-
elem.name = ti.@"enum".
|
|
391
|
+
elem.name = ti.@"enum".field_names[i];
|
|
392
392
|
}
|
|
393
393
|
break :blk result;
|
|
394
394
|
};
|
package/std/Target/bpf.zig
CHANGED
|
@@ -17,7 +17,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
17
17
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
18
18
|
|
|
19
19
|
pub const all_features = blk: {
|
|
20
|
-
const len = @typeInfo(Feature).@"enum".
|
|
20
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
21
21
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
22
22
|
var result: [len]CpuFeature = undefined;
|
|
23
23
|
result[@intFromEnum(Feature.allows_misaligned_mem_access)] = .{
|
|
@@ -43,7 +43,7 @@ pub const all_features = blk: {
|
|
|
43
43
|
const ti = @typeInfo(Feature);
|
|
44
44
|
for (&result, 0..) |*elem, i| {
|
|
45
45
|
elem.index = i;
|
|
46
|
-
elem.name = ti.@"enum".
|
|
46
|
+
elem.name = ti.@"enum".field_names[i];
|
|
47
47
|
}
|
|
48
48
|
break :blk result;
|
|
49
49
|
};
|
package/std/Target/csky.zig
CHANGED
|
@@ -76,7 +76,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
76
76
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
77
77
|
|
|
78
78
|
pub const all_features = blk: {
|
|
79
|
-
const len = @typeInfo(Feature).@"enum".
|
|
79
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
80
80
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
81
81
|
var result: [len]CpuFeature = undefined;
|
|
82
82
|
result[@intFromEnum(Feature.@"10e60")] = .{
|
|
@@ -418,7 +418,7 @@ pub const all_features = blk: {
|
|
|
418
418
|
const ti = @typeInfo(Feature);
|
|
419
419
|
for (&result, 0..) |*elem, i| {
|
|
420
420
|
elem.index = i;
|
|
421
|
-
elem.name = ti.@"enum".
|
|
421
|
+
elem.name = ti.@"enum".field_names[i];
|
|
422
422
|
}
|
|
423
423
|
break :blk result;
|
|
424
424
|
};
|
package/std/Target/hexagon.zig
CHANGED
|
@@ -60,7 +60,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
60
60
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
61
61
|
|
|
62
62
|
pub const all_features = blk: {
|
|
63
|
-
const len = @typeInfo(Feature).@"enum".
|
|
63
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
64
64
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
65
65
|
var result: [len]CpuFeature = undefined;
|
|
66
66
|
result[@intFromEnum(Feature.audio)] = .{
|
|
@@ -334,7 +334,7 @@ pub const all_features = blk: {
|
|
|
334
334
|
const ti = @typeInfo(Feature);
|
|
335
335
|
for (&result, 0..) |*elem, i| {
|
|
336
336
|
elem.index = i;
|
|
337
|
-
elem.name = ti.@"enum".
|
|
337
|
+
elem.name = ti.@"enum".field_names[i];
|
|
338
338
|
}
|
|
339
339
|
break :blk result;
|
|
340
340
|
};
|
package/std/Target/hppa.zig
CHANGED
|
@@ -18,7 +18,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
18
18
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
19
19
|
|
|
20
20
|
pub const all_features = blk: {
|
|
21
|
-
const len = @typeInfo(Feature).@"enum".
|
|
21
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
22
22
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
23
23
|
var result: [len]CpuFeature = undefined;
|
|
24
24
|
result[@intFromEnum(Feature.@"64bit")] = .{
|
|
@@ -56,7 +56,7 @@ pub const all_features = blk: {
|
|
|
56
56
|
const ti = @typeInfo(Feature);
|
|
57
57
|
for (&result, 0..) |*elem, i| {
|
|
58
58
|
elem.index = i;
|
|
59
|
-
elem.name = ti.@"enum".
|
|
59
|
+
elem.name = ti.@"enum".field_names[i];
|
|
60
60
|
}
|
|
61
61
|
break :blk result;
|
|
62
62
|
};
|
package/std/Target/kvx.zig
CHANGED
|
@@ -16,7 +16,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
16
16
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
17
17
|
|
|
18
18
|
pub const all_features = blk: {
|
|
19
|
-
const len = @typeInfo(Feature).@"enum".
|
|
19
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
20
20
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
21
21
|
var result: [len]CpuFeature = undefined;
|
|
22
22
|
result[@intFromEnum(Feature.v3_1)] = .{
|
|
@@ -41,7 +41,7 @@ pub const all_features = blk: {
|
|
|
41
41
|
const ti = @typeInfo(Feature);
|
|
42
42
|
for (&result, 0..) |*elem, i| {
|
|
43
43
|
elem.index = i;
|
|
44
|
-
elem.name = ti.@"enum".
|
|
44
|
+
elem.name = ti.@"enum".field_names[i];
|
|
45
45
|
}
|
|
46
46
|
break :blk result;
|
|
47
47
|
};
|
package/std/Target/lanai.zig
CHANGED
|
@@ -12,13 +12,13 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
12
12
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
13
13
|
|
|
14
14
|
pub const all_features = blk: {
|
|
15
|
-
const len = @typeInfo(Feature).@"enum".
|
|
15
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
16
16
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
17
17
|
var result: [len]CpuFeature = undefined;
|
|
18
18
|
const ti = @typeInfo(Feature);
|
|
19
19
|
for (&result, 0..) |*elem, i| {
|
|
20
20
|
elem.index = i;
|
|
21
|
-
elem.name = ti.@"enum".
|
|
21
|
+
elem.name = ti.@"enum".field_names[i];
|
|
22
22
|
}
|
|
23
23
|
break :blk result;
|
|
24
24
|
};
|
package/std/Target/loongarch.zig
CHANGED
|
@@ -34,7 +34,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
34
34
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
35
35
|
|
|
36
36
|
pub const all_features = blk: {
|
|
37
|
-
const len = @typeInfo(Feature).@"enum".
|
|
37
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
38
38
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
39
39
|
var result: [len]CpuFeature = undefined;
|
|
40
40
|
result[@intFromEnum(Feature.@"32bit")] = .{
|
|
@@ -153,7 +153,7 @@ pub const all_features = blk: {
|
|
|
153
153
|
const ti = @typeInfo(Feature);
|
|
154
154
|
for (&result, 0..) |*elem, i| {
|
|
155
155
|
elem.index = i;
|
|
156
|
-
elem.name = ti.@"enum".
|
|
156
|
+
elem.name = ti.@"enum".field_names[i];
|
|
157
157
|
}
|
|
158
158
|
break :blk result;
|
|
159
159
|
};
|
package/std/Target/m68k.zig
CHANGED
|
@@ -36,7 +36,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
36
36
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
37
37
|
|
|
38
38
|
pub const all_features = blk: {
|
|
39
|
-
const len = @typeInfo(Feature).@"enum".
|
|
39
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
40
40
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
41
41
|
var result: [len]CpuFeature = undefined;
|
|
42
42
|
result[@intFromEnum(Feature.isa_68000)] = .{
|
|
@@ -170,7 +170,7 @@ pub const all_features = blk: {
|
|
|
170
170
|
const ti = @typeInfo(Feature);
|
|
171
171
|
for (&result, 0..) |*elem, i| {
|
|
172
172
|
elem.index = i;
|
|
173
|
-
elem.name = ti.@"enum".
|
|
173
|
+
elem.name = ti.@"enum".field_names[i];
|
|
174
174
|
}
|
|
175
175
|
break :blk result;
|
|
176
176
|
};
|
package/std/Target/mips.zig
CHANGED
|
@@ -70,7 +70,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
70
70
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
71
71
|
|
|
72
72
|
pub const all_features = blk: {
|
|
73
|
-
const len = @typeInfo(Feature).@"enum".
|
|
73
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
74
74
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
75
75
|
var result: [len]CpuFeature = undefined;
|
|
76
76
|
result[@intFromEnum(Feature.abs2008)] = .{
|
|
@@ -425,7 +425,7 @@ pub const all_features = blk: {
|
|
|
425
425
|
const ti = @typeInfo(Feature);
|
|
426
426
|
for (&result, 0..) |*elem, i| {
|
|
427
427
|
elem.index = i;
|
|
428
|
-
elem.name = ti.@"enum".
|
|
428
|
+
elem.name = ti.@"enum".field_names[i];
|
|
429
429
|
}
|
|
430
430
|
break :blk result;
|
|
431
431
|
};
|
package/std/Target/msp430.zig
CHANGED
|
@@ -17,7 +17,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
17
17
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
18
18
|
|
|
19
19
|
pub const all_features = blk: {
|
|
20
|
-
const len = @typeInfo(Feature).@"enum".
|
|
20
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
21
21
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
22
22
|
var result: [len]CpuFeature = undefined;
|
|
23
23
|
result[@intFromEnum(Feature.ext)] = .{
|
|
@@ -43,7 +43,7 @@ pub const all_features = blk: {
|
|
|
43
43
|
const ti = @typeInfo(Feature);
|
|
44
44
|
for (&result, 0..) |*elem, i| {
|
|
45
45
|
elem.index = i;
|
|
46
|
-
elem.name = ti.@"enum".
|
|
46
|
+
elem.name = ti.@"enum".field_names[i];
|
|
47
47
|
}
|
|
48
48
|
break :blk result;
|
|
49
49
|
};
|
package/std/Target/nvptx.zig
CHANGED
|
@@ -84,7 +84,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
84
84
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
85
85
|
|
|
86
86
|
pub const all_features = blk: {
|
|
87
|
-
const len = @typeInfo(Feature).@"enum".
|
|
87
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
88
88
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
89
89
|
var result: [len]CpuFeature = undefined;
|
|
90
90
|
result[@intFromEnum(Feature.ptx32)] = .{
|
|
@@ -445,7 +445,7 @@ pub const all_features = blk: {
|
|
|
445
445
|
const ti = @typeInfo(Feature);
|
|
446
446
|
for (&result, 0..) |*elem, i| {
|
|
447
447
|
elem.index = i;
|
|
448
|
-
elem.name = ti.@"enum".
|
|
448
|
+
elem.name = ti.@"enum".field_names[i];
|
|
449
449
|
}
|
|
450
450
|
break :blk result;
|
|
451
451
|
};
|
package/std/Target/powerpc.zig
CHANGED
|
@@ -93,7 +93,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
93
93
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
94
94
|
|
|
95
95
|
pub const all_features = blk: {
|
|
96
|
-
const len = @typeInfo(Feature).@"enum".
|
|
96
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
97
97
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
98
98
|
var result: [len]CpuFeature = undefined;
|
|
99
99
|
result[@intFromEnum(Feature.@"64bit")] = .{
|
|
@@ -595,7 +595,7 @@ pub const all_features = blk: {
|
|
|
595
595
|
const ti = @typeInfo(Feature);
|
|
596
596
|
for (&result, 0..) |*elem, i| {
|
|
597
597
|
elem.index = i;
|
|
598
|
-
elem.name = ti.@"enum".
|
|
598
|
+
elem.name = ti.@"enum".field_names[i];
|
|
599
599
|
}
|
|
600
600
|
break :blk result;
|
|
601
601
|
};
|
package/std/Target/propeller.zig
CHANGED
|
@@ -14,7 +14,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
14
14
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
15
15
|
|
|
16
16
|
pub const all_features = blk: {
|
|
17
|
-
const len = @typeInfo(Feature).@"enum".
|
|
17
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
18
18
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
19
19
|
var result: [len]CpuFeature = undefined;
|
|
20
20
|
result[@intFromEnum(Feature.p2)] = .{
|
|
@@ -25,7 +25,7 @@ pub const all_features = blk: {
|
|
|
25
25
|
const ti = @typeInfo(Feature);
|
|
26
26
|
for (&result, 0..) |*elem, i| {
|
|
27
27
|
elem.index = i;
|
|
28
|
-
elem.name = ti.@"enum".
|
|
28
|
+
elem.name = ti.@"enum".field_names[i];
|
|
29
29
|
}
|
|
30
30
|
break :blk result;
|
|
31
31
|
};
|
package/std/Target/riscv.zig
CHANGED
|
@@ -361,7 +361,7 @@ pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
|
361
361
|
|
|
362
362
|
pub const all_features = blk: {
|
|
363
363
|
@setEvalBranchQuota(2000);
|
|
364
|
-
const len = @typeInfo(Feature).@"enum".
|
|
364
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
365
365
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
366
366
|
var result: [len]CpuFeature = undefined;
|
|
367
367
|
result[@intFromEnum(Feature.@"32bit")] = .{
|
|
@@ -2675,7 +2675,7 @@ pub const all_features = blk: {
|
|
|
2675
2675
|
const ti = @typeInfo(Feature);
|
|
2676
2676
|
for (&result, 0..) |*elem, i| {
|
|
2677
2677
|
elem.index = i;
|
|
2678
|
-
elem.name = ti.@"enum".
|
|
2678
|
+
elem.name = ti.@"enum".field_names[i];
|
|
2679
2679
|
}
|
|
2680
2680
|
break :blk result;
|
|
2681
2681
|
};
|
package/std/Target/s390x.zig
CHANGED
|
@@ -62,7 +62,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
62
62
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
63
63
|
|
|
64
64
|
pub const all_features = blk: {
|
|
65
|
-
const len = @typeInfo(Feature).@"enum".
|
|
65
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
66
66
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
67
67
|
var result: [len]CpuFeature = undefined;
|
|
68
68
|
result[@intFromEnum(Feature.backchain)] = .{
|
|
@@ -313,7 +313,7 @@ pub const all_features = blk: {
|
|
|
313
313
|
const ti = @typeInfo(Feature);
|
|
314
314
|
for (&result, 0..) |*elem, i| {
|
|
315
315
|
elem.index = i;
|
|
316
|
-
elem.name = ti.@"enum".
|
|
316
|
+
elem.name = ti.@"enum".field_names[i];
|
|
317
317
|
}
|
|
318
318
|
break :blk result;
|
|
319
319
|
};
|
package/std/Target/sparc.zig
CHANGED
|
@@ -72,7 +72,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
72
72
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
73
73
|
|
|
74
74
|
pub const all_features = blk: {
|
|
75
|
-
const len = @typeInfo(Feature).@"enum".
|
|
75
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
76
76
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
77
77
|
var result: [len]CpuFeature = undefined;
|
|
78
78
|
result[@intFromEnum(Feature.@"64bit")] = .{
|
|
@@ -395,7 +395,7 @@ pub const all_features = blk: {
|
|
|
395
395
|
const ti = @typeInfo(Feature);
|
|
396
396
|
for (&result, 0..) |*elem, i| {
|
|
397
397
|
elem.index = i;
|
|
398
|
-
elem.name = ti.@"enum".
|
|
398
|
+
elem.name = ti.@"enum".field_names[i];
|
|
399
399
|
}
|
|
400
400
|
break :blk result;
|
|
401
401
|
};
|
package/std/Target/spirv.zig
CHANGED
|
@@ -29,7 +29,7 @@ pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
|
29
29
|
|
|
30
30
|
pub const all_features = blk: {
|
|
31
31
|
@setEvalBranchQuota(2000);
|
|
32
|
-
const len = @typeInfo(Feature).@"enum".
|
|
32
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
33
33
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
34
34
|
var result: [len]CpuFeature = undefined;
|
|
35
35
|
result[@intFromEnum(Feature.arbitrary_precision_integers)] = .{
|
|
@@ -138,7 +138,7 @@ pub const all_features = blk: {
|
|
|
138
138
|
const ti = @typeInfo(Feature);
|
|
139
139
|
for (&result, 0..) |*elem, i| {
|
|
140
140
|
elem.index = i;
|
|
141
|
-
elem.name = ti.@"enum".
|
|
141
|
+
elem.name = ti.@"enum".field_names[i];
|
|
142
142
|
}
|
|
143
143
|
break :blk result;
|
|
144
144
|
};
|
package/std/Target/ve.zig
CHANGED
|
@@ -14,7 +14,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
14
14
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
15
15
|
|
|
16
16
|
pub const all_features = blk: {
|
|
17
|
-
const len = @typeInfo(Feature).@"enum".
|
|
17
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
18
18
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
19
19
|
var result: [len]CpuFeature = undefined;
|
|
20
20
|
result[@intFromEnum(Feature.vpu)] = .{
|
|
@@ -25,7 +25,7 @@ pub const all_features = blk: {
|
|
|
25
25
|
const ti = @typeInfo(Feature);
|
|
26
26
|
for (&result, 0..) |*elem, i| {
|
|
27
27
|
elem.index = i;
|
|
28
|
-
elem.name = ti.@"enum".
|
|
28
|
+
elem.name = ti.@"enum".field_names[i];
|
|
29
29
|
}
|
|
30
30
|
break :blk result;
|
|
31
31
|
};
|
package/std/Target/wasm.zig
CHANGED
|
@@ -32,7 +32,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
32
32
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
33
33
|
|
|
34
34
|
pub const all_features = blk: {
|
|
35
|
-
const len = @typeInfo(Feature).@"enum".
|
|
35
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
36
36
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
37
37
|
var result: [len]CpuFeature = undefined;
|
|
38
38
|
result[@intFromEnum(Feature.atomics)] = .{
|
|
@@ -139,7 +139,7 @@ pub const all_features = blk: {
|
|
|
139
139
|
const ti = @typeInfo(Feature);
|
|
140
140
|
for (&result, 0..) |*elem, i| {
|
|
141
141
|
elem.index = i;
|
|
142
|
-
elem.name = ti.@"enum".
|
|
142
|
+
elem.name = ti.@"enum".field_names[i];
|
|
143
143
|
}
|
|
144
144
|
break :blk result;
|
|
145
145
|
};
|
package/std/Target/x86.zig
CHANGED
|
@@ -215,7 +215,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
215
215
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
216
216
|
|
|
217
217
|
pub const all_features = blk: {
|
|
218
|
-
const len = @typeInfo(Feature).@"enum".
|
|
218
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
219
219
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
220
220
|
var result: [len]CpuFeature = undefined;
|
|
221
221
|
result[@intFromEnum(Feature.@"16bit_mode")] = .{
|
|
@@ -1374,7 +1374,7 @@ pub const all_features = blk: {
|
|
|
1374
1374
|
const ti = @typeInfo(Feature);
|
|
1375
1375
|
for (&result, 0..) |*elem, i| {
|
|
1376
1376
|
elem.index = i;
|
|
1377
|
-
elem.name = ti.@"enum".
|
|
1377
|
+
elem.name = ti.@"enum".field_names[i];
|
|
1378
1378
|
}
|
|
1379
1379
|
break :blk result;
|
|
1380
1380
|
};
|
package/std/Target/xcore.zig
CHANGED
|
@@ -12,13 +12,13 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
12
12
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
13
13
|
|
|
14
14
|
pub const all_features = blk: {
|
|
15
|
-
const len = @typeInfo(Feature).@"enum".
|
|
15
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
16
16
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
17
17
|
var result: [len]CpuFeature = undefined;
|
|
18
18
|
const ti = @typeInfo(Feature);
|
|
19
19
|
for (&result, 0..) |*elem, i| {
|
|
20
20
|
elem.index = i;
|
|
21
|
-
elem.name = ti.@"enum".
|
|
21
|
+
elem.name = ti.@"enum".field_names[i];
|
|
22
22
|
}
|
|
23
23
|
break :blk result;
|
|
24
24
|
};
|
package/std/Target/xtensa.zig
CHANGED
|
@@ -50,7 +50,7 @@ pub const featureSetHasAny = CpuFeature.FeatureSetFns(Feature).featureSetHasAny;
|
|
|
50
50
|
pub const featureSetHasAll = CpuFeature.FeatureSetFns(Feature).featureSetHasAll;
|
|
51
51
|
|
|
52
52
|
pub const all_features = blk: {
|
|
53
|
-
const len = @typeInfo(Feature).@"enum".
|
|
53
|
+
const len = @typeInfo(Feature).@"enum".field_names.len;
|
|
54
54
|
std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
|
|
55
55
|
var result: [len]CpuFeature = undefined;
|
|
56
56
|
result[@intFromEnum(Feature.bool)] = .{
|
|
@@ -251,7 +251,7 @@ pub const all_features = blk: {
|
|
|
251
251
|
const ti = @typeInfo(Feature);
|
|
252
252
|
for (&result, 0..) |*elem, i| {
|
|
253
253
|
elem.index = i;
|
|
254
|
-
elem.name = ti.@"enum".
|
|
254
|
+
elem.name = ti.@"enum".field_names[i];
|
|
255
255
|
}
|
|
256
256
|
break :blk result;
|
|
257
257
|
};
|
package/std/Target.zig
CHANGED
|
@@ -1764,10 +1764,10 @@ pub const Cpu = struct {
|
|
|
1764
1764
|
|
|
1765
1765
|
fn allCpusFromDecls(comptime cpus: type) []const *const Cpu.Model {
|
|
1766
1766
|
@setEvalBranchQuota(2000);
|
|
1767
|
-
const
|
|
1768
|
-
var array: [
|
|
1769
|
-
for (
|
|
1770
|
-
array[i] = &@field(cpus,
|
|
1767
|
+
const decl_names = @typeInfo(cpus).@"struct".decl_names;
|
|
1768
|
+
var array: [decl_names.len]*const Cpu.Model = undefined;
|
|
1769
|
+
for (decl_names, 0..) |decl_name, i| {
|
|
1770
|
+
array[i] = &@field(cpus, decl_name);
|
|
1771
1771
|
}
|
|
1772
1772
|
const finalized = array;
|
|
1773
1773
|
return &finalized;
|
package/std/c/darwin.zig
CHANGED
|
@@ -54,7 +54,7 @@ pub const EXC = enum(exception_type_t) {
|
|
|
54
54
|
|
|
55
55
|
_,
|
|
56
56
|
|
|
57
|
-
pub const TYPES_COUNT = @typeInfo(EXC).@"enum".
|
|
57
|
+
pub const TYPES_COUNT = @typeInfo(EXC).@"enum".field_names.len;
|
|
58
58
|
pub const SOFT_SIGNAL = 0x10003;
|
|
59
59
|
|
|
60
60
|
pub const MASK = packed struct(u32) {
|
package/std/coff.zig
CHANGED
|
@@ -1386,7 +1386,7 @@ pub const IMAGE = struct {
|
|
|
1386
1386
|
RESERVED = 15,
|
|
1387
1387
|
_,
|
|
1388
1388
|
|
|
1389
|
-
pub const len = @typeInfo(IMAGE.DIRECTORY_ENTRY).@"enum".
|
|
1389
|
+
pub const len = @typeInfo(IMAGE.DIRECTORY_ENTRY).@"enum".field_names.len;
|
|
1390
1390
|
};
|
|
1391
1391
|
|
|
1392
1392
|
pub const FILE = struct {
|
|
@@ -177,27 +177,27 @@ pub fn StaticMap(comptime Enum: type) type {
|
|
|
177
177
|
pub fn initComptime(comptime key_pairs: anytype) ReturnType {
|
|
178
178
|
const struct_info = @typeInfo(@TypeOf(key_pairs)).@"struct";
|
|
179
179
|
const error_msg = "Each field of '" ++ @typeName(Enum) ++ "' must map to exactly one OID";
|
|
180
|
-
if (
|
|
180
|
+
if (enum_info.mode == .nonexhaustive or enum_info.field_names.len != struct_info.field_names.len) {
|
|
181
181
|
@compileError(error_msg);
|
|
182
182
|
}
|
|
183
183
|
|
|
184
184
|
comptime var enum_to_oid = EnumToOid.initUndefined();
|
|
185
185
|
|
|
186
186
|
const KeyPair = struct { []const u8, Enum };
|
|
187
|
-
comptime var static_key_pairs: [enum_info.
|
|
187
|
+
comptime var static_key_pairs: [enum_info.field_names.len]KeyPair = undefined;
|
|
188
188
|
|
|
189
|
-
comptime for (enum_info.
|
|
190
|
-
if (!@hasField(@TypeOf(key_pairs),
|
|
191
|
-
@compileError("Field '" ++
|
|
189
|
+
comptime for (enum_info.field_names, enum_info.field_values, 0..) |f_name, f_value, i| {
|
|
190
|
+
if (!@hasField(@TypeOf(key_pairs), f_name)) {
|
|
191
|
+
@compileError("Field '" ++ f_name ++ "' missing Oid.StaticMap entry");
|
|
192
192
|
}
|
|
193
|
-
const encoded = &encodeComptime(@field(key_pairs,
|
|
194
|
-
const tag: Enum = @enumFromInt(
|
|
193
|
+
const encoded = &encodeComptime(@field(key_pairs, f_name));
|
|
194
|
+
const tag: Enum = @enumFromInt(f_value);
|
|
195
195
|
static_key_pairs[i] = .{ encoded, tag };
|
|
196
196
|
enum_to_oid.set(tag, encoded);
|
|
197
197
|
};
|
|
198
198
|
|
|
199
199
|
const oid_to_enum = std.StaticStringMap(Enum).initComptime(static_key_pairs);
|
|
200
|
-
if (oid_to_enum.values().len != enum_info.
|
|
200
|
+
if (oid_to_enum.values().len != enum_info.field_names.len) @compileError(error_msg);
|
|
201
201
|
|
|
202
202
|
return ReturnType{ .oid_to_enum = oid_to_enum, .enum_to_oid = enum_to_oid };
|
|
203
203
|
}
|
|
@@ -19,14 +19,14 @@ pub fn any(self: *Decoder, comptime T: type) !T {
|
|
|
19
19
|
|
|
20
20
|
const tag = Tag.fromZig(T).toExpected();
|
|
21
21
|
switch (@typeInfo(T)) {
|
|
22
|
-
.@"struct" => {
|
|
22
|
+
.@"struct" => |info| {
|
|
23
23
|
const ele = try self.element(tag);
|
|
24
24
|
defer self.index = ele.slice.end; // don't force parsing all fields
|
|
25
25
|
|
|
26
26
|
var res: T = undefined;
|
|
27
27
|
|
|
28
|
-
inline for (
|
|
29
|
-
self.field_tag = FieldTag.fromContainer(T,
|
|
28
|
+
inline for (info.field_names, info.field_types, info.field_attrs) |f_name, f_type, f_attrs| {
|
|
29
|
+
self.field_tag = FieldTag.fromContainer(T, f_name);
|
|
30
30
|
|
|
31
31
|
if (self.field_tag) |ft| {
|
|
32
32
|
if (ft.explicit) {
|
|
@@ -36,15 +36,15 @@ pub fn any(self: *Decoder, comptime T: type) !T {
|
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
@field(res,
|
|
40
|
-
if (
|
|
39
|
+
@field(res, f_name) = self.any(f_type) catch |err| brk: {
|
|
40
|
+
if (f_attrs.defaultValue(f_type)) |d| {
|
|
41
41
|
break :brk d;
|
|
42
42
|
}
|
|
43
43
|
return err;
|
|
44
44
|
};
|
|
45
45
|
// DER encodes null values by skipping them.
|
|
46
|
-
if (@typeInfo(
|
|
47
|
-
if (
|
|
46
|
+
if (@typeInfo(f_type) == .optional and @field(res, f_name) == null) {
|
|
47
|
+
if (f_attrs.defaultValue(f_type)) |d| @field(res, f_name) = d;
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
50
|
|
|
@@ -29,16 +29,18 @@ fn anyTag(self: *Encoder, tag_: Tag, val: anytype) !void {
|
|
|
29
29
|
|
|
30
30
|
switch (@typeInfo(T)) {
|
|
31
31
|
.@"struct" => |info| {
|
|
32
|
-
inline for (0..info.
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
const
|
|
32
|
+
inline for (0..info.field_names.len) |i| {
|
|
33
|
+
const f_idx = info.field_names.len - i - 1;
|
|
34
|
+
const f_name = info.field_names[f_idx];
|
|
35
|
+
const f_type = info.field_types[f_idx];
|
|
36
|
+
const f_attrs = info.field_attrs[f_idx];
|
|
37
|
+
const field_val = @field(val, f_name);
|
|
38
|
+
const field_tag = FieldTag.fromContainer(T, f_name);
|
|
36
39
|
|
|
37
40
|
// > The encoding of a set value or sequence value shall not include an encoding for any
|
|
38
41
|
// > component value which is equal to its default value.
|
|
39
|
-
const is_default = if (
|
|
40
|
-
|
|
41
|
-
break :brk std.mem.eql(u8, std.mem.asBytes(default_val), std.mem.asBytes(&field_val));
|
|
42
|
+
const is_default = if (f_attrs.@"comptime") false else if (f_attrs.defaultValue(f_type)) |default_val| brk: {
|
|
43
|
+
break :brk std.mem.eql(u8, std.mem.asBytes(&default_val), std.mem.asBytes(&field_val));
|
|
42
44
|
} else false;
|
|
43
45
|
|
|
44
46
|
if (!is_default) {
|
|
@@ -46,7 +48,7 @@ fn anyTag(self: *Encoder, tag_: Tag, val: anytype) !void {
|
|
|
46
48
|
self.field_tag = field_tag;
|
|
47
49
|
// will merge with self.field_tag.
|
|
48
50
|
// may mutate self.field_tag.
|
|
49
|
-
try self.anyTag(Tag.fromZig(
|
|
51
|
+
try self.anyTag(Tag.fromZig(f_type), field_val);
|
|
50
52
|
if (field_tag) |ft| {
|
|
51
53
|
if (ft.explicit) {
|
|
52
54
|
try self.length(self.buffer.data.len - start2);
|