anchor.diff:      {record_field,LINE,F,?expr(E)}.
   
   
  +map_field({map_field_assoc,LINE,K,V}, S) ->
  +    {map_field_assoc,LINE,?expr(K),?expr(V)};
  +
  +map_field({map_field_exact,LINE,K,V}, S) ->
  +    {map_field_exact,LINE,?expr(K),?expr(V)}.
  +
  +
   bin({bin_element,LINE,P,Size,TSL}, S) ->
       {bin_element,LINE,?expr(P),Size,TSL}.
   
  
positive.code: ?LIST_MAPPER(pattern_list, pattern). % pattern_sequence
  ?LIST_MAPPER(guard_list, guard). % guard sequence
  ?LIST_MAPPER(field_list, field).
  ?LIST_MAPPER(bin_list, bin).
  ?LIST_MAPPER(gen_list, gen).
  
  
negative.code: expr({op,LINE,Op,P}, S) ->
      {op,LINE,Op,?expr(P)};
  
  expr({map,LINE,L}, S) ->
      {map,LINE,?map_field_list(L)};
  
  expr({map,LINE,E,L}, S) ->
      {map,LINE,?expr(E),?map_field_list(L)};
  
  expr({'catch',LINE,E}, S) ->
      {'catch',LINE,?expr(E)};
  
  