From 9232425b8f68e84d192c9c77ca0c3b7b2547d195 Mon Sep 17 00:00:00 2001 From: ssmid <43345275+ssmid@users.noreply.github.com> Date: Wed, 17 Jul 2024 16:06:34 +0200 Subject: [PATCH] single pointer slice syntax added --- doc/langref.html.in | 1 + doc/langref/test_single_item_pointer.zig | 14 ++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/doc/langref.html.in b/doc/langref.html.in index ca13fae095..add68ad082 100644 --- a/doc/langref.html.in +++ b/doc/langref.html.in @@ -1935,6 +1935,7 @@ or
  • {#syntax#}*T{#endsyntax#} - single-item pointer to exactly one item.
  • diff --git a/doc/langref/test_single_item_pointer.zig b/doc/langref/test_single_item_pointer.zig index aa8ae8d609..79252b1fa0 100644 --- a/doc/langref/test_single_item_pointer.zig +++ b/doc/langref/test_single_item_pointer.zig @@ -32,4 +32,18 @@ test "pointer array access" { try expect(array[2] == 4); } +test "slice syntax" { + // Get a pointer to a variable: + var x: i32 = 1234; + const x_ptr = &x; + + // Convert to array pointer using slice syntax: + const x_array_ptr = x_ptr[0..1]; + try expect(@TypeOf(x_array_ptr) == *[1]i32); + + // Coerce to many-item pointer: + const x_many_ptr: [*]i32 = x_array_ptr; + try expect(x_many_ptr[0] == 1234); +} + // test