anchor.diff:  
   
   %% @doc Escape a string so that it is valid within HTML/ XML.
  --spec escape( maybe_text() ) -> maybe_text().
  +-spec escape( maybe_unsafe_text() ) -> maybe_text().
   escape({trans, Tr}) when is_list(Tr) ->
       Tr1 = lists:filtermap(
           fun
  
positive.code: 
  
  %% @doc Ensure that a string is escaped so that it is valid within HTML/ XML.
  -spec escape_check( maybe_text() ) -> maybe_text().
  escape_check({trans, Tr}) when is_list(Tr) ->
      Tr1 = lists:filtermap(
          fun
  
negative.code: ]).
  
  -type text() :: iodata() | {trans, list( {atom(), binary()} )}.
  -type unsafe_text() :: iodata()
                       | {trans, list( {atom(), iodata()} )}
                       | {trans, list( {binary(), iodata()} )}
                       | {trans, map()}.
  -type maybe_text() :: undefined | text().
  -type maybe_unsafe_text() :: undefined | unsafe_text().
  -type maybe_binary() :: undefined | binary().
  -type maybe_iodata() :: undefined | iodata().
  
  