Skip to content

Commit 2b8c30b

Browse files
committed
Rename {main,code,request}_greenlet to *_context
1 parent 3057732 commit 2b8c30b

File tree

3 files changed

+36
-36
lines changed

3 files changed

+36
-36
lines changed

bpython/curtsiesfrontend/coderunner.py

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,13 @@ class CodeRunner(object):
6161
"""Runs user code in an interpreter.
6262
6363
Running code requests a refresh by calling
64-
request_from_main_greenlet(force_refresh=True), which
64+
request_from_main_context(force_refresh=True), which
6565
suspends execution of the code and switches back to the main greenlet
6666
6767
After load_code() is called with the source code to be run,
6868
the run_code() method should be called to start running the code.
6969
The running code may request screen refreshes and user input
70-
by calling request_from_main_greenlet.
70+
by calling request_from_main_context.
7171
When this are called, the running source code cedes
7272
control, and the current run_code() method call returns.
7373
@@ -93,32 +93,32 @@ def __init__(self, interp=None, request_refresh=lambda: None):
9393
"""
9494
self.interp = interp or code.InteractiveInterpreter()
9595
self.source = None
96-
self.main_greenlet = greenlet.getcurrent()
97-
self.code_greenlet = None
96+
self.main_context = greenlet.getcurrent()
97+
self.code_context = None
9898
self.request_refresh = request_refresh
9999
# waiting for response from main thread
100100
self.code_is_waiting = False
101101
# sigint happened while in main thread
102-
self.sigint_happened_in_main_greenlet = False
102+
self.sigint_happened_in_main_context = False
103103
self.orig_sigint_handler = None
104104

105105
@property
106106
def running(self):
107107
"""Returns greenlet if code has been loaded greenlet has been
108108
started"""
109-
return self.source and self.code_greenlet
109+
return self.source and self.code_context
110110

111111
def load_code(self, source):
112112
"""Prep code to be run"""
113113
assert self.source is None, "you shouldn't load code when some is " \
114114
"already running"
115115
self.source = source
116-
self.code_greenlet = None
116+
self.code_context = None
117117

118118
def _unload_code(self):
119119
"""Called when done running code"""
120120
self.source = None
121-
self.code_greenlet = None
121+
self.code_context = None
122122
self.code_is_waiting = False
123123

