Defstruct inside __using__`

You don’t need the defmodule __MODULE__ do part:

defmodule Structor do
  defmacro __using__(_) do
    quote do
      defstruct [:field]

      def create(field) do
        %__MODULE__{field: field}
      end
    end
  end
end

defmodule MyStruct do
  use Structor
end

iex> MyStruct.create(:foo)
%MyStruct{field: :foo)