Skip to content

Commit fc219e7

Browse files
author
José Valim
committed
IO.ANSI now uses binding
1 parent 96a103d commit fc219e7

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

lib/elixir/lib/io/ansi.ex

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,14 @@ defmodule IO.ANSI.Sequence do
22
@moduledoc false
33

44
defmacro defsequence(name, code) do
5-
quote do
6-
name = unquote(name)
7-
code = unquote(code)
8-
9-
def name, [], [], do:
10-
quote do: "\e[#{unquote(code)}m"
11-
12-
args =
13-
quote do: [<< unquote(atom_to_binary(name)), rest :: binary >> ]
14-
15-
defp :escape_sequence, args, [], do:
16-
quote do: { "\e[#{unquote(code)}m", rest }
5+
quote binding: [name: name, code: code] do
6+
def unquote(name)() do
7+
"\e[#{unquote(code)}m"
8+
end
9+
10+
defp escape_sequence(<< unquote(atom_to_binary(name)), rest :: binary >>) do
11+
{ "\e[#{unquote(code)}m", rest }
12+
end
1713
end
1814
end
1915
end

0 commit comments

Comments
 (0)