Current section
Files
Jump to
Current section
Files
lib/line-message/macro.ex
defmodule LineMessage.Macro do
defmacro __using__(_) do
quote do
import LineMessage.Macro
alias LineMessage.Event
alias LineMessage.Message
alias LineMessage.Reply
end
end
defmacro message(type, [do: block]) do
quote do
event_on("message", unquote(type), fn event -> unquote(block) end)
end
end
def event_on(event_type, message_type, func) do
LineMessage.Event.on(event_type, fn event ->
if event.type == Atom.to_string(message_type) do
func.(event)
end
end)
end
end