Skip to content

Instantly share code, notes, and snippets.

@radar
Created January 17, 2017 05:01
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
Star You must be signed in to star a gist
Save radar/baf6251ea0891fc043828cb32a65ba5d to your computer and use it in GitHub Desktop.
defmodule JSONParser do
@behaviour Parser
def parse(str), do: str # ... parse JSON
def extensions, do: ["json"]
end
defmodule Parser do
@callback parse(String.t) :: String.t
@callback extensions() :: [String.t]
end
defmodule YAMLParser do
@behaviour Parser
def parse(str), do: [str] # ... parse YAML
def extensions, do: ["yml"]
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment