View Source String.Chars protocol (Elixir v1.15.0)

The String.Chars protocol is responsible for converting a structure to a binary (only if applicable).

The only function required to be implemented is to_string/1, which does the conversion.

The to_string/1 function automatically imported by Kernel invokes this protocol. String interpolation also invokes to_string/1 in its arguments. For example, "foo#{bar}" is the same as "foo" <> to_string(bar).

Link to this section Summary

Types

t()

All the types that implement this protocol.

Functions

Converts term to a string.

Link to this section Types

@type t() :: term()

All the types that implement this protocol.

Link to this section Functions

@spec to_string(t()) :: String.t()

Converts term to a string.