lib/entity_reference/protocol.ex
defprotocol Noizu.EntityReference.Protocol do
@fallback_to_any true
@spec id(any) :: {:ok, any} | {:error, any}
def id(subject)
@spec kind(any) :: {:ok, any} | {:error, any}
def kind(subject)
@spec ref(any) :: {:ok, any} | {:error, any}
def ref(subject)
@spec sref(any) :: {:ok, any} | {:error, any}
def sref(subject)
@spec entity(any, any) :: {:ok, any} | {:error, any}
def entity(subject, context)
end