anchor.diff:  -type directory()      :: string().
   -type iota_info_item() :: {module(), term()}.
   -type iota_info()      :: [iota_info_item()].
  +-type options()        :: [{xref_server, atom()|pid()}].
   
   %% @doc Scan the given path and extract iota information from BEAM attributes
   %% for all applications found in the path. Additionally, we add information
  
positive.code:                 case xref:add_application(XrefServer, A, [{warnings, false}]) of
                    {ok, _} = R -> R;
                    {error, _, {application_clash, _}} ->
                      [App, Prefix | _] = lists:reverse(filename:split(A)),
                      N = list_to_atom(string:join([Prefix, App], "_")),
                      xref:add_application(XrefServer, A, [{warnings, false},
                                                           {name, N}])
                  end
  
negative.code:           {false, _}    -> []
          end,
    [{is_api, IsApi}, {api, Api}].
  
  
  generate_new_name(AppPath) ->
    [App, Prefix | _] = lists:reverse(filename:split(AppPath)),
    list_to_atom(string:join([Prefix, App], "_")).
  