Skip to content

Commit 0d9983a

Browse files
giacomocavalierilpil
authored andcommitted
Remove target annotations
1 parent c8f1b52 commit 0d9983a

File tree

7 files changed

+20
-79
lines changed

7 files changed

+20
-79
lines changed

src/gleam/bit_array.gleam

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -76,22 +76,17 @@ pub fn to_string(bits: BitArray) -> Result(String, Nil) {
7676
do_to_string(bits)
7777
}
7878

79-
@target(erlang)
8079
@external(erlang, "gleam_stdlib", "identity")
8180
fn unsafe_to_string(a: BitArray) -> String
8281

83-
@target(erlang)
82+
@external(javascript, "../gleam_stdlib.mjs", "bit_array_to_string")
8483
fn do_to_string(bits: BitArray) -> Result(String, Nil) {
8584
case is_utf8(bits) {
8685
True -> Ok(unsafe_to_string(bits))
8786
False -> Error(Nil)
8887
}
8988
}
9089

91-
@target(javascript)
92-
@external(javascript, "../gleam_stdlib.mjs", "bit_array_to_string")
93-
fn do_to_string(a: BitArray) -> Result(String, Nil)
94-
9590
/// Creates a new bit array by joining multiple binaries.
9691
///
9792
/// ## Examples

src/gleam/dynamic.gleam

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
@target(erlang)
21
import gleam/bit_array
32
import gleam/dict.{type Dict}
43
import gleam/int
@@ -105,7 +104,7 @@ fn map_errors(
105104
result.map_error(result, list.map(_, f))
106105
}
107106

108-
@target(erlang)
107+
@external(javascript, "../gleam_stdlib.mjs", "decode_string")
109108
fn decode_string(data: Dynamic) -> Result(String, DecodeErrors) {
110109
bit_array(data)
111110
|> map_errors(put_expected(_, "String"))
@@ -118,15 +117,10 @@ fn decode_string(data: Dynamic) -> Result(String, DecodeErrors) {
118117
})
119118
}
120119

121-
@target(erlang)
122120
fn put_expected(error: DecodeError, expected: String) -> DecodeError {
123121
DecodeError(..error, expected: expected)
124122
}
125123

126-
@target(javascript)
127-
@external(javascript, "../gleam_stdlib.mjs", "decode_string")
128-
fn decode_string(a: Dynamic) -> Result(String, DecodeErrors)
129-
130124
/// Return a string indicating the type of the dynamic value.
131125
///
132126
/// ```gleam

src/gleam/float.gleam

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -239,19 +239,14 @@ pub fn round(x: Float) -> Int {
239239
do_round(x)
240240
}
241241

242-
@target(erlang)
243242
@external(erlang, "erlang", "round")
244-
fn do_round(a: Float) -> Int
245-
246-
@target(javascript)
247243
fn do_round(x: Float) -> Int {
248244
case x >=. 0.0 {
249245
True -> js_round(x)
250246
_ -> 0 - js_round(negate(x))
251247
}
252248
}
253249

254-
@target(javascript)
255250
@external(javascript, "../gleam_stdlib.mjs", "round")
256251
fn js_round(a: Float) -> Int
257252

src/gleam/string.gleam

Lines changed: 9 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -385,24 +385,16 @@ pub fn split_once(
385385
do_split_once(x, substring)
386386
}
387387

