gluple

Package Version Hex Docs Erlang-compatible JavaScript-compatible

Tuple methods for Gleam

gleam add gluple
import gluple/reflect as gr
import gluple/addition as ga
import gluple/transform as gt
import gluple/removal as grm

pub fn main() {
  gr.is_tuple(#(1, 2, 3)) // True

  gr.tuple_size(#(1, True, "test")) // Ok(3)

  gr.tuple_element(#("test"), 0) // Ok(dynamic.from("test"))

  gr.tuple_to_list(#(1, 2, 3)) // Ok([dynamic.from(1), dynamic.from(2), dynamic.from(3)])

  gr.list_to_tuple([1, 2, 3]) // dynamic.from(#(1, 2, 3))

  ga.append2(#(1, True), "test") // #(1, True, "test")

  {
    use _n, _b, <- ga.with_append2(#(1, True))
    "test"
  } // #(1, True, "test")

  gt.replace_last2(#(1, True), "test") // #(1, "test")

  {
    use _n, _b, <- ga.with_replace2(#(1, True))
    "test"
  } // #(1, "test")

  #(1, True) |> grm.remove_first2 // #(True)
}

Further documentation can be found at https://hexdocs.pm/gluple.

Development

gleam run   # Run the project
gleam test  # Run the tests
gleam shell # Run an Erlang shell
Search Document