This is exposed by https://github.com/larshp/todo_logic
From this ABAP source:
CLASS zcl_todo DEFINITION PUBLIC CREATE PUBLIC.
PUBLIC SECTION.
METHODS create
IMPORTING
!is_data TYPE ztodo_data
RETURNING
VALUE(rs_key) TYPE ztodo_key .
METHODS delete
IMPORTING
!is_key TYPE ztodo_key .
METHODS list
RETURNING
VALUE(rt_list) TYPE ztodo_tt .
METHODS update
IMPORTING
!iv_guid TYPE ztodo_key-guid
!is_data TYPE ztodo_data .
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
The definitions section ends up with a duplicate key, ZTODO_KEY being defined two different ways:
"definitions":{
"ZTODO_DATA": {"type":"object", "properties":{"TEXT":{"type":"string" }}},
"ZTODO_KEY": {"type":"object", "properties":{"GUID":{"type":"string", "maxLength": 22 }}},
"ZTODO_KEY":{"type": "object","properties": {"DATA": {"type":"object", "properties":{"GUID":{"type":"string", "maxLength": 22 }}}}},
"ZTODO_TT":{"type": "object","properties": {"DATA": {"type":"array", "items":{"type":"object", "properties":{"MANDT":{"type":"string", "maxLength": 3 },"GUID":{"type":"string", "maxLength": 22 },"TEXT":{"type":"string" }}}}}}
}
This is exposed by https://github.com/larshp/todo_logic
From this ABAP source:
CLASS zcl_todo DEFINITION PUBLIC CREATE PUBLIC.
PUBLIC SECTION.
METHODS create
IMPORTING
!is_data TYPE ztodo_data
RETURNING
VALUE(rs_key) TYPE ztodo_key .
METHODS delete
IMPORTING
!is_key TYPE ztodo_key .
METHODS list
RETURNING
VALUE(rt_list) TYPE ztodo_tt .
METHODS update
IMPORTING
!iv_guid TYPE ztodo_key-guid
!is_data TYPE ztodo_data .
PROTECTED SECTION.
PRIVATE SECTION.
ENDCLASS.
The definitions section ends up with a duplicate key, ZTODO_KEY being defined two different ways:
"definitions":{
"ZTODO_DATA": {"type":"object", "properties":{"TEXT":{"type":"string" }}},
"ZTODO_KEY": {"type":"object", "properties":{"GUID":{"type":"string", "maxLength": 22 }}},
"ZTODO_KEY":{"type": "object","properties": {"DATA": {"type":"object", "properties":{"GUID":{"type":"string", "maxLength": 22 }}}}},
"ZTODO_TT":{"type": "object","properties": {"DATA": {"type":"array", "items":{"type":"object", "properties":{"MANDT":{"type":"string", "maxLength": 3 },"GUID":{"type":"string", "maxLength": 22 },"TEXT":{"type":"string" }}}}}}
}