lib/appsignal/metadata.ex
defprotocol Appsignal.Metadata do
@fallback_to_any true
@spec metadata(t) :: map()
def metadata(value)
@fallback_to_any true
@spec name(t) :: nil | binary()
def name(value)
@fallback_to_any true
@spec category(t) :: nil | binary()
def category(value)
@fallback_to_any true
@spec params(t) :: map()
def params(value)
@fallback_to_any true
@spec session(t) :: map()
def session(value)
end
defimpl Appsignal.Metadata, for: Any do
def metadata(_) do
%{}
end
def name(_) do
nil
end
def category(_) do
nil
end
def params(_) do
%{}
end
def session(_) do
%{}
end
end