anchor.diff:             END OF ty_ancestor.
   
       TYPES: BEGIN OF ty_merge,
  -             repo   TYPE REF TO lcl_repo_online,
  -             source TYPE lcl_git_transport=>ty_branch_list,
  -             target TYPE lcl_git_transport=>ty_branch_list,
  -             common TYPE ty_ancestor,
  -             stree  TYPE lcl_git_porcelain=>ty_expanded_tt,
  -             ttree  TYPE lcl_git_porcelain=>ty_expanded_tt,
  -             ctree  TYPE lcl_git_porcelain=>ty_expanded_tt,
  -             result TYPE lcl_git_porcelain=>ty_expanded_tt,
  -             stage  TYPE REF TO lcl_stage,
  +             repo     TYPE REF TO lcl_repo_online,
  +             source   TYPE lcl_git_transport=>ty_branch_list,
  +             target   TYPE lcl_git_transport=>ty_branch_list,
  +             common   TYPE ty_ancestor,
  +             stree    TYPE lcl_git_porcelain=>ty_expanded_tt,
  +             ttree    TYPE lcl_git_porcelain=>ty_expanded_tt,
  +             ctree    TYPE lcl_git_porcelain=>ty_expanded_tt,
  +             result   TYPE lcl_git_porcelain=>ty_expanded_tt,
  +             stage    TYPE REF TO lcl_stage,
  +             conflict TYPE string,
              END OF ty_merge.
   
       CLASS-METHODS:
  
positive.code:       IF lv_found_source = abap_false
            OR lv_found_target = abap_false
            OR lv_found_common = abap_false.
          _raise 'merge conflict'.
        ENDIF.
  
        IF <ls_target>-sha1 = <ls_source>-sha1.
  
negative.code:       ro_html->add( '</tr>' ).
      ENDLOOP.
      ro_html->add( '</table>' ).
      ro_html->add( '<br>' ).
      ro_html->add( '<b>' ).
      ro_html->add( ms_merge-conflict ).
      ro_html->add( '</b>' ).
      ro_html->add( '</div>' ).
      ro_html->add( footer( ) ).
  
  