anchor.diff:          Atom -> {ok, Atom}
       end.
   
  +
   %% @private
   syntax_error(Key, Parse) ->
       {syntax_error, path_key(Key, Parse)}.
  +
  +
  +%% @private
  +duplicated_key_error(Key, Parse) ->
  +    {duplicated_key, path_key(Key, Parse)}.
   
   
   %% @private
  
positive.code: %% Types
  %% ===================================================================
  
  -type syntax() :: #{key() => syntax_opt()}.
  
  -type syntax_opt() ::
      syntax_term() |
  
negative.code:     map |
      log_level |
      {mfa, module(), atom(), [term()]} |
      syntax() |                     % Allow for nested objects
      list() |                    % First matching option is used
      syntax_fun().
  
  
  -type key() :: atom() | binary().
  -type val() :: term().
  
  
  