Update event.py

Increase CPython compatibility by using a boolean value for the state.
Compatibility also achieveable by only changing is_set() to "return self.state==1" so it returns a boolean.  self.state should never be accessed directly from the outside so could stay an integer.
pull/12/head
Kevin Köck 2019-12-28 16:54:50 +01:00 zatwierdzone przez GitHub
rodzic 9a5fd628cc
commit 2ec2cee240
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
1 zmienionych plików z 4 dodań i 4 usunięć

Wyświetl plik

@ -4,16 +4,16 @@ import uasyncio
class Event(uasyncio.Primitive):
def __init__(self):
super().__init__()
self.state = 0 # 0=unset; 1=set
self.state = False
def set(self): # Event becomes set, schedule any tasks waiting on it
self.run_all()
self.state = 1
self.state = True
def clear(self):
self.state = 0
self.state = False
def is_set(self):
return self.state # CPython compatibility
async def wait(self):
if self.state == 0:
if not self.state:
# Event not set, put the calling task on the event's waiting queue
self.save_current()
yield