1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
|
%global _empty_manifest_terminate_build 0
Name: python-Events
Version: 0.4
Release: 1
Summary: Bringing the elegance of C# EventHandler to Python
License: BSD
URL: http://github.com/pyeve/events
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/f6/2b/b92ae30db60cb3c2043da3b72abf30158c92cc77922280b45e9edf36bbf8/Events-0.4.tar.gz
BuildArch: noarch
%description
The C# language provides a handy way to declare, subscribe to and fire events.
Technically, an event is a "slot" where callback functions (event handlers) can
be attached to - a process referred to as subscribing to an event. Here is
a handy package that encapsulates the core to event subscription and event
firing and feels like a "natural" part of the language.
>>> def something_changed(reason):
>>> from events import Events
>>> events = Events()
>>> events.on_change += something_changed
Multiple callback functions can subscribe to the same event. When the event is
fired, all attached event handlers are invoked in sequence. To fire the event,
perform a call on the slot:
>>> events.on_change('it had to happen')
'something changed because it had to happen'
By default, Events does not check if an event can be subscribed to and fired.
You can predefine events by subclassing Events and listing them. Attempts to
subscribe to or fire an undefined event will raise an EventsException.
>>> class MyEvents(Events):
>>> events = MyEvents()
# this will raise an EventsException as `on_change` is unknown to MyEvents:
>>> events.on_change += something_changed
You can also predefine events for a single Events instance by passing an
iterator to the constructor.
>>> events = Events(('on_this', 'on_that'))
# this will raise an EventsException as `on_change` is unknown to events:
>>> events.on_change += something_changed
%package -n python3-Events
Summary: Bringing the elegance of C# EventHandler to Python
Provides: python-Events
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-Events
The C# language provides a handy way to declare, subscribe to and fire events.
Technically, an event is a "slot" where callback functions (event handlers) can
be attached to - a process referred to as subscribing to an event. Here is
a handy package that encapsulates the core to event subscription and event
firing and feels like a "natural" part of the language.
>>> def something_changed(reason):
>>> from events import Events
>>> events = Events()
>>> events.on_change += something_changed
Multiple callback functions can subscribe to the same event. When the event is
fired, all attached event handlers are invoked in sequence. To fire the event,
perform a call on the slot:
>>> events.on_change('it had to happen')
'something changed because it had to happen'
By default, Events does not check if an event can be subscribed to and fired.
You can predefine events by subclassing Events and listing them. Attempts to
subscribe to or fire an undefined event will raise an EventsException.
>>> class MyEvents(Events):
>>> events = MyEvents()
# this will raise an EventsException as `on_change` is unknown to MyEvents:
>>> events.on_change += something_changed
You can also predefine events for a single Events instance by passing an
iterator to the constructor.
>>> events = Events(('on_this', 'on_that'))
# this will raise an EventsException as `on_change` is unknown to events:
>>> events.on_change += something_changed
%package help
Summary: Development documents and examples for Events
Provides: python3-Events-doc
%description help
The C# language provides a handy way to declare, subscribe to and fire events.
Technically, an event is a "slot" where callback functions (event handlers) can
be attached to - a process referred to as subscribing to an event. Here is
a handy package that encapsulates the core to event subscription and event
firing and feels like a "natural" part of the language.
>>> def something_changed(reason):
>>> from events import Events
>>> events = Events()
>>> events.on_change += something_changed
Multiple callback functions can subscribe to the same event. When the event is
fired, all attached event handlers are invoked in sequence. To fire the event,
perform a call on the slot:
>>> events.on_change('it had to happen')
'something changed because it had to happen'
By default, Events does not check if an event can be subscribed to and fired.
You can predefine events by subclassing Events and listing them. Attempts to
subscribe to or fire an undefined event will raise an EventsException.
>>> class MyEvents(Events):
>>> events = MyEvents()
# this will raise an EventsException as `on_change` is unknown to MyEvents:
>>> events.on_change += something_changed
You can also predefine events for a single Events instance by passing an
iterator to the constructor.
>>> events = Events(('on_this', 'on_that'))
# this will raise an EventsException as `on_change` is unknown to events:
>>> events.on_change += something_changed
%prep
%autosetup -n Events-0.4
%build
%py3_build
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-Events -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Fri Apr 21 2023 Python_Bot <Python_Bot@openeuler.org> - 0.4-1
- Package Spec generated
|