 defmodule Kernel.Typespec do
   @moduledoc """
-  Holds macros and functions for working with typespecs.
+  Provides macros and functions for working with typespecs.
 
   The attributes `@type`, `@opaque`, `@typep`, `@spec` and
   `@callback` available in modules are handled by the equivalent


  ## Defining a type

  @type type_name :: type
  @typep type_name :: type
  @opaque type_name :: type

  For more details, see documentation for deftype, deftypep and defopaque in
  Kernel.Typespec

  ## Defining a specification

  @spec function_name(type, type) :: type
  @callback function_name(type, type) :: type

  For more details, see documentation for defspec and defcallback in
  Kernel.Typespec

  ## Types


  end

  @doc """
  Returns `true` if the current module defines a callback.
  This function is only available for modules being compiled.
  """
  def defines_callback?(module, name, arity) do
