   a record after extracting it from an Erlang library that uses anonymous
   functions for defaults.
 
-      Record.defrecord :my_rec, Record.extract(...)
+      Record.defrecord(:my_rec, Record.extract(...))
       #=> ** (ArgumentError) invalid value for record field fun_field,
       #=>   cannot escape #Function<12.90072148/2 in :erl_eval.expr/5>.
 


      defmodule User do
        require Record
        Record.defrecord :user, [name: "meg", age: "25"]
      end

  In the example above, a set of macros named `user` but with different

  ## Examples

      iex> Record.extract(:file_info, from_lib: "kernel/include/file.hrl")
      [
        size: :undefined,
        type: :undefined,
        access: :undefined,
        atime: :undefined,
        mtime: :undefined,
        ctime: :undefined,
        mode: :undefined,
        links: :undefined,
        major_device: :undefined,
        minor_device: :undefined,
        inode: :undefined,
        uid: :undefined,
        gid: :undefined
      ]

  """
  @spec extract(name :: atom, keyword) :: keyword
