anchor.diff:  get_output_format([{to_msg_defs, true} | _]) -> msg_defs;
   get_output_format([_ | Rest])                -> get_output_format(Rest);
   get_output_format([])                        -> file.
  +
  +get_erl_outdir(Opts) ->
  +    proplists:get_value(o_erl, Opts, get_outdir(Opts)).
  +
  +get_hrl_outdir(Opts) ->
  +    proplists:get_value(o_hrl, Opts, get_outdir(Opts)).
  +
  +get_nif_cc_outdir(Opts) ->
  +    proplists:get_value(o_nif_cc, Opts, get_outdir(Opts)).
  +
  +get_outdir(Opts) ->
  +    proplists:get_value(o, Opts, ".").
  +
   
   %% @spec format_error({error, Reason} | Reason) -> io_list()
   %%           Reason = term()
  
positive.code:     plainoptargs_to_args(Rest, [OptArg | Acc]);
  plainoptargs_to_args([], Acc) ->
      {lists:reverse(Acc), []}.
  
  
  change_ext(File, NewExt) ->
      filename:join(filename:dirname(File),
                    filename:basename(File, filename:extension(File)) ++ NewExt).
  
  parse_file(FName, Opts) ->
      case parse_file_and_imports(FName, Opts) of
  
negative.code: %%       several include directories.</dd>
  %%   <dt>`-o Dir'</dt>
  %%   <dd>Specify output directory for where to generate
  %%       the <i>ProtoFile</i>.erl and <i>ProtoFile</i>.hrl</dd>
  %%   <dt>`-o-erl Dir' | `-o-hrl Dir' | `-o-nif-cc Dir'</dt>
  %%   <dd>Specify output directory for where to generate
  %%       the <i>ProtoFile</i>.erl and <i>ProtoFile</i>.hrl</dd> respectively,
  %%       and for the NIF C++ file, if the `-nif' option is specified.
  %%       The `-o-erl Dir' option overrides any `-o Dir' option, and
  %%       similarly for the other file-type specific output options.
  %%   <dt>`-v optionally | always | never'</dt>
  %%   <dd>Specify how the generated encoder should
  %%       verify the message to be encoded.</dd>
  