From c9843c3d2939e7c80206009768b24bd2d42a43fd Mon Sep 17 00:00:00 2001 From: IhorNehrutsa Date: Wed, 23 Aug 2023 18:13:49 +0300 Subject: [PATCH] extmod/machine_signal: Add signal_print() as repr() function. Test code is: ``` from machine import Pin, Signal signal22= Signal(Pin(22, mode=Pin.OUT)) signal22 signal21= Signal(Pin(21, mode=Pin.IN), invert=True) signal21 ``` Ounput is: ``` Signal(Pin(22)) Signal(Pin(21), invert=True) ``` instead of ``` ``` Co-Authored-By: Jim Mussared Signed-off-by: IhorNehrutsa --- extmod/machine_signal.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/extmod/machine_signal.c b/extmod/machine_signal.c index 63fd0fe479a2b..e38e165f8a1f2 100644 --- a/extmod/machine_signal.c +++ b/extmod/machine_signal.c @@ -113,6 +113,16 @@ STATIC mp_obj_t signal_make_new(const mp_obj_type_t *type, size_t n_args, size_t return MP_OBJ_FROM_PTR(o); } +STATIC void signal_print(const mp_print_t *print, mp_obj_t self_in, mp_print_kind_t kind) { + machine_signal_t *self = MP_OBJ_TO_PTR(self_in); + mp_printf(print, "Signal("); + mp_obj_print_helper(print, self->pin, PRINT_STR); + if (self->invert) { + mp_printf(print, ", invert=True"); + } + mp_printf(print, ")"); +} + STATIC mp_uint_t signal_ioctl(mp_obj_t self_in, mp_uint_t request, uintptr_t arg, int *errcode) { (void)errcode; machine_signal_t *self = MP_OBJ_TO_PTR(self_in); @@ -176,6 +186,7 @@ MP_DEFINE_CONST_OBJ_TYPE( MP_QSTR_Signal, MP_TYPE_FLAG_NONE, make_new, signal_make_new, + print, signal_print, call, signal_call, protocol, &signal_pin_p, locals_dict, &signal_locals_dict pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy