From 3bfbe688f5a62e29835c7d3c4f282e7fff57949d Mon Sep 17 00:00:00 2001 From: Louis Pilfold Date: Thu, 18 Jan 2024 17:47:12 +0000 Subject: Rename --- .../lesson04_externals/code.gleam | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 src/content/chapter5_advanced_features/lesson04_externals/code.gleam (limited to 'src/content/chapter5_advanced_features/lesson04_externals/code.gleam') diff --git a/src/content/chapter5_advanced_features/lesson04_externals/code.gleam b/src/content/chapter5_advanced_features/lesson04_externals/code.gleam new file mode 100644 index 0000000..ade2c54 --- /dev/null +++ b/src/content/chapter5_advanced_features/lesson04_externals/code.gleam @@ -0,0 +1,17 @@ +import gleam/io + +// A type with no Gleam constructors +pub type DateTime + +// An external function that creates an instance of the type +@external(javascript, "./my_package_ffi.mjs", "now") +pub fn now() -> DateTime + +// The `now` function in `./my_package_ffi.mjs` looks like this: +// external function now() { +// return new Date(); +// } + +pub fn main() { + io.debug(now()) +} -- cgit v1.2.3