Current section

Files

Jump to
bin_struct lib bin_struct macro optional_nil_check_expr.ex
Raw

lib/bin_struct/macro/optional_nil_check_expr.ex

defmodule BinStruct.Macro.OptionalNilCheckExpression do
@moduledoc false
def maybe_wrap_optional(output, input, is_optional) do
if is_optional do
wrap_optional(output, input)
else
output
end
end
def wrap_optional(output, input) do
quote do
case unquote(input) do
nil -> nil
unquote(input) -> unquote(output)
end
end
end
end