anchor.diff:      end.
   
   
  -% Search file tokens for an export header, then perform processing.
  +% Search file tokens for an export directive, then perform processing.
   find_exports({ok, Toks, _}) ->
       find_exports(Toks);
   
  -find_exports([{atom, _LineNo, export} | Toks]) ->
  +find_exports([{'-', _} | [{atom, _, export} | [{'(', _} | [{'[', _} | Toks]]]]) ->
       process_exports(Toks);
   
   find_exports([_ | Toks]) ->
  
positive.code: % Provides a means of extracting token data from a given file.
  
  -module(tokdata).
  -export([map_export_data/1]).
  
  
  % Returns a map of the line numbers of exported functions keyed by function name/arity.
  % Throughout the file, this key is referred to as an "export atom" or "definition atom".
  map_export_data(Filename) ->
      Toks = tokenize_file(Filename),
      match_export_lines(Toks, find_exports(Toks), #{}).
  
  
negative.code: process_exports(_) ->
      badarg.
  
  process_exports([{atom, _, Name} | [{'/', _} | [{integer, _, Arity} | Toks]]], Exp) ->
      process_exports(Toks, [list_to_atom(atom_to_list(Name) ++ "/" ++ integer_to_list(Arity)) | Exp]);
  
  process_exports([{',', _} | Toks], Exp) ->
      process_exports(Toks, Exp);
  
  process_exports([{']', _} | [{')', _} | _Toks]], Exp) ->
      lists:reverse(Exp);
  