authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-12-14 20:21:23-05:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2018-12-14 20:21:23-05:00
log82bf1eb7a1ae54f0bb52fdb8fdcd89fdaab683f0
tree6166eb16c0d37b1e95dadb131e07a118590a4c40
parent0afb86868423b454708608f9faa9bf27ce3233f3
signature Commit is signed but in an unrecognized format.

docs: fix alphabetical sorting of builtin functions


1 files changed, 116 insertions(+), 71 deletions(-)

doc/langref.html.in+116-71
......@@ -5169,6 +5169,34 @@ fn seq(c: u8) void {
51695169 If no overflow or underflow occurs, returns {#syntax#}false{#endsyntax#}.
51705170 </p>
51715171 {#header_close#}
5172 {#header_open|@alignCast#}
5173 <pre>{#syntax#}@alignCast(comptime alignment: u29, ptr: var) var{#endsyntax#}</pre>
5174 <p>
5175 {#syntax#}ptr{#endsyntax#} can be {#syntax#}*T{#endsyntax#}, {#syntax#}fn(){#endsyntax#}, {#syntax#}?*T{#endsyntax#},
5176 {#syntax#}?fn(){#endsyntax#}, or {#syntax#}[]T{#endsyntax#}. It returns the same type as {#syntax#}ptr{#endsyntax#}
5177 except with the alignment adjusted to the new value.
5178 </p>
5179 <p>A {#link|pointer alignment safety check|Incorrect Pointer Alignment#} is added
5180 to the generated code to make sure the pointer is aligned as promised.</p>
5181
5182 {#header_close#}
5183 {#header_open|@alignOf#}
5184 <pre>{#syntax#}@alignOf(comptime T: type) comptime_int{#endsyntax#}</pre>
5185 <p>
5186 This function returns the number of bytes that this type should be aligned to
5187 for the current target to match the C ABI. When the child type of a pointer has
5188 this alignment, the alignment can be omitted from the type.
5189 </p>
5190 <pre>{#syntax#}const assert = @import("std").debug.assert;
5191comptime {
5192 assert(*u32 == *align(@alignOf(u32)) u32);
5193}{#endsyntax#}</pre>
5194 <p>
5195 The result is a target-specific compile time constant. It is guaranteed to be
5196 less than or equal to {#link|@sizeOf(T)|@sizeOf#}.
5197 </p>
5198 {#see_also|Alignment#}
5199 {#header_close#}
51725200 {#header_open|@ArgType#}
51735201 <pre>{#syntax#}@ArgType(comptime T: type, comptime n: usize) type{#endsyntax#}</pre>
51745202 <p>
......@@ -5241,6 +5269,7 @@ fn seq(c: u8) void {
52415269 Works at compile-time if {#syntax#}value{#endsyntax#} is known at compile time. It's a compile error to bitcast a struct to a scalar type of the same size since structs have undefined layout. However if the struct is packed then it works.
52425270 </p>
52435271 {#header_close#}
5272
52445273 {#header_open|@bitOffsetOf#}
52455274 <pre>{#syntax#}@bitOffsetOf(comptime T: type, comptime field_name: [] const u8) comptime_int{#endsyntax#}</pre>
52465275 <p>
......@@ -5253,52 +5282,6 @@ fn seq(c: u8) void {
52535282 </p>
52545283 {#see_also|@byteOffsetOf#}
52555284 {#header_close#}
5256 {#header_open|@breakpoint#}
5257 <pre>{#syntax#}@breakpoint(){#endsyntax#}</pre>
5258 <p>
5259 This function inserts a platform-specific debug trap instruction which causes
5260 debuggers to break there.
5261 </p>
5262 <p>
5263 This function is only valid within function scope.
5264 </p>
5265
5266 {#header_close#}
5267 {#header_open|@byteOffsetOf#}
5268 <pre>{#syntax#}@byteOffsetOf(comptime T: type, comptime field_name: [] const u8) comptime_int{#endsyntax#}</pre>
5269 <p>
5270 Returns the byte offset of a field relative to its containing struct.
5271 </p>
5272 {#see_also|@bitOffsetOf#}
5273 {#header_close#}
5274 {#header_open|@alignCast#}
5275 <pre>{#syntax#}@alignCast(comptime alignment: u29, ptr: var) var{#endsyntax#}</pre>
5276 <p>
5277 {#syntax#}ptr{#endsyntax#} can be {#syntax#}*T{#endsyntax#}, {#syntax#}fn(){#endsyntax#}, {#syntax#}?*T{#endsyntax#},
5278 {#syntax#}?fn(){#endsyntax#}, or {#syntax#}[]T{#endsyntax#}. It returns the same type as {#syntax#}ptr{#endsyntax#}
5279 except with the alignment adjusted to the new value.
5280 </p>
5281 <p>A {#link|pointer alignment safety check|Incorrect Pointer Alignment#} is added
5282 to the generated code to make sure the pointer is aligned as promised.</p>
5283
5284 {#header_close#}
5285 {#header_open|@alignOf#}
5286 <pre>{#syntax#}@alignOf(comptime T: type) comptime_int{#endsyntax#}</pre>
5287 <p>
5288 This function returns the number of bytes that this type should be aligned to
5289 for the current target to match the C ABI. When the child type of a pointer has
5290 this alignment, the alignment can be omitted from the type.
5291 </p>
5292 <pre>{#syntax#}const assert = @import("std").debug.assert;
5293comptime {
5294 assert(*u32 == *align(@alignOf(u32)) u32);
5295}{#endsyntax#}</pre>
5296 <p>
5297 The result is a target-specific compile time constant. It is guaranteed to be
5298 less than or equal to {#link|@sizeOf(T)|@sizeOf#}.
5299 </p>
5300 {#see_also|Alignment#}
5301 {#header_close#}
53025285
53035286 {#header_open|@boolToInt#}
53045287 <pre>{#syntax#}@boolToInt(value: bool) u1{#endsyntax#}</pre>
......@@ -5312,6 +5295,18 @@ comptime {
53125295 </p>
53135296 {#header_close#}
53145297
5298 {#header_open|@breakpoint#}
5299 <pre>{#syntax#}@breakpoint(){#endsyntax#}</pre>
5300 <p>
5301 This function inserts a platform-specific debug trap instruction which causes
5302 debuggers to break there.
5303 </p>
5304 <p>
5305 This function is only valid within function scope.
5306 </p>
5307
5308 {#header_close#}
5309
53155310 {#header_open|@bswap#}
53165311 <pre>{#syntax#}@bswap(comptime T: type, value: T) T{#endsyntax#}</pre>
53175312 <p>{#syntax#}T{#endsyntax#} must be an integer type with bit count evenly divisible by 8.</p>
......@@ -5321,6 +5316,14 @@ comptime {
53215316 </p>
53225317 {#header_close#}
53235318
5319 {#header_open|@byteOffsetOf#}
5320 <pre>{#syntax#}@byteOffsetOf(comptime T: type, comptime field_name: [] const u8) comptime_int{#endsyntax#}</pre>
5321 <p>
5322 Returns the byte offset of a field relative to its containing struct.
5323 </p>
5324 {#see_also|@bitOffsetOf#}
5325 {#header_close#}
5326
53245327 {#header_open|@bytesToSlice#}
53255328 <pre>{#syntax#}@bytesToSlice(comptime Element: type, bytes: []u8) []Element{#endsyntax#}</pre>
53265329 <p>
......@@ -5387,17 +5390,7 @@ comptime {
53875390 </p>
53885391 {#see_also|Import from C Header File|@cImport|@cDefine|@cUndef#}
53895392 {#header_close#}
5390 {#header_open|@cUndef#}
5391 <pre>{#syntax#}@cUndef(comptime name: []u8){#endsyntax#}</pre>
5392 <p>
5393 This function can only occur inside {#syntax#}@cImport{#endsyntax#}.
5394 </p>
5395 <p>
5396 This appends <code>#undef $name</code> to the {#syntax#}@cImport{#endsyntax#}
5397 temporary buffer.
5398 </p>
5399 {#see_also|Import from C Header File|@cImport|@cDefine|@cInclude#}
5400 {#header_close#}
5393
54015394 {#header_open|@clz#}
54025395 <pre>{#syntax#}@clz(x: T) U{#endsyntax#}</pre>
54035396 <p>
......@@ -5413,6 +5406,7 @@ comptime {
54135406 </p>
54145407 {#see_also|@ctz|@popCount#}
54155408 {#header_close#}
5409
54165410 {#header_open|@cmpxchgStrong#}
54175411 <pre>{#syntax#}@cmpxchgStrong(comptime T: type, ptr: *T, expected_value: T, new_value: T, success_order: AtomicOrder, fail_order: AtomicOrder) ?T{#endsyntax#}</pre>
54185412 <p>
......@@ -5468,6 +5462,7 @@ fn cmpxchgWeakButNotAtomic(comptime T: type, ptr: *T, expected_value: T, new_val
54685462 <p>{#syntax#}@typeOf(ptr).alignment{#endsyntax#} must be {#syntax#}>= @sizeOf(T).{#endsyntax#}</p>
54695463 {#see_also|Compile Variables|cmpxchgStrong#}
54705464 {#header_close#}
5465
54715466 {#header_open|@compileError#}
54725467 <pre>{#syntax#}@compileError(comptime msg: []u8){#endsyntax#}</pre>
54735468 <p>
......@@ -5480,6 +5475,7 @@ fn cmpxchgWeakButNotAtomic(comptime T: type, ptr: *T, expected_value: T, new_val
54805475 and {#syntax#}comptime{#endsyntax#} functions.
54815476 </p>
54825477 {#header_close#}
5478
54835479 {#header_open|@compileLog#}
54845480 <pre>{#syntax#}@compileLog(args: ...){#endsyntax#}</pre>
54855481 <p>
......@@ -5534,6 +5530,7 @@ test "main" {
55345530}
55355531 {#code_end#}
55365532 {#header_close#}
5533
55375534 {#header_open|@ctz#}
55385535 <pre>{#syntax#}@ctz(x: T) U{#endsyntax#}</pre>
55395536 <p>
......@@ -5549,6 +5546,19 @@ test "main" {
55495546 </p>
55505547 {#see_also|@clz|@popCount#}
55515548 {#header_close#}
5549
5550 {#header_open|@cUndef#}
5551 <pre>{#syntax#}@cUndef(comptime name: []u8){#endsyntax#}</pre>
5552 <p>
5553 This function can only occur inside {#syntax#}@cImport{#endsyntax#}.
5554 </p>
5555 <p>
5556 This appends <code>#undef $name</code> to the {#syntax#}@cImport{#endsyntax#}
5557 temporary buffer.
5558 </p>
5559 {#see_also|Import from C Header File|@cImport|@cDefine|@cInclude#}
5560 {#header_close#}
5561
55525562 {#header_open|@divExact#}
55535563 <pre>{#syntax#}@divExact(numerator: T, denominator: T) T{#endsyntax#}</pre>
55545564 <p>
......@@ -5615,14 +5625,6 @@ test "main" {
56155625 {#see_also|@intToEnum#}
56165626 {#header_close#}
56175627
5618 {#header_open|@errSetCast#}
5619 <pre>{#syntax#}@errSetCast(comptime T: DestType, value: var) DestType{#endsyntax#}</pre>
5620 <p>
5621 Converts an error value from one error set to another error set. Attempting to convert an error
5622 which is not in the destination error set results in safety-protected {#link|Undefined Behavior#}.
5623 </p>
5624 {#header_close#}
5625
56265628 {#header_open|@errorName#}
56275629 <pre>{#syntax#}@errorName(err: anyerror) []const u8{#endsyntax#}</pre>
56285630 <p>
......@@ -5665,6 +5667,14 @@ test "main" {
56655667 {#see_also|@intToError#}
56665668 {#header_close#}
56675669
5670 {#header_open|@errSetCast#}
5671 <pre>{#syntax#}@errSetCast(comptime T: DestType, value: var) DestType{#endsyntax#}</pre>
5672 <p>
5673 Converts an error value from one error set to another error set. Attempting to convert an error
5674 which is not in the destination error set results in safety-protected {#link|Undefined Behavior#}.
5675 </p>
5676 {#header_close#}
5677
56685678 {#header_open|@export#}
56695679 <pre>{#syntax#}@export(comptime name: []const u8, target: var, linkage: builtin.GlobalLinkage) []const u8{#endsyntax#}</pre>
56705680 <p>
......@@ -5733,6 +5743,7 @@ test "main" {
57335743 This function is only valid within function scope.
57345744 </p>
57355745 {#header_close#}
5746
57365747 {#header_open|@handle#}
57375748 <pre>{#syntax#}@handle(){#endsyntax#}</pre>
57385749 <p>
......@@ -5743,6 +5754,7 @@ test "main" {
57435754 This function is only valid within an async function scope.
57445755 </p>
57455756 {#header_close#}
5757
57465758 {#header_open|@import#}
57475759 <pre>{#syntax#}@import(comptime path: []u8) (namespace){#endsyntax#}</pre>
57485760 <p>
......@@ -5763,6 +5775,7 @@ test "main" {
57635775 </ul>
57645776 {#see_also|Compile Variables|@embedFile#}
57655777 {#header_close#}
5778
57665779 {#header_open|@inlineCall#}
57675780 <pre>{#syntax#}@inlineCall(function: X, args: ...) Y{#endsyntax#}</pre>
57685781 <p>
......@@ -5842,6 +5855,7 @@ fn add(a: i32, b: i32) i32 { return a + b; }
58425855 bit count for an integer type is {#syntax#}65535{#endsyntax#}.
58435856 </p>
58445857 {#header_close#}
5858
58455859 {#header_open|@memberCount#}
58465860 <pre>{#syntax#}@memberCount(comptime T: type) comptime_int{#endsyntax#}</pre>
58475861 <p>
......@@ -5868,6 +5882,7 @@ fn add(a: i32, b: i32) i32 { return a + b; }
58685882 <pre>{#syntax#}@memberType(comptime T: type, comptime index: usize) type{#endsyntax#}</pre>
58695883 <p>Returns the field type of a struct or union.</p>
58705884 {#header_close#}
5885
58715886 {#header_open|@memcpy#}
58725887 <pre>{#syntax#}@memcpy(noalias dest: [*]u8, noalias source: [*]const u8, byte_count: usize){#endsyntax#}</pre>
58735888 <p>
......@@ -5886,6 +5901,7 @@ fn add(a: i32, b: i32) i32 { return a + b; }
58865901 <pre>{#syntax#}const mem = @import("std").mem;
58875902mem.copy(u8, dest[0...byte_count], source[0...byte_count]);{#endsyntax#}</pre>
58885903 {#header_close#}
5904
58895905 {#header_open|@memset#}
58905906 <pre>{#syntax#}@memset(dest: [*]u8, c: u8, byte_count: usize){#endsyntax#}</pre>
58915907 <p>
......@@ -5903,6 +5919,7 @@ mem.copy(u8, dest[0...byte_count], source[0...byte_count]);{#endsyntax#}</pre>
59035919 <pre>{#syntax#}const mem = @import("std").mem;
59045920mem.set(u8, dest, c);{#endsyntax#}</pre>
59055921 {#header_close#}
5922
59065923 {#header_open|@mod#}
59075924 <pre>{#syntax#}@mod(numerator: T, denominator: T) T{#endsyntax#}</pre>
59085925 <p>
......@@ -5916,6 +5933,7 @@ mem.set(u8, dest, c);{#endsyntax#}</pre>
59165933 <p>For a function that returns an error code, see {#syntax#}@import("std").math.mod{#endsyntax#}.</p>
59175934 {#see_also|@rem#}
59185935 {#header_close#}
5936
59195937 {#header_open|@mulWithOverflow#}
59205938 <pre>{#syntax#}@mulWithOverflow(comptime T: type, a: T, b: T, result: *T) bool{#endsyntax#}</pre>
59215939 <p>
......@@ -5924,6 +5942,7 @@ mem.set(u8, dest, c);{#endsyntax#}</pre>
59245942 If no overflow or underflow occurs, returns {#syntax#}false{#endsyntax#}.
59255943 </p>
59265944 {#header_close#}
5945
59275946 {#header_open|@newStackCall#}
59285947 <pre>{#syntax#}@newStackCall(new_stack: []u8, function: var, args: ...) var{#endsyntax#}</pre>
59295948 <p>
......@@ -5960,6 +5979,7 @@ fn targetFunction(x: i32) usize {
59605979}
59615980 {#code_end#}
59625981 {#header_close#}
5982
59635983 {#header_open|@noInlineCall#}
59645984 <pre>{#syntax#}@noInlineCall(function: var, args: ...) var{#endsyntax#}</pre>
59655985 <p>
......@@ -5982,6 +6002,7 @@ fn add(a: i32, b: i32) i32 {
59826002 </p>
59836003 {#see_also|@inlineCall#}
59846004 {#header_close#}
6005
59856006 {#header_open|@OpaqueType#}
59866007 <pre>{#syntax#}@OpaqueType() type{#endsyntax#}</pre>
59876008 <p>
......@@ -6005,6 +6026,7 @@ test "call foo" {
60056026}
60066027 {#code_end#}
60076028 {#header_close#}
6029
60086030 {#header_open|@panic#}
60096031 <pre>{#syntax#}@panic(message: []const u8) noreturn{#endsyntax#}</pre>
60106032 <p>
......@@ -6021,6 +6043,7 @@ test "call foo" {
60216043 </ul>
60226044 {#see_also|Root Source File#}
60236045 {#header_close#}
6046
60246047 {#header_open|@popCount#}
60256048 <pre>{#syntax#}@popCount(integer: var) var{#endsyntax#}</pre>
60266049 <p>Counts the number of bits set in an integer.</p>
......@@ -6031,12 +6054,14 @@ test "call foo" {
60316054 </p>
60326055 {#see_also|@ctz|@clz#}
60336056 {#header_close#}
6057
60346058 {#header_open|@ptrCast#}
60356059 <pre>{#syntax#}@ptrCast(comptime DestType: type, value: var) DestType{#endsyntax#}</pre>
60366060 <p>
60376061 Converts a pointer of one type to a pointer of another type.
60386062 </p>
60396063 {#header_close#}
6064
60406065 {#header_open|@ptrToInt#}
60416066 <pre>{#syntax#}@ptrToInt(value: var) usize{#endsyntax#}</pre>
60426067 <p>
......@@ -6051,6 +6076,7 @@ test "call foo" {
60516076 <p>To convert the other way, use {#link|@intToPtr#}</p>
60526077
60536078 {#header_close#}
6079
60546080 {#header_open|@rem#}
60556081 <pre>{#syntax#}@rem(numerator: T, denominator: T) T{#endsyntax#}</pre>
60566082 <p>
......@@ -6064,6 +6090,7 @@ test "call foo" {
60646090 <p>For a function that returns an error code, see {#syntax#}@import("std").math.rem{#endsyntax#}.</p>
60656091 {#see_also|@mod#}
60666092 {#header_close#}
6093
60676094 {#header_open|@returnAddress#}
60686095 <pre>{#syntax#}@returnAddress(){#endsyntax#}</pre>
60696096 <p>
......@@ -6084,19 +6111,14 @@ test "call foo" {
60846111 Ensures that a function will have a stack alignment of at least {#syntax#}alignment{#endsyntax#} bytes.
60856112 </p>
60866113 {#header_close#}
6114
60876115 {#header_open|@setCold#}
60886116 <pre>{#syntax#}@setCold(is_cold: bool){#endsyntax#}</pre>
60896117 <p>
60906118 Tells the optimizer that a function is rarely called.
60916119 </p>
60926120 {#header_close#}
6093 {#header_open|@setRuntimeSafety#}
6094 <pre>{#syntax#}@setRuntimeSafety(safety_on: bool){#endsyntax#}</pre>
6095 <p>
6096 Sets whether runtime safety checks are on for the scope that contains the function call.
6097 </p>
60986121
6099 {#header_close#}
61006122 {#header_open|@setEvalBranchQuota#}
61016123 <pre>{#syntax#}@setEvalBranchQuota(new_quota: usize){#endsyntax#}</pre>
61026124 <p>
......@@ -6131,6 +6153,7 @@ test "foo" {
61316153
61326154 {#see_also|comptime#}
61336155 {#header_close#}
6156
61346157 {#header_open|@setFloatMode#}
61356158 <pre>{#syntax#}@setFloatMode(mode: @import("builtin").FloatMode){#endsyntax#}</pre>
61366159 <p>
......@@ -6165,6 +6188,7 @@ pub const FloatMode = enum {
61656188 </p>
61666189 {#see_also|Floating Point Operations#}
61676190 {#header_close#}
6191
61686192 {#header_open|@setGlobalLinkage#}
61696193 <pre>{#syntax#}@setGlobalLinkage(global_variable_name, comptime linkage: GlobalLinkage){#endsyntax#}</pre>
61706194 <p>
......@@ -6172,6 +6196,15 @@ pub const FloatMode = enum {
61726196 </p>
61736197 {#see_also|Compile Variables#}
61746198 {#header_close#}
6199
6200 {#header_open|@setRuntimeSafety#}
6201 <pre>{#syntax#}@setRuntimeSafety(safety_on: bool){#endsyntax#}</pre>
6202 <p>
6203 Sets whether runtime safety checks are on for the scope that contains the function call.
6204 </p>
6205
6206 {#header_close#}
6207
61756208 {#header_open|@shlExact#}
61766209 <pre>{#syntax#}@shlExact(value: T, shift_amt: Log2T) T{#endsyntax#}</pre>
61776210 <p>
......@@ -6184,6 +6217,7 @@ pub const FloatMode = enum {
61846217 </p>
61856218 {#see_also|@shrExact|@shlWithOverflow#}
61866219 {#header_close#}
6220
61876221 {#header_open|@shlWithOverflow#}
61886222 <pre>{#syntax#}@shlWithOverflow(comptime T: type, a: T, shift_amt: Log2T, result: *T) bool{#endsyntax#}</pre>
61896223 <p>
......@@ -6197,6 +6231,7 @@ pub const FloatMode = enum {
61976231 </p>
61986232 {#see_also|@shlExact|@shrExact#}
61996233 {#header_close#}
6234
62006235 {#header_open|@shrExact#}
62016236 <pre>{#syntax#}@shrExact(value: T, shift_amt: Log2T) T{#endsyntax#}</pre>
62026237 <p>
......@@ -6238,6 +6273,7 @@ pub const FloatMode = enum {
62386273 This is a low-level intrinsic. Most code can use {#syntax#}std.math.sqrt{#endsyntax#} instead.
62396274 </p>
62406275 {#header_close#}
6276
62416277 {#header_open|@subWithOverflow#}
62426278 <pre>{#syntax#}@subWithOverflow(comptime T: type, a: T, b: T, result: *T) bool{#endsyntax#}</pre>
62436279 <p>
......@@ -6246,12 +6282,14 @@ pub const FloatMode = enum {
62466282 If no overflow or underflow occurs, returns {#syntax#}false{#endsyntax#}.
62476283 </p>
62486284 {#header_close#}
6285
62496286 {#header_open|@tagName#}
62506287 <pre>{#syntax#}@tagName(value: var) []const u8{#endsyntax#}</pre>
62516288 <p>
62526289 Converts an enum value or union value to a slice of bytes representing the name.
62536290 </p>
62546291 {#header_close#}
6292
62556293 {#header_open|@TagType#}
62566294 <pre>{#syntax#}@TagType(T: type) type{#endsyntax#}</pre>
62576295 <p>
......@@ -6261,6 +6299,7 @@ pub const FloatMode = enum {
62616299 For a union, returns the enum type that is used to store the tag value.
62626300 </p>
62636301 {#header_close#}
6302
62646303 {#header_open|@This#}
62656304 <pre>{#syntax#}@This() type{#endsyntax#}</pre>
62666305 <p>
......@@ -6296,6 +6335,7 @@ fn List(comptime T: type) type {
62966335 <a href="https://github.com/ziglang/zig/issues/1047">#1047</a> for details.
62976336 </p>
62986337 {#header_close#}
6338
62996339 {#header_open|@truncate#}
63006340 <pre>{#syntax#}@truncate(comptime T: type, integer) T{#endsyntax#}</pre>
63016341 <p>
......@@ -6320,6 +6360,7 @@ const b: u8 = @truncate(u8, a);
63206360 </p>
63216361
63226362 {#header_close#}
6363
63236364 {#header_open|@typeId#}
63246365 <pre>{#syntax#}@typeId(comptime T: type) @import("builtin").TypeId{#endsyntax#}</pre>
63256366 <p>
......@@ -6354,6 +6395,7 @@ pub const TypeId = enum {
63546395};
63556396 {#code_end#}
63566397 {#header_close#}
6398
63576399 {#header_open|@typeInfo#}
63586400 <pre>{#syntax#}@typeInfo(comptime T: type) @import("builtin").TypeInfo{#endsyntax#}</pre>
63596401 <p>
......@@ -6536,6 +6578,7 @@ pub const TypeInfo = union(TypeId) {
65366578};
65376579 {#code_end#}
65386580 {#header_close#}
6581
65396582 {#header_open|@typeName#}
65406583 <pre>{#syntax#}@typeName(T: type) []u8{#endsyntax#}</pre>
65416584 <p>
......@@ -6543,6 +6586,7 @@ pub const TypeInfo = union(TypeId) {
65436586 </p>
65446587
65456588 {#header_close#}
6589
65466590 {#header_open|@typeOf#}
65476591 <pre>{#syntax#}@typeOf(expression) type{#endsyntax#}</pre>
65486592 <p>
......@@ -6552,6 +6596,7 @@ pub const TypeInfo = union(TypeId) {
65526596
65536597 {#header_close#}
65546598 {#header_close#}
6599
65556600 {#header_open|Build Mode#}
65566601 <p>
65576602 Zig has four build modes: