Tried this, no success:
defprotocol EscriptTestbed.ScenarioProtocol do
@spec run(any()) :: any()
def run(_)
end
defimpl EscriptTestbed.ScenarioProtocol, for: EscriptTestbed.Scenarios.DataSetA do
def run(_), do: {:error, :use_scenario_directly}
end
defimpl EscriptTestbed.ScenarioProtocol, for: EscriptTestbed.Scenarios.DataSetB do
def run(_), do: {:error, :use_scenario_directly}
end
And then use in CLI via one of:
Protocol.extract_impls(EscriptTestbed.ScenarioProtocol, :code.lib_dir(:elixir, :escript_testbed))
Protocol.extract_impls(EscriptTestbed.ScenarioProtocol, String.to_charlist(Application.app_dir(:escript_testbed)))
Protocol.extract_protocols(:code.lib_dir(:elixir, :escript_testbed))
Protocol.extract_protocols(String.to_charlist(Application.app_dir(:escript_testbed)))
All return empty list. It’s likely though that I’m not using it correctly!






















