Packages
vtc
0.17.1
0.17.5
0.17.4
0.17.3
0.17.2
0.17.1
0.17.0
0.16.9
0.16.8
0.16.7
0.16.6
0.16.5
0.16.4
0.16.2
0.16.1
0.16.0
0.15.4
0.15.3
0.15.2
0.15.1
0.15.0
0.14.5
0.14.4
0.14.3
0.14.2
0.14.1
0.14.0
0.13.15
0.13.14
0.13.13
0.13.12
0.13.11
0.13.10
0.13.9
0.13.8
0.13.7
0.13.6
0.13.5
0.13.4
0.13.3
0.13.2
0.13.1
0.13.0
0.12.1
0.12.0
0.11.1
0.11.0
0.10.10
0.10.9
0.10.8
0.10.7
0.10.6
0.10.5
0.10.4
0.10.3
0.10.2
0.10.1
0.10.0
0.9.2
0.9.1
0.9.0
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.3
0.7.2
0.7.1
0.7.0
0.6.1
0.6.0
0.5.3
0.5.2
0.5.1
0.4.0
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.6
0.2.5
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
A SMPTE timecode library for Elixir
Current section
Files
Jump to
Current section
Files
lib/vtc.ex
defmodule Vtc do
@moduledoc """
Global, top level utilities for Vtc.
For this library's core functionality, see these modules:
- [Framestamp](`Vtc.Framestamp`)
- [Framestamp.Range](`Vtc.Framestamp.Range`)
- [Framerate](`Vtc.Framerate`)
- [Rates](`Vtc.Rates`)
"""
alias Vtc.Framerate
alias Vtc.Framestamp
@doc """
Returns `true` if `error` is an exception that was returned by a `Vtc` function.
"""
@spec is_error?(any()) :: boolean()
def is_error?(%Framestamp.MixedRateArithmeticError{}), do: true
def is_error?(%Framestamp.ParseError{}), do: true
def is_error?(%Framerate.ParseError{}), do: true
def is_error?(%Framestamp.Range.MixedOutTypeArithmeticError{}), do: true
def is_error?(_), do: false
end