View Source Moar.Atom (Moar v1.24.0)

Atom-related functions.

Link to this section Summary

Functions

Given an atom, returns the atom. Given a string, converts it into an atom, converting non-alphanumeric characters into underscores (via Moar.String.slug/2).

Converts a string to an atom (via String.to_atom/1), and returns atoms unchanged.

Converts an atom to a string (via Atom.to_string/1), and returns strings unchanged.

Link to this section Functions

@spec atomize(atom() | binary()) :: atom()

Given an atom, returns the atom. Given a string, converts it into an atom, converting non-alphanumeric characters into underscores (via Moar.String.slug/2).

examples

Examples

iex> Moar.Atom.atomize(:my_atom)
:my_atom

iex> Moar.Atom.atomize("my-atom")
:my_atom
@spec from_string(atom() | binary()) :: atom()

Converts a string to an atom (via String.to_atom/1), and returns atoms unchanged.

Useful when you aren't sure ahead of time whether you have a string or an atom.

examples

Examples

iex> Moar.Atom.from_string("foo")
:foo

iex> Moar.Atom.from_string(:bar)
:bar

iex> Moar.Atom.from_string(nil)
** (ArgumentError) Unable to convert nil into an atom
@spec to_string(atom() | binary()) :: binary()

Converts an atom to a string (via Atom.to_string/1), and returns strings unchanged.

Useful when you aren't sure ahead of time whether you have a string or an atom.

examples

Examples

iex> Moar.Atom.to_string("foo")
"foo"

iex> Moar.Atom.to_string(:bar)
"bar"

iex> Moar.Atom.to_string(nil)
** (ArgumentError) Unable to convert nil into a string