NITRO.ex 757 B

123456789101112131415161718192021222324252627282930313233
  1. defmodule NITRO do
  2. require Record
  3. files = ["calendar.hrl", "nitro.hrl", "comboLookup.hrl"]
  4. hrl_files =
  5. Enum.filter(files, fn f ->
  6. !String.contains?(f, "/_") and Path.extname(f) == ".hrl"
  7. end)
  8. Enum.each(
  9. hrl_files,
  10. fn t ->
  11. Enum.each(
  12. Record.extract_all(from_lib: "nitro/include/" <> t),
  13. fn {name, definition} ->
  14. IO.inspect({name, definition, t})
  15. prev = :application.get_env(:kernel, :nitro_tables, [])
  16. case :lists.member(name, prev) do
  17. true ->
  18. :skip
  19. false ->
  20. Record.defrecord(name, definition)
  21. :application.set_env(:kernel, :nitro_tables, [name | prev])
  22. end
  23. end
  24. )
  25. end
  26. )
  27. end