anchor.diff:          '$end'.
   
   
  -%% TODO: implement services...
   %% TODO: implement generation/formatting of records               -> .hrl
   %% TODO: implement generation/formatting of msg+enum descriptions -> .erl
   %% TODO: implement verification of references
  
positive.code:                       {{extensions,reformat_name(Name)}, Exts};
                   ({{extend,Name}, Fields}) ->
                        {{extend,reformat_name(Name)}, reformat_fields(Fields)};
                   ({package, Name}) ->
                        {package, reformat_name(Name)};
                   (OtherElem) ->
  
negative.code:                     flatten_defs(
                        absolutify_names(Defs)))))))).
  
  parses_service_test() ->
      {ok,Defs} = parse_lines(["message m1 {required uint32 f1=1;}",
                               "message m2 {required uint32 f2=1;}",
                               "service s1 {",
                               "  rpc req(m1) returns (m2);",
                               "}"]),
      [{{msg,m1}, _},
       {{msg,m2}, _},
       {{service,s1},[{req,m1,m2}]}] =
          lists:sort(
            normalize_msg_field_options(
              enumerate_msg_fields(
                extend_msgs(
                  resolve_refs(
                    reformat_names(
                      flatten_defs(
                        absolutify_names(Defs)))))))).
  
  
  
  fetches_imports_test() ->
      {ok, Elems} = parse_lines(["package p1;"
                                 "import \"a/b/c.proto\";",
  