tres/lib/openflow/instructions/experimenter.ex
2017-11-22 10:41:20 +09:00

18 lines
463 B
Elixir

defmodule Openflow.Instruction.Experimenter do
defstruct(exp_id: 0, data: "")
alias __MODULE__
def new(exp_id, data \\ "") do
%Experimenter{exp_id: exp_id, data: data}
end
def to_binary(%Experimenter{exp_id: exp_id, data: data}) do
length = 8 + byte_size(data)
<<0xffff::16, length::16, exp_id::32, data::bytes>>
end
def read(<<0xffff::16, _::16, exp_id::32, data::bytes>>) do
%Experimenter{exp_id: exp_id, data: data}
end
end