anchor.diff:  -record(cstate, {re, table, storage}).
   
   -define(SERVER, ?MODULE).
  +
  +start_link() ->
  +    Result = gen_server:start_link({local, ?SERVER}, ?MODULE, [], []),
  +    error_logger:info_msg("wallaby_config:start_link result ~p~n", [Result]),
  +    Result.
   
   init(Options) when is_list(Options) ->
       {ok, RE} = re:compile(list_to_binary("(?-mix:^(?:(>=|&&=|\\?=|\\|\\|=)\\s*)+(.*?)\\s*$)")),
  
positive.code: 	    find_failed
      end.
  
  cache_fetch(Kind, Name, Commit, State) ->
      {value, Result} = cache_find(Kind, Name, Commit, State),
      Result.
  
  generic_find(Kind, Name, Commit, State) ->
      case cache_find(Kind, Name, Commit, State) of
  	{value, Config} ->
  	    {value, Config};
  	 find_failed ->
  	    calc_configs(Commit, State),
  	    cache_fetch(Kind, Name, Commit, State)
      end.
  
negative.code: 
  %%% API functions
  
  has(Kind, Name, Commit) ->
      gen_server:call(?SERVER, {has_config, Kind, Name, Commit}).
  
  
  for(Kind, Name, Commit) ->
      gen_server:call(?SERVER, {config_for, Kind, Name, Commit}).
  
  