Skip to content

Commit 12dcb75

Browse files
committed
Implement Inspect protocol
1 parent fda0d19 commit 12dcb75

2 files changed

Lines changed: 13 additions & 0 deletions

File tree

lib/circular_buffer.ex

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,4 +102,12 @@ defmodule CircularBuffer do
102102
{original, collector_fn}
103103
end
104104
end
105+
106+
defimpl Inspect do
107+
import Inspect.Algebra
108+
109+
def inspect(cb, opts) do
110+
concat(["#CircularBuffer<", to_doc(CB.to_list(cb), opts), ">"])
111+
end
112+
end
105113
end

test/circular_buffer_test.exs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,11 @@ defmodule CircularBufferTest do
107107
end
108108
end
109109

110+
test "can be inspected" do
111+
str = inspect(Enum.into([1,2,3,4], CB.new(4)))
112+
assert str == "#CircularBuffer<[1, 2, 3, 4]>"
113+
end
114+
110115
def size_and_list do
111116
let size <- pos_integer() do
112117
let is <- ints(size*2, []) do

0 commit comments

Comments
 (0)