1
- const builtin = @import ("builtin" );
2
1
const std = @import ("std" );
2
+ const builtin = std .builtin ;
3
3
const io = std .io ;
4
4
const fs = std .fs ;
5
5
const process = std .process ;
@@ -10,8 +10,8 @@ const testing = std.testing;
10
10
11
11
const max_doc_file_size = 10 * 1024 * 1024 ;
12
12
13
- const exe_ext = @as (std .build . Target , std . build . Target . Native ).exeFileExt ();
14
- const obj_ext = @as (std .build . Target , std . build . Target . Native ).oFileExt ();
13
+ const exe_ext = @as (std .zig . CrossTarget , .{} ).exeFileExt ();
14
+ const obj_ext = @as (std .zig . CrossTarget , .{} ).oFileExt ();
15
15
const tmp_dir_name = "docgen_tmp" ;
16
16
const test_out_path = tmp_dir_name ++ fs .path .sep_str ++ "test" ++ exe_ext ;
17
17
@@ -521,7 +521,7 @@ fn genToc(allocator: *mem.Allocator, tokenizer: *Tokenizer) !Toc {
521
521
return parseError (tokenizer , code_kind_tok , "unrecognized code kind: {}" , .{code_kind_str });
522
522
}
523
523
524
- var mode = builtin .Mode .Debug ;
524
+ var mode : builtin.Mode = .Debug ;
525
525
var link_objects = std .ArrayList ([]const u8 ).init (allocator );
526
526
defer link_objects .deinit ();
527
527
var target_str : ? []const u8 = null ;
@@ -533,9 +533,9 @@ fn genToc(allocator: *mem.Allocator, tokenizer: *Tokenizer) !Toc {
533
533
const end_code_tag = try eatToken (tokenizer , Token .Id .TagContent );
534
534
const end_tag_name = tokenizer .buffer [end_code_tag .start .. end_code_tag .end ];
535
535
if (mem .eql (u8 , end_tag_name , "code_release_fast" )) {
536
- mode = builtin . Mode .ReleaseFast ;
536
+ mode = .ReleaseFast ;
537
537
} else if (mem .eql (u8 , end_tag_name , "code_release_safe" )) {
538
- mode = builtin . Mode .ReleaseSafe ;
538
+ mode = .ReleaseSafe ;
539
539
} else if (mem .eql (u8 , end_tag_name , "code_link_object" )) {
540
540
_ = try eatToken (tokenizer , Token .Id .Separator );
541
541
const obj_tok = try eatToken (tokenizer , Token .Id .TagContent );
@@ -1001,30 +1001,30 @@ fn genHtml(allocator: *mem.Allocator, tokenizer: *Tokenizer, toc: *Toc, out: var
1001
1001
1002
1002
for (toc .nodes ) | node | {
1003
1003
switch (node ) {
1004
- Node .Content = > | data | {
1004
+ .Content = > | data | {
1005
1005
try out .write (data );
1006
1006
},
1007
- Node .Link = > | info | {
1007
+ .Link = > | info | {
1008
1008
if (! toc .urls .contains (info .url )) {
1009
1009
return parseError (tokenizer , info .token , "url not found: {}" , .{info .url });
1010
1010
}
1011
1011
try out .print ("<a href=\" #{}\" >{}</a>" , .{ info .url , info .name });
1012
1012
},
1013
- Node .Nav = > {
1013
+ .Nav = > {
1014
1014
try out .write (toc .toc );
1015
1015
},
1016
- Node .Builtin = > | tok | {
1016
+ .Builtin = > | tok | {
1017
1017
try out .write ("<pre>" );
1018
1018
try tokenizeAndPrintRaw (tokenizer , out , tok , builtin_code );
1019
1019
try out .write ("</pre>" );
1020
1020
},
1021
- Node .HeaderOpen = > | info | {
1021
+ .HeaderOpen = > | info | {
1022
1022
try out .print (
1023
1023
"<h{} id=\" {}\" ><a href=\" #toc-{}\" >{}</a> <a class=\" hdr\" href=\" #{}\" >§</a></h{}>\n " ,
1024
1024
.{ info .n , info .url , info .url , info .name , info .url , info .n },
1025
1025
);
1026
1026
},
1027
- Node .SeeAlso = > | items | {
1027
+ .SeeAlso = > | items | {
1028
1028
try out .write ("<p>See also:</p><ul>\n " );
1029
1029
for (items ) | item | {
1030
1030
const url = try urlize (allocator , item .name );
@@ -1035,10 +1035,10 @@ fn genHtml(allocator: *mem.Allocator, tokenizer: *Tokenizer, toc: *Toc, out: var
1035
1035
}
1036
1036
try out .write ("</ul>\n " );
1037
1037
},
1038
- Node .Syntax = > | content_tok | {
1038
+ .Syntax = > | content_tok | {
1039
1039
try tokenizeAndPrint (tokenizer , out , content_tok );
1040
1040
},
1041
- Node .Code = > | code | {
1041
+ .Code = > | code | {
1042
1042
code_progress_index += 1 ;
1043
1043
warn ("docgen example code {}/{}..." , .{ code_progress_index , tokenizer .code_node_count });
1044
1044
@@ -1075,16 +1075,16 @@ fn genHtml(allocator: *mem.Allocator, tokenizer: *Tokenizer, toc: *Toc, out: var
1075
1075
});
1076
1076
try out .print ("<pre><code class=\" shell\" >$ zig build-exe {}.zig" , .{code .name });
1077
1077
switch (code .mode ) {
1078
- builtin . Mode .Debug = > {},
1079
- builtin . Mode .ReleaseSafe = > {
1078
+ .Debug = > {},
1079
+ .ReleaseSafe = > {
1080
1080
try build_args .append ("--release-safe" );
1081
1081
try out .print (" --release-safe" , .{});
1082
1082
},
1083
- builtin . Mode .ReleaseFast = > {
1083
+ .ReleaseFast = > {
1084
1084
try build_args .append ("--release-fast" );
1085
1085
try out .print (" --release-fast" , .{});
1086
1086
},
1087
- builtin . Mode .ReleaseSmall = > {
1087
+ .ReleaseSmall = > {
1088
1088
try build_args .append ("--release-small" );
1089
1089
try out .print (" --release-small" , .{});
1090
1090
},
@@ -1142,13 +1142,14 @@ fn genHtml(allocator: *mem.Allocator, tokenizer: *Tokenizer, toc: *Toc, out: var
1142
1142
try out .print ("\n {}</code></pre>\n " , .{colored_stderr });
1143
1143
break :code_block ;
1144
1144
}
1145
- const exec_result = exec (allocator , & env_map , build_args .toSliceConst ()) catch return parseError (tokenizer , code .source_token , "example failed to compile" , .{});
1145
+ const exec_result = exec (allocator , & env_map , build_args .toSliceConst ()) catch
1146
+ return parseError (tokenizer , code .source_token , "example failed to compile" , .{});
1146
1147
1147
1148
if (code .target_str ) | triple | {
1148
1149
if (mem .startsWith (u8 , triple , "wasm32" ) or
1149
1150
mem .startsWith (u8 , triple , "riscv64-linux" ) or
1150
- mem .startsWith (u8 , triple , "x86_64-linux" ) and
1151
- ( builtin . os != .linux or builtin .arch != .x86_64 ))
1151
+ ( mem .startsWith (u8 , triple , "x86_64-linux" ) and
1152
+ std . Target . current . os . tag != .linux or std . Target . current . cpu .arch != .x86_64 ))
1152
1153
{
1153
1154
// skip execution
1154
1155
try out .print ("</code></pre>\n " , .{});
@@ -1207,16 +1208,16 @@ fn genHtml(allocator: *mem.Allocator, tokenizer: *Tokenizer, toc: *Toc, out: var
1207
1208
});
1208
1209
try out .print ("<pre><code class=\" shell\" >$ zig test {}.zig" , .{code .name });
1209
1210
switch (code .mode ) {
1210
- builtin . Mode .Debug = > {},
1211
- builtin . Mode .ReleaseSafe = > {
1211
+ .Debug = > {},
1212
+ .ReleaseSafe = > {
1212
1213
try test_args .append ("--release-safe" );
1213
1214
try out .print (" --release-safe" , .{});
1214
1215
},
1215
- builtin . Mode .ReleaseFast = > {
1216
+ .ReleaseFast = > {
1216
1217
try test_args .append ("--release-fast" );
1217
1218
try out .print (" --release-fast" , .{});
1218
1219
},
1219
- builtin . Mode .ReleaseSmall = > {
1220
+ .ReleaseSmall = > {
1220
1221
try test_args .append ("--release-small" );
1221
1222
try out .print (" --release-small" , .{});
1222
1223
},
@@ -1249,16 +1250,16 @@ fn genHtml(allocator: *mem.Allocator, tokenizer: *Tokenizer, toc: *Toc, out: var
1249
1250
});
1250
1251
try out .print ("<pre><code class=\" shell\" >$ zig test {}.zig" , .{code .name });
1251
1252
switch (code .mode ) {
1252
- builtin . Mode .Debug = > {},
1253
- builtin . Mode .ReleaseSafe = > {
1253
+ .Debug = > {},
1254
+ .ReleaseSafe = > {
1254
1255
try test_args .append ("--release-safe" );
1255
1256
try out .print (" --release-safe" , .{});
1256
1257
},
1257
- builtin . Mode .ReleaseFast = > {
1258
+ .ReleaseFast = > {
1258
1259
try test_args .append ("--release-fast" );
1259
1260
try out .print (" --release-fast" , .{});
1260
1261
},
1261
- builtin . Mode .ReleaseSmall = > {
1262
+ .ReleaseSmall = > {
1262
1263
try test_args .append ("--release-small" );
1263
1264
try out .print (" --release-small" , .{});
1264
1265
},
@@ -1306,16 +1307,16 @@ fn genHtml(allocator: *mem.Allocator, tokenizer: *Tokenizer, toc: *Toc, out: var
1306
1307
});
1307
1308
var mode_arg : []const u8 = "" ;
1308
1309
switch (code .mode ) {
1309
- builtin . Mode .Debug = > {},
1310
- builtin . Mode .ReleaseSafe = > {
1310
+ .Debug = > {},
1311
+ .ReleaseSafe = > {
1311
1312
try test_args .append ("--release-safe" );
1312
1313
mode_arg = " --release-safe" ;
1313
1314
},
1314
- builtin . Mode .ReleaseFast = > {
1315
+ .ReleaseFast = > {
1315
1316
try test_args .append ("--release-fast" );
1316
1317
mode_arg = " --release-fast" ;
1317
1318
},
1318
- builtin . Mode .ReleaseSmall = > {
1319
+ .ReleaseSmall = > {
1319
1320
try test_args .append ("--release-small" );
1320
1321
mode_arg = " --release-small" ;
1321
1322
},
@@ -1386,20 +1387,20 @@ fn genHtml(allocator: *mem.Allocator, tokenizer: *Tokenizer, toc: *Toc, out: var
1386
1387
}
1387
1388
1388
1389
switch (code .mode ) {
1389
- builtin . Mode .Debug = > {},
1390
- builtin . Mode .ReleaseSafe = > {
1390
+ .Debug = > {},
1391
+ .ReleaseSafe = > {
1391
1392
try build_args .append ("--release-safe" );
1392
1393
if (! code .is_inline ) {
1393
1394
try out .print (" --release-safe" , .{});
1394
1395
}
1395
1396
},
1396
- builtin . Mode .ReleaseFast = > {
1397
+ .ReleaseFast = > {
1397
1398
try build_args .append ("--release-fast" );
1398
1399
if (! code .is_inline ) {
1399
1400
try out .print (" --release-fast" , .{});
1400
1401
}
1401
1402
},
1402
- builtin . Mode .ReleaseSmall = > {
1403
+ .ReleaseSmall = > {
1403
1404
try build_args .append ("--release-small" );
1404
1405
if (! code .is_inline ) {
1405
1406
try out .print (" --release-small" , .{});
@@ -1461,16 +1462,16 @@ fn genHtml(allocator: *mem.Allocator, tokenizer: *Tokenizer, toc: *Toc, out: var
1461
1462
});
1462
1463
try out .print ("<pre><code class=\" shell\" >$ zig build-lib {}.zig" , .{code .name });
1463
1464
switch (code .mode ) {
1464
- builtin . Mode .Debug = > {},
1465
- builtin . Mode .ReleaseSafe = > {
1465
+ .Debug = > {},
1466
+ .ReleaseSafe = > {
1466
1467
try test_args .append ("--release-safe" );
1467
1468
try out .print (" --release-safe" , .{});
1468
1469
},
1469
- builtin . Mode .ReleaseFast = > {
1470
+ .ReleaseFast = > {
1470
1471
try test_args .append ("--release-fast" );
1471
1472
try out .print (" --release-fast" , .{});
1472
1473
},
1473
- builtin . Mode .ReleaseSmall = > {
1474
+ .ReleaseSmall = > {
1474
1475
try test_args .append ("--release-small" );
1475
1476
try out .print (" --release-small" , .{});
1476
1477
},
0 commit comments