124124
def run_code(self, for_code=None):
@@ -128,21 +128,21 @@ def run_code(self, for_code=None):
128128
if source code is complete, returns "done"
129129
if source code is incomplete, returns "unfinished"
130130
"""
131-
if self.code_greenlet is None:
131+
if self.code_context is None:
132132
assert self.source is not None
133-
self.code_greenlet = greenlet.greenlet(self._blocking_run_code)
133+
self.code_context = greenlet.greenlet(self._blocking_run_code)
134134
self.orig_sigint_handler = signal.getsignal(signal.SIGINT)
135135
signal.signal(signal.SIGINT, self.sigint_handler)
136-
request = self.code_greenlet.switch()
136+
request = self.code_context.switch()
137137
else:
138138
assert self.code_is_waiting
139139
self.code_is_waiting = False
140140
signal.signal(signal.SIGINT, self.sigint_handler)
141-
if self.sigint_happened_in_main_greenlet:
142-
self.sigint_happened_in_main_greenlet = False
143-
request = self.code_greenlet.switch(SigintHappened)
141+
if self.sigint_happened_in_main_context:
142+
self.sigint_happened_in_main_context = False
143+
request = self.code_context.switch(SigintHappened)
144144
else:
145-
request = self.code_greenlet.switch(for_code)
145+
request = self.code_context.switch(for_code)
146146

147147
logger.debug('request received from code was %r', request)
148148
if not isinstance(request, RequestFromCodeRunner):
@@ -165,13 +165,13 @@ def run_code(self, for_code=None):
165165
def sigint_handler(self, *args):
166166
"""SIGINT handler to use while code is running or request being
167167
fulfilled"""
168-
if greenlet.getcurrent() is self.code_greenlet:
168+
if greenlet.getcurrent() is self.code_context:
169169
logger.debug('sigint while running user code!')
170170
raise KeyboardInterrupt()
171171
else:
172172
logger.debug('sigint while fulfilling code request sigint handler '
173173
'running!')
174-
self.sigint_happened_in_main_greenlet = True
174+
self.sigint_happened_in_main_context = True
175175

176176
def _blocking_run_code(self):
177177
try:
@@ -180,15 +180,15 @@ def _blocking_run_code(self):
180180
return SystemExitRequest(e.args)
181181
return Unfinished() if unfinished else Done()
182182

183-
def request_from_main_greenlet(self, force_refresh=False):
183+
def request_from_main_context(self, force_refresh=False):
184184
"""Return the argument passed in to .run_code(for_code)
185185
186186
Nothing means calls to run_code must be... ???
187187
"""
188188
if force_refresh:
189-
value = self.main_greenlet.switch(Refresh())
189+
value = self.main_context.switch(Refresh())
190190
else:
191-
value = self.main_greenlet.switch(Wait())
191+
value = self.main_context.switch(Wait())
192192
if value is SigintHappened:
193193
raise KeyboardInterrupt()
194194
return value
@@ -211,7 +211,7 @@ def write(self, s, *args, **kwargs):
211211
if not py3 and isinstance(s, str):
212212
s = s.decode(getpreferredencoding(), 'ignore')
213213
self.on_write(s, *args, **kwargs)
214-
return self.coderunner.request_from_main_greenlet(force_refresh=True)
214+
return self.coderunner.request_from_main_context(force_refresh=True)
215215

216216
# Some applications which use curses require that sys.stdout
217217
# have a method called fileno. One example is pwntools. This

bpython/curtsiesfrontend/interaction.py

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ def __init__(self,
4040
self.permanent_stack = []
4141
if permanent_text:
4242
self.permanent_stack.append(permanent_text)
43-
self.main_greenlet = greenlet.getcurrent()
44-
self.request_greenlet = None
43+
self.main_context = greenlet.getcurrent()
44+
self.request_context = None
4545
self.request_refresh = request_refresh
4646
self.schedule_refresh = schedule_refresh
4747

@@ -76,13 +76,13 @@ def process_event(self, e):
7676
assert self.in_prompt or self.in_confirm or self.waiting_for_refresh
7777
if isinstance(e, RefreshRequestEvent):
7878
self.waiting_for_refresh = False
79-
self.request_greenlet.switch()
79+
self.request_context.switch()
8080
elif isinstance(e, events.PasteEvent):
8181
for ee in e.events:
8282
# strip control seq
8383
self.add_normal_character(ee if len(ee) == 1 else ee[-1])
8484
elif e in ['<ESC>'] or isinstance(e, events.SigIntEvent):
85-
self.request_greenlet.switch(False)
85+
self.request_context.switch(False)
8686
self.escape()
8787
elif e in edit_keys:
8888
self.cursor_offset_in_line, self._current_line = edit_keys[e](
@@ -94,12 +94,12 @@ def process_event(self, e):
9494
elif self.in_prompt and e in ("\n", "\r", "<Ctrl-j>", "Ctrl-m>"):
9595
line = self._current_line
9696
self.escape()
97-
self.request_greenlet.switch(line)
97+
self.request_context.switch(line)
9898
elif self.in_confirm:
9999
if e in ('y', 'Y'):
100-
self.request_greenlet.switch(True)
100+
self.request_context.switch(True)
101101
else:
102-
self.request_greenlet.switch(False)
102+
self.request_context.switch(False)
103103
self.escape()
104104
else: # add normal character
105105
self.add_normal_character(e)
@@ -140,26 +140,26 @@ def should_show_message(self):
140140

141141
# interaction interface - should be called from other greenlets
142142
def notify(self, msg, n=3, wait_for_keypress=False):
143-
self.request_greenlet = greenlet.getcurrent()
143+
self.request_context = greenlet.getcurrent()
144144
self.message_time = n
145145
self.message(msg, schedule_refresh=wait_for_keypress)
146146
self.waiting_for_refresh = True
147147
self.request_refresh()
148-
self.main_greenlet.switch(msg)
148+
self.main_context.switch(msg)
149149

150150
# below Really ought to be called from greenlets other than main because
151151
# they block
152152
def confirm(self, q):
153153
"""Expected to return True or False, given question prompt q"""
154-
self.request_greenlet = greenlet.getcurrent()
154+
self.request_context = greenlet.getcurrent()
155155
self.prompt = q
156156
self.in_confirm = True
157-
return self.main_greenlet.switch(q)
157+
return self.main_context.switch(q)
158158

159159
def file_prompt(self, s):
160160
"""Expected to return a file name, given """
161-
self.request_greenlet = greenlet.getcurrent()
161+
self.request_context = greenlet.getcurrent()
162162
self.prompt = s
163163
self.in_prompt = True
164-
result = self.main_greenlet.switch(s)
164+
result = self.main_context.switch(s)
165165
return result

bpython/curtsiesfrontend/repl.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,7 @@ def process_event(self, e):
128128
self.cursor_offset, self.current_line = self.rl_char_sequences[e](
129129
self.cursor_offset, self.current_line)
130130
elif isinstance(e, events.SigIntEvent):
131-
self.coderunner.sigint_happened_in_main_greenlet = True
131+
self.coderunner.sigint_happened_in_main_context = True
132132
self.has_focus = False
133133
self.current_line = ''
134134
self.cursor_offset = 0
@@ -179,7 +179,7 @@ def add_input_character(self, e):
179179
def readline(self):
180180
self.has_focus = True
181181
self.repl.send_to_stdin(self.current_line)
182-
value = self.coderunner.request_from_main_greenlet()
182+
value = self.coderunner.request_from_main_context()
183183
self.readline_results.append(value)
184184
return value
185185

0 commit comments

Comments
 (0)