@@ -50,7 +50,7 @@ STATIC mp_obj_t canio_listener_read(mp_obj_t self_in) {
50
50
common_hal_canio_listener_check_for_deinit (self );
51
51
52
52
canio_message_obj_t * message = m_new_obj (canio_message_obj_t );
53
- self -> base .type = & canio_message_type ;
53
+ message -> base .type = & canio_message_type ;
54
54
55
55
if (common_hal_canio_listener_readinto (self , message )) {
56
56
return message ;
@@ -92,28 +92,20 @@ STATIC MP_DEFINE_CONST_FUN_OBJ_1(canio_listener_in_waiting_obj, canio_listener_i
92
92
//| """Returns self, unless the object is deinitialized"""
93
93
//| ...
94
94
//|
95
- STATIC mp_obj_t canio_listener_iter (mp_obj_t self_in ) {
96
- canio_listener_obj_t * self = MP_OBJ_TO_PTR (self_in );
97
- common_hal_canio_listener_check_for_deinit (self );
98
- return self ;
99
- }
100
- STATIC MP_DEFINE_CONST_FUN_OBJ_1 (canio_listener_iter_obj , canio_listener_iter );
101
-
102
95
//| def __next__(self):
103
96
//| """Reads a message, after waiting up to self.timeout seconds
104
97
//|
105
98
//| If no message is received in time, raises StopIteration. Otherwise,
106
99
//| a Message is returned."""
107
100
//| ...
108
101
//|
109
- STATIC mp_obj_t canio_listener_next (mp_obj_t self_in ) {
102
+ STATIC mp_obj_t canio_iternext (mp_obj_t self_in ) {
110
103
mp_obj_t result = canio_listener_read (self_in );
111
104
if (result == mp_const_none ) {
112
105
return MP_OBJ_STOP_ITERATION ;
113
106
}
114
107
return result ;
115
108
}
116
- STATIC MP_DEFINE_CONST_FUN_OBJ_1 (canio_listener_next_obj , canio_listener_next );
117
109
118
110
//| def deinit(self) -> None:
119
111
//| """Deinitialize this object, freeing its hardware resources"""
@@ -176,8 +168,6 @@ STATIC const mp_obj_property_t canio_listener_timeout_obj = {
176
168
STATIC const mp_rom_map_elem_t canio_listener_locals_dict_table [] = {
177
169
{ MP_ROM_QSTR (MP_QSTR___enter__ ), MP_ROM_PTR (& canio_listener_enter_obj ) },
178
170
{ MP_ROM_QSTR (MP_QSTR___exit__ ), MP_ROM_PTR (& canio_listener_exit_obj ) },
179
- { MP_ROM_QSTR (MP_QSTR___iter__ ), MP_ROM_PTR (& canio_listener_iter_obj ) },
180
- { MP_ROM_QSTR (MP_QSTR___next__ ), MP_ROM_PTR (& canio_listener_next_obj ) },
181
171
{ MP_ROM_QSTR (MP_QSTR_deinit ), MP_ROM_PTR (& canio_listener_deinit_obj ) },
182
172
{ MP_ROM_QSTR (MP_QSTR_in_waiting ), MP_ROM_PTR (& canio_listener_in_waiting_obj ) },
183
173
{ MP_ROM_QSTR (MP_QSTR_read ), MP_ROM_PTR (& canio_listener_read_obj ) },
@@ -189,5 +179,7 @@ STATIC MP_DEFINE_CONST_DICT(canio_listener_locals_dict, canio_listener_locals_di
189
179
const mp_obj_type_t canio_listener_type = {
190
180
{ & mp_type_type },
191
181
.name = MP_QSTR_Listener ,
182
+ .getiter = mp_identity_getiter ,
183
+ .iternext = canio_iternext ,
192
184
.locals_dict = (mp_obj_dict_t * )& canio_listener_locals_dict ,
193
185
};
0 commit comments