Skip to content

Commit db42555

Browse files
committed
Remove deprecated
1 parent 78ff806 commit db42555

File tree

4 files changed

+3
-71
lines changed

4 files changed

+3
-71
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
## v0.12.0 - 2024-08-19
44

55
- Fixed a bug where `array.to_list` could produce incorrect results.
6+
- The deprecated reference type and functions have been removed.
67

78
## v0.11.0 - 2024-06-26
89

src/gleam/javascript.gleam

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -44,29 +44,3 @@ pub fn type_of(a: value) -> TypeOf
4444
///
4545
@external(javascript, "../gleam_javascript_ffi.mjs", "get_symbol")
4646
pub fn get_symbol(a: String) -> Symbol
47-
48-
@deprecated("The Reference type is being removed from this packge")
49-
pub type Reference(value)
50-
51-
@deprecated("The Reference type is being removed from this packge")
52-
@external(javascript, "../gleam_javascript_ffi.mjs", "dereference")
53-
pub fn dereference(a: Reference(a)) -> a
54-
55-
@deprecated("The Reference type is being removed from this packge")
56-
@external(javascript, "../gleam_javascript_ffi.mjs", "set_reference")
57-
pub fn set_reference(a: Reference(a), b: a) -> a
58-
59-
@deprecated("The Reference type is being removed from this packge")
60-
@external(javascript, "../gleam_javascript_ffi.mjs", "make_reference")
61-
pub fn make_reference(a: a) -> Reference(a)
62-
63-
@deprecated("The Reference type is being removed from this packge")
64-
pub fn update_reference(ref: Reference(a), f: fn(a) -> a) -> a {
65-
let value = dereference(ref)
66-
set_reference(ref, f(value))
67-
value
68-
}
69-
70-
@deprecated("The Reference type is being removed from this packge")
71-
@external(javascript, "../gleam_javascript_ffi.mjs", "reference_equal")
72-
pub fn reference_equal(a: Reference(a), b: Reference(a)) -> Bool

src/gleam_javascript_ffi.mjs

Lines changed: 2 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ export function newPromise(executor) {
8585
return new Promise((resolve) =>
8686
executor((value) => {
8787
resolve(PromiseLayer.wrap(value));
88-
})
88+
}),
8989
);
9090
}
9191

@@ -99,38 +99,14 @@ export function then_await(promise, fn) {
9999

100100
export function map_promise(promise, fn) {
101101
return promise.then((value) =>
102-
PromiseLayer.wrap(fn(PromiseLayer.unwrap(value)))
102+
PromiseLayer.wrap(fn(PromiseLayer.unwrap(value))),
103103
);
104104
}
105105

106106
export function rescue(promise, fn) {
107107
return promise.catch((error) => fn(error));
108108
}
109109

110-
class Reference {
111-
constructor(value) {
112-
this.value = value;
113-
}
114-
}
115-
116-
export function dereference(reference) {
117-
return reference.value;
118-
}
119-
120-
export function make_reference(value) {
121-
return new Reference(value);
122-
}
123-
124-
export function set_reference(ref, value) {
125-
let previous = ref.value;
126-
ref.value = value;
127-
return previous;
128-
}
129-
130-
export function reference_equal(a, b) {
131-
return a === b
132-
}
133-
134110
export function all_promises(...promises) {
135111
if (promises.length === 1) {
136112
return Promise.all(promises[0]);

test/gleam/javascript_test.gleam

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ import gleam/javascript.{
22
BooleanType, FunctionType, NumberType, ObjectType, StringType, SymbolType,
33
UndefinedType,
44
}
5-
import gleeunit/should
65

76
pub fn type_of_test() {
87
let assert UndefinedType = javascript.type_of(Nil)
@@ -27,21 +26,3 @@ pub fn find_symbol_test() {
2726
let assert False =
2827
javascript.get_symbol("Gleam") == javascript.get_symbol("Lua")
2928
}
30-
31-
pub fn reference_test() {
32-
let ref = javascript.make_reference(1)
33-
let assert 1 = javascript.update_reference(ref, fn(a) { a + 1 })
34-
let assert 2 = javascript.dereference(ref)
35-
let assert 2 = javascript.set_reference(ref, 3)
36-
let assert 3 = javascript.dereference(ref)
37-
}
38-
39-
pub fn reference_equality_test() {
40-
javascript.make_reference(0)
41-
|> javascript.reference_equal(javascript.make_reference(0))
42-
|> should.equal(False)
43-
44-
let ref = javascript.make_reference(0)
45-
javascript.reference_equal(ref, ref)
46-
|> should.equal(True)
47-
}

0 commit comments

Comments
 (0)