aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLouis Pilfold <louis@lpil.uk>2018-08-09 17:07:47 +0100
committerLouis Pilfold <louis@lpil.uk>2018-08-09 17:07:47 +0100
commit1933c7962d399f3c0e36fa49fce6a77690e4385a (patch)
tree03c35369510a79fe56029871c6ef8ec25aa59ce1
parent012273c4186317171f3405cc794ff9b3085c0e39 (diff)
downloadgleam_stdlib-1933c7962d399f3c0e36fa49fce6a77690e4385a.tar.gz
gleam_stdlib-1933c7962d399f3c0e36fa49fce6a77690e4385a.zip
Remove Foreign dep on compiler module
-rw-r--r--src/Foreign.gleam11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/Foreign.gleam b/src/Foreign.gleam
index 1be59d0..4c3cbe7 100644
--- a/src/Foreign.gleam
+++ b/src/Foreign.gleam
@@ -1,4 +1,4 @@
-module Foreign exposing Foreign, new/1
+module Foreign exposing Foreign, new/1, unsafeCoerce/1, identity/1
doc """
Foreign data is data that we don't know the type of yet.
@@ -12,7 +12,7 @@ external type Foreign
doc """
Convert any Gleam data into Foreign data.
"""
-external new : fn(a) { Foreign } = :gleam :identity
+external new : fn(a) { Foreign } = :"Gleam.Foreign" :identity
doc """
Unsafely cast any type into any other type.o
@@ -20,4 +20,9 @@ Unsafely cast any type into any other type.o
This is an escape hatch for the type system that may be useful when wrapping
native Erlang APIs. It is to be used as a last measure only.
"""
-external unsafeCoerce : fn(a) { b } = :gleam :identity
+external unsafeCoerce : fn(a) { b } = :"Gleam.Foreign" :identity
+
+doc False
+fn identity(x) {
+ x
+}