anchor.diff:    ok             = generate_dispatch_map(DispatchMapVar, EmptyMap),
     ?NIL.
   
  +%% @private
   -spec is_init('clojerl.Symbol':type()) -> boolean().
   is_init(MultiFnSym) ->
     case 'clojerl.Namespace':find_var(MultiFnSym) of
  
positive.code: %% API
  %%------------------------------------------------------------------------------
  
  -spec init('clojerl.Symbol':type()) -> ?NIL.
  init(MultiFnSym) ->
    DispatchMapVar = dispatch_map_var(MultiFnSym),
  
negative.code: %% @doc Clojure multimethod.
  %%
  %% Implements the creation and update of a multimethod's dispatch map.
  %% The dispatch map is kept in its own BEAM module so that it can be
  %% updated at runtime independently. This eliminates the risk of
  %% killing processes that might be currently using the module where
  %% the dispatch map is kept.
  %%
  %% There is some name mangling when generating the name of the module
  %% for the dispatch map to avoid using invalid filename characters.
  %%
  %% The code in this module should only be used by the multimethod
  %% related functions in the `clojure.core' namespace.
  -module(clj_multimethod).
  
  -include("clojerl.hrl").
  