388-
@target(erlang)
389-
@external(erlang, "string", "split")
390-
fn erl_split(a: String, b: String) -> List(String)
391-
392-
@target(erlang)
388+
@external(javascript, "../gleam_stdlib.mjs", "split_once")
393389
fn do_split_once(x: String, substring: String) -> Result(#(String, String), Nil) {
394390
case erl_split(x, substring) {
395391
[first, rest] -> Ok(#(first, rest))
396392
_ -> Error(Nil)
397393
}
398394
}
399395

400-
@target(javascript)
401-
@external(javascript, "../gleam_stdlib.mjs", "split_once")
402-
fn do_split_once(
403-
x x: String,
404-
substring substring: String,
405-
) -> Result(#(String, String), Nil)
396+
@external(erlang, "string", "split")
397+
fn erl_split(a: String, b: String) -> List(String)
406398

407399
/// Creates a new `String` by joining two `String`s together.
408400
///
@@ -565,26 +557,20 @@ pub fn trim(string: String) -> String {
565557
do_trim(string)
566558
}
567559

568-
@target(erlang)
560+
@external(javascript, "../gleam_stdlib.mjs", "trim")
569561
fn do_trim(string: String) -> String {
570562
erl_trim(string, Both)
571563
}
572564

573-
@target(erlang)
565+
@external(erlang, "string", "trim")
566+
fn erl_trim(a: String, b: Direction) -> String
567+
574568
type Direction {
575569
Leading
576570
Trailing
577571
Both
578572
}
579573

580-
@target(erlang)
581-
@external(erlang, "string", "trim")
582-
fn erl_trim(a: String, b: Direction) -> String
583-
584-
@target(javascript)
585-
@external(javascript, "../gleam_stdlib.mjs", "trim")
586-
fn do_trim(string string: String) -> String
587-
588574
/// Removes whitespace on the left of a `String`.
589575
///
590576
/// ## Examples
@@ -598,15 +584,11 @@ pub fn trim_left(string: String) -> String {
598584
do_trim_left(string)
599585
}
600586

601-
@target(erlang)
587+
@external(javascript, "../gleam_stdlib.mjs", "trim_left")
602588
fn do_trim_left(string: String) -> String {
603589
erl_trim(string, Leading)
604590
}
605591

606-
@target(javascript)
607-
@external(javascript, "../gleam_stdlib.mjs", "trim_left")
608-
fn do_trim_left(string string: String) -> String
609-
610592
/// Removes whitespace on the right of a `String`.
611593
///
612594
/// ## Examples
@@ -620,15 +602,11 @@ pub fn trim_right(string: String) -> String {
620602
do_trim_right(string)
621603
}
622604

623-
@target(erlang)
605+
@external(javascript, "../gleam_stdlib.mjs", "trim_right")
624606
fn do_trim_right(string: String) -> String {
625607
erl_trim(string, Trailing)
626608
}
627609

628-
@target(javascript)
629-
@external(javascript, "../gleam_stdlib.mjs", "trim_right")
630-
fn do_trim_right(string string: String) -> String
631-
632610
/// Splits a non-empty `String` into its first element (head) and rest (tail).
633611
/// This lets you pattern match on `String`s exactly as you would with lists.
634612
///

src/gleam/string_builder.gleam

Lines changed: 3 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -165,11 +165,7 @@ pub fn reverse(builder: StringBuilder) -> StringBuilder {
165165
do_reverse(builder)
166166
}
167167

168-
@target(erlang)
169168
@external(erlang, "string", "reverse")
170-
fn do_reverse(a: StringBuilder) -> StringBuilder
171-
172-
@target(javascript)
173169
fn do_reverse(builder: StringBuilder) -> StringBuilder {
174170
builder
175171
|> to_string
@@ -178,7 +174,6 @@ fn do_reverse(builder: StringBuilder) -> StringBuilder {
178174
|> from_strings
179175
}
180176

181-
@target(javascript)
182177
@external(javascript, "../gleam_stdlib.mjs", "graphemes")
183178
fn do_to_graphemes(string string: String) -> List(String)
184179

@@ -188,26 +183,17 @@ pub fn split(iodata: StringBuilder, on pattern: String) -> List(StringBuilder) {
188183
do_split(iodata, pattern)
189184
}
190185

191-
@target(erlang)
192186
type Direction {
193187
All
194188
}
195189

196-
@target(erlang)
197-
@external(erlang, "string", "split")
198-
fn erl_split(a: StringBuilder, b: String, c: Direction) -> List(StringBuilder)
199-
200-
@target(erlang)
190+
@external(javascript, "../gleam_stdlib.mjs", "split")
201191
fn do_split(iodata: StringBuilder, pattern: String) -> List(StringBuilder) {
202192
erl_split(iodata, pattern, All)
203193
}
204194

205-
@target(javascript)
206-
@external(javascript, "../gleam_stdlib.mjs", "split")
207-
fn do_split(
208-
builder builder: StringBuilder,
209-
pattern pattern: String,
210-
) -> List(StringBuilder)
195+
@external(erlang, "string", "split")
196+
fn erl_split(a: StringBuilder, b: String, c: Direction) -> List(StringBuilder)
211197

212198
/// Replaces all instances of a pattern with a given string substitute.
213199
///

src/gleam/uri.gleam

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,8 @@
1010
import gleam/int
1111
import gleam/list
1212
import gleam/option.{type Option, None, Some}
13-
@target(javascript)
1413
import gleam/pair
15-
@target(javascript)
1614
import gleam/regex
17-
@target(javascript)
1815
import gleam/result
1916
import gleam/string
2017
import gleam/string_builder.{type StringBuilder}
@@ -60,11 +57,7 @@ pub fn parse(uri_string: String) -> Result(Uri, Nil) {
6057
do_parse(uri_string)
6158
}
6259

63-
@target(erlang)
6460
@external(erlang, "gleam_stdlib", "uri_parse")
65-
fn do_parse(a: String) -> Result(Uri, Nil)
66-
67-
@target(javascript)
6861
fn do_parse(uri_string: String) -> Result(Uri, Nil) {
6962
// From https://tools.ietf.org/html/rfc3986#appendix-B
7063
let pattern =
@@ -120,7 +113,6 @@ fn do_parse(uri_string: String) -> Result(Uri, Nil) {
120113
))
121114
}
122115

123-
@target(javascript)
124116
fn regex_submatches(pattern: String, string: String) -> List(Option(String)) {
125117
pattern
126118
|> regex.compile(regex.Options(case_insensitive: True, multi_line: False))
@@ -131,7 +123,6 @@ fn regex_submatches(pattern: String, string: String) -> List(Option(String)) {
131123
|> result.unwrap([])
132124
}
133125

134-
@target(javascript)
135126
fn noneify_query(x: Option(String)) -> Option(String) {
136127
case x {
137128
None -> None
@@ -143,7 +134,6 @@ fn noneify_query(x: Option(String)) -> Option(String) {
143134
}
144135
}
145136

146-
@target(javascript)
147137
fn noneify_empty_string(x: Option(String)) -> Option(String) {
148138
case x {
149139
Some("") | None -> None
@@ -152,7 +142,6 @@ fn noneify_empty_string(x: Option(String)) -> Option(String) {
152142
}
153143

154144
// Split an authority into its userinfo, host and port parts.
155-
@target(javascript)
156145
fn split_authority(
157146
authority: Option(String),
158147
) -> #(Option(String), Option(String), Option(Int)) {
@@ -181,13 +170,11 @@ fn split_authority(
181170
}
182171
}
183172

184-
@target(javascript)
185173
fn pad_list(list: List(Option(a)), size: Int) -> List(Option(a)) {
186174
list
187175
|> list.append(list.repeat(None, extra_required(list, size)))
188176
}
189177

190-
@target(javascript)
191178
fn extra_required(list: List(a), remaining: Int) -> Int {
192179
case list {
193180
_ if remaining == 0 -> 0

test/gleam/bit_array_test.gleam

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ pub fn append_test() {
3030
|> should.equal(<<1, 2, 3, 4>>)
3131
}
3232

33+
// This test is target specific since it's using non byte-aligned BitArrays
34+
// and those are not supported on the JavaScript target.
3335
@target(erlang)
3436
pub fn append_erlang_only_test() {
3537
<<1, 2:4>>
@@ -47,6 +49,8 @@ pub fn concat_test() {
4749
|> should.equal(<<1, 2, 3, 4>>)
4850
}
4951

52+
// This test is target specific since it's using non byte-aligned BitArrays
53+
// and those are not supported on the JavaScript target.
5054
@target(erlang)
5155
pub fn concat_erlang_only_test() {
5256
[<<1, 2:4>>, <<3>>]
@@ -314,6 +318,8 @@ pub fn inspect_test() {
314318
|> should.equal("<<0, 20, 32, 255>>")
315319
}
316320

321+
// This test is target specific since it's using non byte-aligned BitArrays
322+
// and those are not supported on the JavaScript target.
317323
@target(erlang)
318324
pub fn inspect_partial_bytes_test() {
319325
bit_array.inspect(<<4:5>>)

0 commit comments

Comments
 (0)