|
|
@@ -746,19 +746,24 @@ MP_DEFINE_CONST_OBJ_TYPE(
|
|
|
&flipperzero_uart_connection_locals_dict);
|
|
|
|
|
|
void flipperzero_module_attr(mp_obj_t self_in, qstr attr, mp_obj_t* dest) {
|
|
|
- if(dest[0] != MP_OBJ_NULL) {
|
|
|
- return;
|
|
|
- }
|
|
|
+ if(dest[0] == MP_OBJ_NULL) {
|
|
|
+ // load attribute
|
|
|
|
|
|
- const char* attribute = qstr_str(attr);
|
|
|
+ const char* attribute = qstr_str(attr);
|
|
|
|
|
|
- if(strstr(attribute, "SPEAKER_NOTE_") == attribute[0]) {
|
|
|
- dest[0] = mp_obj_new_int(42);
|
|
|
+ if(strstr(attribute, "SPEAKER_NOTE_") == attribute[0]) {
|
|
|
+ dest[0] = mp_obj_new_int(42);
|
|
|
+ } else {
|
|
|
+ dest[0] = mp_obj_new_int(13);
|
|
|
+ }
|
|
|
|
|
|
- return;
|
|
|
+ dest[1] = self_in;
|
|
|
+ } else if(dest[1] == MP_OBJ_NULL) {
|
|
|
+ // delete attribute
|
|
|
} else {
|
|
|
- dest[0] = mp_obj_new_int(13);
|
|
|
- //dest[0] = MP_OBJ_NULL;
|
|
|
+ // store attribute
|
|
|
+
|
|
|
+ dest[0] = MP_OBJ_NULL;
|
|
|
}
|
|
|
}
|
|
|
|