zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 7166407d8f2e9e080f4f97926a2b543150261576 (tree)
parent 4620972d086ebb3b7686a79914876488c6dfd171
Author: Bertie Wheen <bertie@wheen.online>
Date:   Wed, 28 Jun 2023 10:22:32 +0100

langref: correct ordering of @xFromY builtins

Diffstat:
Mdoc/langref.html.in | 168++++++++++++++++++++++++++++++++++++++++----------------------------------------
1 file changed, 84 insertions(+), 84 deletions(-)

diff --git a/doc/langref.html.in b/doc/langref.html.in @@ -6641,19 +6641,19 @@ test "coercion from homogenous tuple to array" { <ul> <li>{#link|@bitCast#} - change type but maintain bit representation</li> <li>{#link|@alignCast#} - make a pointer have more alignment</li> + <li>{#link|@enumFromInt#} - obtain an enum value based on its integer tag value</li> + <li>{#link|@errorFromInt#} - obtain an error code based on its integer value</li> + <li>{#link|@errSetCast#} - convert to a smaller error set</li> + <li>{#link|@floatCast#} - convert a larger float to a smaller float</li> + <li>{#link|@floatFromInt#} - convert an integer to a float value</li> + <li>{#link|@intCast#} - convert between integer types</li> <li>{#link|@intFromBool#} - convert true to 1 and false to 0</li> <li>{#link|@intFromEnum#} - obtain the integer tag value of an enum or tagged union</li> - <li>{#link|@errSetCast#} - convert to a smaller error set</li> <li>{#link|@intFromError#} - obtain the integer value of an error code</li> - <li>{#link|@floatCast#} - convert a larger float to a smaller float</li> <li>{#link|@intFromFloat#} - obtain the integer part of a float value</li> - <li>{#link|@intCast#} - convert between integer types</li> - <li>{#link|@enumFromInt#} - obtain an enum value based on its integer tag value</li> - <li>{#link|@errorFromInt#} - obtain an error code based on its integer value</li> - <li>{#link|@floatFromInt#} - convert an integer to a float value</li> + <li>{#link|@intFromPtr#} - obtain the address of a pointer</li> <li>{#link|@ptrFromInt#} - convert an address to a pointer</li> <li>{#link|@ptrCast#} - convert between pointer types</li> - <li>{#link|@intFromPtr#} - obtain the address of a pointer</li> <li>{#link|@truncate#} - convert between integer types, chopping off bits</li> </ul> {#header_close#} @@ -7902,14 +7902,6 @@ comptime { {#see_also|@offsetOf#} {#header_close#} - {#header_open|@intFromBool#} - <pre>{#syntax#}@intFromBool(value: bool) u1{#endsyntax#}</pre> - <p> - Converts {#syntax#}true{#endsyntax#} to {#syntax#}@as(u1, 1){#endsyntax#} and {#syntax#}false{#endsyntax#} to - {#syntax#}@as(u1, 0){#endsyntax#}. - </p> - {#header_close#} - {#header_open|@bitSizeOf#} <pre>{#syntax#}@bitSizeOf(comptime T: type) comptime_int{#endsyntax#}</pre> <p> @@ -8351,6 +8343,7 @@ test "main" { <p>For a function that returns a possible error code, use {#syntax#}@import("std").math.divTrunc{#endsyntax#}.</p> {#see_also|@divFloor|@divExact#} {#header_close#} + {#header_open|@embedFile#} <pre>{#syntax#}@embedFile(comptime path: []const u8) *const [N:0]u8{#endsyntax#}</pre> <p> @@ -8366,17 +8359,32 @@ test "main" { {#see_also|@import#} {#header_close#} - {#header_open|@intFromEnum#} - <pre>{#syntax#}@intFromEnum(enum_or_tagged_union: anytype) anytype{#endsyntax#}</pre> + {#header_open|@enumFromInt#} + <pre>{#syntax#}@enumFromInt(integer: anytype) anytype{#endsyntax#}</pre> <p> - Converts an enumeration value into its integer tag type. When a tagged union is passed, - the tag value is used as the enumeration value. + Converts an integer into an {#link|enum#} value. The return type is the inferred result type. </p> <p> - If there is only one possible enum value, the result is a {#syntax#}comptime_int{#endsyntax#} - known at {#link|comptime#}. + Attempting to convert an integer which represents no value in the chosen enum type invokes + safety-checked {#link|Undefined Behavior#}. </p> - {#see_also|@enumFromInt#} + {#see_also|@intFromEnum#} + {#header_close#} + + {#header_open|@errorFromInt#} + <pre>{#syntax#}@errorFromInt(value: std.meta.Int(.unsigned, @sizeOf(anyerror) * 8)) anyerror{#endsyntax#}</pre> + <p> + Converts from the integer representation of an error into {#link|The Global Error Set#} type. + </p> + <p> + It is generally recommended to avoid this + cast, as the integer representation of an error is not stable across source code changes. + </p> + <p> + Attempting to convert an integer that does not correspond to any error results in + safety-protected {#link|Undefined Behavior#}. + </p> + {#see_also|@intFromError#} {#header_close#} {#header_open|@errorName#} @@ -8401,26 +8409,6 @@ test "main" { </p> {#header_close#} - {#header_open|@intFromError#} - <pre>{#syntax#}@intFromError(err: anytype) std.meta.Int(.unsigned, @sizeOf(anyerror) * 8){#endsyntax#}</pre> - <p> - Supports the following types: - </p> - <ul> - <li>{#link|The Global Error Set#}</li> - <li>{#link|Error Set Type#}</li> - <li>{#link|Error Union Type#}</li> - </ul> - <p> - Converts an error to the integer representation of an error. - </p> - <p> - It is generally recommended to avoid this - cast, as the integer representation of an error is not stable across source code changes. - </p> - {#see_also|@errorFromInt#} - {#header_close#} - {#header_open|@errSetCast#} <pre>{#syntax#}@errSetCast(value: anytype) anytype{#endsyntax#}</pre> <p> @@ -8545,16 +8533,12 @@ test "decl access by string" { </p> {#header_close#} - {#header_open|@intFromFloat#} - <pre>{#syntax#}@intFromFloat(float: anytype) anytype{#endsyntax#}</pre> - <p> - Converts the integer part of a floating point number to the inferred result type. - </p> + {#header_open|@floatFromInt#} + <pre>{#syntax#}@floatFromInt(int: anytype) anytype{#endsyntax#}</pre> <p> - If the integer part of the floating point number cannot fit in the destination type, - it invokes safety-checked {#link|Undefined Behavior#}. + Converts an integer to the closest floating point representation. The return type is the inferred result type. + To convert the other way, use {#link|@intFromFloat#}. This cast is always safe. </p> - {#see_also|@floatFromInt#} {#header_close#} {#header_open|@frameAddress#} @@ -8686,54 +8670,66 @@ test "integer cast panic" { </p> {#header_close#} - {#header_open|@enumFromInt#} - <pre>{#syntax#}@enumFromInt(integer: anytype) anytype{#endsyntax#}</pre> + {#header_open|@intFromBool#} + <pre>{#syntax#}@intFromBool(value: bool) u1{#endsyntax#}</pre> <p> - Converts an integer into an {#link|enum#} value. The return type is the inferred result type. + Converts {#syntax#}true{#endsyntax#} to {#syntax#}@as(u1, 1){#endsyntax#} and {#syntax#}false{#endsyntax#} to + {#syntax#}@as(u1, 0){#endsyntax#}. </p> + {#header_close#} + + {#header_open|@intFromEnum#} + <pre>{#syntax#}@intFromEnum(enum_or_tagged_union: anytype) anytype{#endsyntax#}</pre> <p> - Attempting to convert an integer which represents no value in the chosen enum type invokes - safety-checked {#link|Undefined Behavior#}. + Converts an enumeration value into its integer tag type. When a tagged union is passed, + the tag value is used as the enumeration value. </p> - {#see_also|@intFromEnum#} + <p> + If there is only one possible enum value, the result is a {#syntax#}comptime_int{#endsyntax#} + known at {#link|comptime#}. + </p> + {#see_also|@enumFromInt#} {#header_close#} - {#header_open|@errorFromInt#} - <pre>{#syntax#}@errorFromInt(value: std.meta.Int(.unsigned, @sizeOf(anyerror) * 8)) anyerror{#endsyntax#}</pre> + {#header_open|@intFromError#} + <pre>{#syntax#}@intFromError(err: anytype) std.meta.Int(.unsigned, @sizeOf(anyerror) * 8){#endsyntax#}</pre> <p> - Converts from the integer representation of an error into {#link|The Global Error Set#} type. + Supports the following types: </p> + <ul> + <li>{#link|The Global Error Set#}</li> + <li>{#link|Error Set Type#}</li> + <li>{#link|Error Union Type#}</li> + </ul> <p> - It is generally recommended to avoid this - cast, as the integer representation of an error is not stable across source code changes. + Converts an error to the integer representation of an error. </p> <p> - Attempting to convert an integer that does not correspond to any error results in - safety-protected {#link|Undefined Behavior#}. + It is generally recommended to avoid this + cast, as the integer representation of an error is not stable across source code changes. </p> - {#see_also|@intFromError#} + {#see_also|@errorFromInt#} {#header_close#} - {#header_open|@floatFromInt#} - <pre>{#syntax#}@floatFromInt(int: anytype) anytype{#endsyntax#}</pre> + {#header_open|@intFromFloat#} + <pre>{#syntax#}@intFromFloat(float: anytype) anytype{#endsyntax#}</pre> <p> - Converts an integer to the closest floating point representation. The return type is the inferred result type. - To convert the other way, use {#link|@intFromFloat#}. This cast is always safe. + Converts the integer part of a floating point number to the inferred result type. </p> - {#header_close#} - - {#header_open|@ptrFromInt#} - <pre>{#syntax#}@ptrFromInt(address: usize) anytype{#endsyntax#}</pre> <p> - Converts an integer to a {#link|pointer|Pointers#}. The return type is the inferred result type. - To convert the other way, use {#link|@intFromPtr#}. Casting an address of 0 to a destination type - which in not {#link|optional|Optional Pointers#} and does not have the {#syntax#}allowzero{#endsyntax#} attribute will result in a - {#link|Pointer Cast Invalid Null#} panic when runtime safety checks are enabled. + If the integer part of the floating point number cannot fit in the destination type, + it invokes safety-checked {#link|Undefined Behavior#}. </p> + {#see_also|@floatFromInt#} + {#header_close#} + + {#header_open|@intFromPtr#} + <pre>{#syntax#}@intFromPtr(value: anytype) usize{#endsyntax#}</pre> <p> - If the destination pointer type does not allow address zero and {#syntax#}address{#endsyntax#} - is zero, this invokes safety-checked {#link|Undefined Behavior#}. + Converts {#syntax#}value{#endsyntax#} to a {#syntax#}usize{#endsyntax#} which is the address of the pointer. + {#syntax#}value{#endsyntax#} can be {#syntax#}*T{#endsyntax#} or {#syntax#}?*T{#endsyntax#}. </p> + <p>To convert the other way, use {#link|@ptrFromInt#}</p> {#header_close#} {#header_open|@max#} @@ -8950,14 +8946,18 @@ pub const PrefetchOptions = struct { </ul> {#header_close#} - {#header_open|@intFromPtr#} - <pre>{#syntax#}@intFromPtr(value: anytype) usize{#endsyntax#}</pre> + {#header_open|@ptrFromInt#} + <pre>{#syntax#}@ptrFromInt(address: usize) anytype{#endsyntax#}</pre> <p> - Converts {#syntax#}value{#endsyntax#} to a {#syntax#}usize{#endsyntax#} which is the address of the pointer. - {#syntax#}value{#endsyntax#} can be {#syntax#}*T{#endsyntax#} or {#syntax#}?*T{#endsyntax#}. + Converts an integer to a {#link|pointer|Pointers#}. The return type is the inferred result type. + To convert the other way, use {#link|@intFromPtr#}. Casting an address of 0 to a destination type + which in not {#link|optional|Optional Pointers#} and does not have the {#syntax#}allowzero{#endsyntax#} attribute will result in a + {#link|Pointer Cast Invalid Null#} panic when runtime safety checks are enabled. + </p> + <p> + If the destination pointer type does not allow address zero and {#syntax#}address{#endsyntax#} + is zero, this invokes safety-checked {#link|Undefined Behavior#}. </p> - <p>To convert the other way, use {#link|@ptrFromInt#}</p> - {#header_close#} {#header_open|@rem#}