From c3074055bbaa4604e4985b00b0e244ce533cb32e Mon Sep 17 00:00:00 2001 From: Giacomo Cavalieri Date: Tue, 20 Aug 2024 09:06:26 +0200 Subject: Remove target annotation from bit_array inspect --- src/gleam/bit_array.gleam | 8 +------- src/gleam_stdlib.mjs | 4 ++-- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/src/gleam/bit_array.gleam b/src/gleam/bit_array.gleam index eb2a74d..23b243a 100644 --- a/src/gleam/bit_array.gleam +++ b/src/gleam/bit_array.gleam @@ -1,6 +1,5 @@ //// BitArrays are a sequence of binary data of any length. -@target(erlang) import gleam/int import gleam/string @@ -145,7 +144,6 @@ pub fn base16_encode(input: BitArray) -> String @external(javascript, "../gleam_stdlib.mjs", "base16_decode") pub fn base16_decode(input: String) -> Result(BitArray, Nil) -@target(javascript) /// Converts a bit array to a string containing the decimal value of each byte. /// /// ## Examples @@ -158,15 +156,11 @@ pub fn base16_decode(input: String) -> Result(BitArray, Nil) /// // -> "<<100, 5:size(3)>>" /// ``` /// -@external(javascript, "../gleam_stdlib.mjs", "bit_array_inspect") -pub fn inspect(input: BitArray) -> String - -@target(erlang) pub fn inspect(input: BitArray) -> String { do_inspect(input, "<<") <> ">>" } -@target(erlang) +@external(javascript, "../gleam_stdlib.mjs", "bit_array_inspect") fn do_inspect(input: BitArray, accumulator: String) -> String { case input { <<>> -> accumulator diff --git a/src/gleam_stdlib.mjs b/src/gleam_stdlib.mjs index 3296b67..a89c829 100644 --- a/src/gleam_stdlib.mjs +++ b/src/gleam_stdlib.mjs @@ -913,6 +913,6 @@ export function base16_decode(string) { return new Ok(new BitArray(bytes)); } -export function bit_array_inspect(bits) { - return `<<${[...bits.buffer].join(", ")}>>`; +export function bit_array_inspect(bits, acc) { + return `${acc}${[...bits.buffer].join(", ")}`; } -- cgit v1.2.3