Skip to content

Commit 78cf0a9

Browse files
committed
Make MP_PROPERTY_GETTER / _GETSET fully declare the property
This will enable setting data attributes, namely, the section of the symbol.
1 parent 5b9f068 commit 78cf0a9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+255
-255
lines changed

ports/atmel-samd/bindings/samd/Clock.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ STATIC mp_obj_t samd_clock_get_enabled(mp_obj_t self_in) {
5353

5454
MP_DEFINE_CONST_FUN_OBJ_1(samd_clock_get_enabled_obj, samd_clock_get_enabled);
5555

56-
const mp_obj_property_getter_t samd_clock_enabled_obj = MP_PROPERTY_GETTER(samd_clock_enabled_obj,
56+
MP_PROPERTY_GETTER(samd_clock_enabled_obj,
5757
(mp_obj_t)&samd_clock_get_enabled_obj);
5858

5959
//| parent: Union[Clock, None]
@@ -78,7 +78,7 @@ STATIC mp_obj_t samd_clock_get_parent(mp_obj_t self_in) {
7878

7979
MP_DEFINE_CONST_FUN_OBJ_1(samd_clock_get_parent_obj, samd_clock_get_parent);
8080

81-
const mp_obj_property_getter_t samd_clock_parent_obj = MP_PROPERTY_GETTER(samd_clock_parent_obj,
81+
MP_PROPERTY_GETTER(samd_clock_parent_obj,
8282
(mp_obj_t)&samd_clock_get_parent_obj);
8383

8484
//| frequency: int
@@ -91,7 +91,7 @@ STATIC mp_obj_t samd_clock_get_frequency(mp_obj_t self_in) {
9191

9292
MP_DEFINE_CONST_FUN_OBJ_1(samd_clock_get_frequency_obj, samd_clock_get_frequency);
9393

94-
const mp_obj_property_getter_t samd_clock_frequency_obj = MP_PROPERTY_GETTER(samd_clock_frequency_obj,
94+
MP_PROPERTY_GETTER(samd_clock_frequency_obj,
9595
(mp_obj_t)&samd_clock_get_frequency_obj);
9696

9797
//| calibration: int
@@ -118,7 +118,7 @@ STATIC mp_obj_t samd_clock_set_calibration(mp_obj_t self_in, mp_obj_t calibratio
118118

119119
MP_DEFINE_CONST_FUN_OBJ_2(samd_clock_set_calibration_obj, samd_clock_set_calibration);
120120

121-
const mp_obj_property_getset_t samd_clock_calibration_obj = MP_PROPERTY_GETSET(samd_clock_calibration_obj,
121+
MP_PROPERTY_GETSET(samd_clock_calibration_obj,
122122
(mp_obj_t)&samd_clock_get_calibration_obj,
123123
(mp_obj_t)&samd_clock_set_calibration_obj);
124124

ports/broadcom/bindings/videocore/Framebuffer.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ STATIC mp_obj_t videocore_framebuffer_get_width(mp_obj_t self_in) {
9696
return MP_OBJ_NEW_SMALL_INT(common_hal_videocore_framebuffer_get_width(self));
9797
}
9898
MP_DEFINE_CONST_FUN_OBJ_1(videocore_framebuffer_get_width_obj, videocore_framebuffer_get_width);
99-
const mp_obj_property_getter_t videocore_framebuffer_width_obj = MP_PROPERTY_GETTER(videocore_framebuffer_width_obj,
99+
MP_PROPERTY_GETTER(videocore_framebuffer_width_obj,
100100
(mp_obj_t)&videocore_framebuffer_get_width_obj);
101101

102102
//| height: int
@@ -109,7 +109,7 @@ STATIC mp_obj_t videocore_framebuffer_get_height(mp_obj_t self_in) {
109109
}
110110
MP_DEFINE_CONST_FUN_OBJ_1(videocore_framebuffer_get_height_obj, videocore_framebuffer_get_height);
111111

112-
const mp_obj_property_getter_t videocore_framebuffer_height_obj = MP_PROPERTY_GETTER(videocore_framebuffer_height_obj,
112+
MP_PROPERTY_GETTER(videocore_framebuffer_height_obj,
113113
(mp_obj_t)&videocore_framebuffer_get_height_obj);
114114

115115
STATIC const mp_rom_map_elem_t videocore_framebuffer_locals_dict_table[] = {

ports/raspberrypi/bindings/rp2pio/StateMachine.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -729,7 +729,7 @@ STATIC mp_obj_t rp2pio_statemachine_obj_set_frequency(mp_obj_t self_in, mp_obj_t
729729
}
730730
MP_DEFINE_CONST_FUN_OBJ_2(rp2pio_statemachine_set_frequency_obj, rp2pio_statemachine_obj_set_frequency);
731731

732-
const mp_obj_property_getset_t rp2pio_statemachine_frequency_obj = MP_PROPERTY_GETSET(rp2pio_statemachine_frequency_obj,
732+
MP_PROPERTY_GETSET(rp2pio_statemachine_frequency_obj,
733733
(mp_obj_t)&rp2pio_statemachine_get_frequency_obj,
734734
(mp_obj_t)&rp2pio_statemachine_set_frequency_obj);
735735

@@ -745,7 +745,7 @@ STATIC mp_obj_t rp2pio_statemachine_obj_get_rxstall(mp_obj_t self_in) {
745745
}
746746
MP_DEFINE_CONST_FUN_OBJ_1(rp2pio_statemachine_get_rxstall_obj, rp2pio_statemachine_obj_get_rxstall);
747747

748-
const mp_obj_property_getter_t rp2pio_statemachine_rxstall_obj = MP_PROPERTY_GETTER(rp2pio_statemachine_rxstall_obj,
748+
MP_PROPERTY_GETTER(rp2pio_statemachine_rxstall_obj,
749749
(mp_obj_t)&rp2pio_statemachine_get_rxstall_obj);
750750

751751
//| in_waiting: int
@@ -759,7 +759,7 @@ STATIC mp_obj_t rp2pio_statemachine_obj_get_in_waiting(mp_obj_t self_in) {
759759
}
760760
MP_DEFINE_CONST_FUN_OBJ_1(rp2pio_statemachine_get_in_waiting_obj, rp2pio_statemachine_obj_get_in_waiting);
761761

762-
const mp_obj_property_getter_t rp2pio_statemachine_in_waiting_obj = MP_PROPERTY_GETTER(rp2pio_statemachine_in_waiting_obj,
762+
MP_PROPERTY_GETTER(rp2pio_statemachine_in_waiting_obj,
763763
(mp_obj_t)&rp2pio_statemachine_get_in_waiting_obj);
764764

765765
STATIC const mp_rom_map_elem_t rp2pio_statemachine_locals_dict_table[] = {

py/obj.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,7 @@ typedef struct _mp_rom_obj_t { mp_const_obj_t o; } mp_rom_obj_t;
356356

357357
#define MP_DEFINE_CONST_PROP_GET(obj_name, fun_name) \
358358
const mp_obj_fun_builtin_fixed_t fun_name##_obj = {{&mp_type_fun_builtin_1}, .fun._1 = fun_name}; \
359-
const mp_obj_property_getter obj_name = MP_PROPERTY_GETTER(obj_name, (mp_obj_t)&fun_name##_obj);
359+
MP_PROPERTY_GETTER(obj_name, (mp_obj_t)&fun_name##_obj);
360360

361361
// These macros are used to define constant or mutable map/dict objects
362362
// You can put "static" in front of the definition to make it local
@@ -1107,7 +1107,7 @@ typedef struct _mp_rom_obj_static_class_method_t {
11071107
} mp_rom_obj_static_class_method_t;
11081108

11091109
// property
1110-
const mp_obj_t *mp_obj_property_get(mp_obj_t self_in);
1110+
const mp_obj_t *mp_obj_property_get(mp_obj_t self_in, size_t *n_proxy);
11111111

11121112
// sequence helpers
11131113

py/objproperty.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@ typedef struct _mp_obj_property_t {
3838
typedef struct _mp_obj_property_t mp_obj_property_getter_t;
3939
typedef struct _mp_obj_property_t mp_obj_property_getset_t;
4040

41-
#define MP_PROPERTY_GETTER(P, G) {.base.type = &mp_type_property, .proxy = {G, MP_ROM_NONE, MP_ROM_NONE}}
42-
#define MP_PROPERTY_GETSET(P, G, S) {.base.type = &mp_type_property, .proxy = {G, S, MP_ROM_NONE}}
41+
#define MP_PROPERTY_GETTER(P, G) const mp_obj_property_t P = {.base.type = &mp_type_property, .proxy = {G, MP_ROM_NONE, MP_ROM_NONE}}
42+
#define MP_PROPERTY_GETSET(P, G, S) const mp_obj_property_t P = {.base.type = &mp_type_property, .proxy = {G, S, MP_ROM_NONE}}
4343

4444
#endif // MICROPY_PY_BUILTINS_PROPERTY
4545

shared-bindings/_bleio/Adapter.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ static mp_obj_t bleio_adapter_set_enabled(mp_obj_t self, mp_obj_t value) {
128128
}
129129
STATIC MP_DEFINE_CONST_FUN_OBJ_2(bleio_adapter_set_enabled_obj, bleio_adapter_set_enabled);
130130

131-
const mp_obj_property_getset_t bleio_adapter_enabled_obj = MP_PROPERTY_GETSET(bleio_adapter_enabled_obj,
131+
MP_PROPERTY_GETSET(bleio_adapter_enabled_obj,
132132
(mp_obj_t)&bleio_adapter_get_enabled_obj,
133133
(mp_obj_t)&bleio_adapter_set_enabled_obj);
134134

@@ -149,7 +149,7 @@ STATIC mp_obj_t bleio_adapter_set_address(mp_obj_t self, mp_obj_t new_address) {
149149
}
150150
MP_DEFINE_CONST_FUN_OBJ_2(bleio_adapter_set_address_obj, bleio_adapter_set_address);
151151

152-
const mp_obj_property_getset_t bleio_adapter_address_obj = MP_PROPERTY_GETSET(bleio_adapter_address_obj,
152+
MP_PROPERTY_GETSET(bleio_adapter_address_obj,
153153
(mp_obj_t)&bleio_adapter_get_address_obj,
154154
(mp_obj_t)&bleio_adapter_set_address_obj);
155155

@@ -170,7 +170,7 @@ STATIC mp_obj_t bleio_adapter_set_name(mp_obj_t self, mp_obj_t new_name) {
170170
}
171171
MP_DEFINE_CONST_FUN_OBJ_2(bleio_adapter_set_name_obj, bleio_adapter_set_name);
172172

173-
const mp_obj_property_getset_t bleio_adapter_name_obj = MP_PROPERTY_GETSET(bleio_adapter_name_obj,
173+
MP_PROPERTY_GETSET(bleio_adapter_name_obj,
174174
(mp_obj_t)&bleio_adapter_get_name_obj,
175175
(mp_obj_t)&bleio_adapter_set_name_obj);
176176

@@ -371,7 +371,7 @@ STATIC mp_obj_t bleio_adapter_get_advertising(mp_obj_t self) {
371371
}
372372
MP_DEFINE_CONST_FUN_OBJ_1(bleio_adapter_get_advertising_obj, bleio_adapter_get_advertising);
373373

374-
const mp_obj_property_getter_t bleio_adapter_advertising_obj = MP_PROPERTY_GETTER(bleio_adapter_advertising_obj,
374+
MP_PROPERTY_GETTER(bleio_adapter_advertising_obj,
375375
(mp_obj_t)&bleio_adapter_get_advertising_obj);
376376

377377
//| connected: bool
@@ -384,7 +384,7 @@ STATIC mp_obj_t bleio_adapter_get_connected(mp_obj_t self) {
384384
}
385385
MP_DEFINE_CONST_FUN_OBJ_1(bleio_adapter_get_connected_obj, bleio_adapter_get_connected);
386386

387-
const mp_obj_property_getter_t bleio_adapter_connected_obj = MP_PROPERTY_GETTER(bleio_adapter_connected_obj,
387+
MP_PROPERTY_GETTER(bleio_adapter_connected_obj,
388388
(mp_obj_t)&bleio_adapter_get_connected_obj);
389389

390390
//| connections: Tuple[Connection]
@@ -396,7 +396,7 @@ STATIC mp_obj_t bleio_adapter_get_connections(mp_obj_t self) {
396396
}
397397
MP_DEFINE_CONST_FUN_OBJ_1(bleio_adapter_get_connections_obj, bleio_adapter_get_connections);
398398

399-
const mp_obj_property_getter_t bleio_adapter_connections_obj = MP_PROPERTY_GETTER(bleio_adapter_connections_obj,
399+
MP_PROPERTY_GETTER(bleio_adapter_connections_obj,
400400
(mp_obj_t)&bleio_adapter_get_connections_obj);
401401

402402
//| def connect(self, address: Address, *, timeout: float) -> Connection:

shared-bindings/_bleio/Address.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ STATIC mp_obj_t bleio_address_get_address_bytes(mp_obj_t self_in) {
101101
}
102102
MP_DEFINE_CONST_FUN_OBJ_1(bleio_address_get_address_bytes_obj, bleio_address_get_address_bytes);
103103

104-
const mp_obj_property_getter_t bleio_address_address_bytes_obj = MP_PROPERTY_GETTER(bleio_address_address_bytes_obj,
104+
MP_PROPERTY_GETTER(bleio_address_address_bytes_obj,
105105
(mp_obj_t)&bleio_address_get_address_bytes_obj);
106106

107107
//| type: int
@@ -117,7 +117,7 @@ STATIC mp_obj_t bleio_address_get_type(mp_obj_t self_in) {
117117
}
118118
MP_DEFINE_CONST_FUN_OBJ_1(bleio_address_get_type_obj, bleio_address_get_type);
119119

120-
const mp_obj_property_getter_t bleio_address_type_obj = MP_PROPERTY_GETTER(bleio_address_type_obj,
120+
MP_PROPERTY_GETTER(bleio_address_type_obj,
121121
(mp_obj_t)&bleio_address_get_type_obj);
122122

123123
//| def __eq__(self, other: object) -> bool:

shared-bindings/_bleio/Characteristic.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,7 @@ STATIC mp_obj_t bleio_characteristic_get_properties(mp_obj_t self_in) {
167167
}
168168
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_get_properties_obj, bleio_characteristic_get_properties);
169169

170-
const mp_obj_property_getter_t bleio_characteristic_properties_obj = MP_PROPERTY_GETTER(bleio_characteristic_properties_obj,
170+
MP_PROPERTY_GETTER(bleio_characteristic_properties_obj,
171171
(mp_obj_t)&bleio_characteristic_get_properties_obj);
172172

173173
//| uuid: Optional[UUID]
@@ -183,7 +183,7 @@ STATIC mp_obj_t bleio_characteristic_get_uuid(mp_obj_t self_in) {
183183
}
184184
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_get_uuid_obj, bleio_characteristic_get_uuid);
185185

186-
const mp_obj_property_getter_t bleio_characteristic_uuid_obj = MP_PROPERTY_GETTER(bleio_characteristic_uuid_obj,
186+
MP_PROPERTY_GETTER(bleio_characteristic_uuid_obj,
187187
(mp_obj_t)&bleio_characteristic_get_uuid_obj);
188188

189189
//| value: bytearray
@@ -210,7 +210,7 @@ STATIC mp_obj_t bleio_characteristic_set_value(mp_obj_t self_in, mp_obj_t value_
210210
}
211211
STATIC MP_DEFINE_CONST_FUN_OBJ_2(bleio_characteristic_set_value_obj, bleio_characteristic_set_value);
212212

213-
const mp_obj_property_getset_t bleio_characteristic_value_obj = MP_PROPERTY_GETSET(bleio_characteristic_value_obj,
213+
MP_PROPERTY_GETSET(bleio_characteristic_value_obj,
214214
(mp_obj_t)&bleio_characteristic_get_value_obj,
215215
(mp_obj_t)&bleio_characteristic_set_value_obj);
216216

@@ -224,7 +224,7 @@ STATIC mp_obj_t bleio_characteristic_get_max_length(mp_obj_t self_in) {
224224
}
225225
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_get_max_length_obj, bleio_characteristic_get_max_length);
226226

227-
const mp_obj_property_getter_t bleio_characteristic_max_length_obj = MP_PROPERTY_GETTER(bleio_characteristic_max_length_obj,
227+
MP_PROPERTY_GETTER(bleio_characteristic_max_length_obj,
228228
(mp_obj_t)&bleio_characteristic_get_max_length_obj);
229229

230230
//| descriptors: Descriptor
@@ -238,7 +238,7 @@ STATIC mp_obj_t bleio_characteristic_get_descriptors(mp_obj_t self_in) {
238238

239239
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_get_descriptors_obj, bleio_characteristic_get_descriptors);
240240

241-
const mp_obj_property_getter_t bleio_characteristic_descriptors_obj = MP_PROPERTY_GETTER(bleio_characteristic_descriptors_obj,
241+
MP_PROPERTY_GETTER(bleio_characteristic_descriptors_obj,
242242
(mp_obj_t)&bleio_characteristic_get_descriptors_obj);
243243

244244
//| service: Service
@@ -251,7 +251,7 @@ STATIC mp_obj_t bleio_characteristic_get_service(mp_obj_t self_in) {
251251
}
252252
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_get_service_obj, bleio_characteristic_get_service);
253253

254-
const mp_obj_property_getter_t bleio_characteristic_service_obj = MP_PROPERTY_GETTER(bleio_characteristic_service_obj,
254+
MP_PROPERTY_GETTER(bleio_characteristic_service_obj,
255255
(mp_obj_t)&bleio_characteristic_get_service_obj);
256256

257257
//| def set_cccd(self, *, notify: bool = False, indicate: bool = False) -> None:

shared-bindings/_bleio/CharacteristicBuffer.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -173,7 +173,7 @@ STATIC mp_obj_t bleio_characteristic_buffer_obj_get_in_waiting(mp_obj_t self_in)
173173
}
174174
MP_DEFINE_CONST_FUN_OBJ_1(bleio_characteristic_buffer_get_in_waiting_obj, bleio_characteristic_buffer_obj_get_in_waiting);
175175

176-
const mp_obj_property_getter_t bleio_characteristic_buffer_in_waiting_obj = MP_PROPERTY_GETTER(bleio_characteristic_buffer_in_waiting_obj,
176+
MP_PROPERTY_GETTER(bleio_characteristic_buffer_in_waiting_obj,
177177
(mp_obj_t)&bleio_characteristic_buffer_get_in_waiting_obj);
178178

179179
//| def reset_input_buffer(self) -> None:

shared-bindings/_bleio/Connection.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ STATIC mp_obj_t bleio_connection_get_connected(mp_obj_t self_in) {
161161
}
162162
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_connection_get_connected_obj, bleio_connection_get_connected);
163163

164-
const mp_obj_property_getter_t bleio_connection_connected_obj = MP_PROPERTY_GETTER(bleio_connection_connected_obj,
164+
MP_PROPERTY_GETTER(bleio_connection_connected_obj,
165165
(mp_obj_t)&bleio_connection_get_connected_obj);
166166

167167

@@ -175,7 +175,7 @@ STATIC mp_obj_t bleio_connection_get_paired(mp_obj_t self_in) {
175175
}
176176
STATIC MP_DEFINE_CONST_FUN_OBJ_1(bleio_connection_get_paired_obj, bleio_connection_get_paired);
177177

178-
const mp_obj_property_getter_t bleio_connection_paired_obj = MP_PROPERTY_GETTER(bleio_connection_paired_obj,
178+
MP_PROPERTY_GETTER(bleio_connection_paired_obj,
179179
(mp_obj_t)&bleio_connection_get_paired_obj);
180180

181181

@@ -227,11 +227,11 @@ STATIC mp_obj_t bleio_connection_set_connection_interval(mp_obj_t self_in, mp_ob
227227
}
228228
STATIC MP_DEFINE_CONST_FUN_OBJ_2(bleio_connection_set_connection_interval_obj, bleio_connection_set_connection_interval);
229229

230-
const mp_obj_property_getset_t bleio_connection_connection_interval_obj = MP_PROPERTY_GETSET(bleio_connection_connection_interval_obj,
230+
MP_PROPERTY_GETSET(bleio_connection_connection_interval_obj,
231231
(mp_obj_t)&bleio_connection_get_connection_interval_obj,
232232
(mp_obj_t)&bleio_connection_set_connection_interval_obj);
233233

234-
const mp_obj_property_getter_t bleio_connection_max_packet_length_obj = MP_PROPERTY_GETTER(bleio_connection_max_packet_length_obj,
234+
MP_PROPERTY_GETTER(bleio_connection_max_packet_length_obj,
235235
(mp_obj_t)&bleio_connection_get_max_packet_length_obj);
236236

237237
STATIC const mp_rom_map_elem_t bleio_connection_locals_dict_table[] = {

0 commit comments

Comments
 (0)