9
9
10
10
11
11
class RealTimeSubprocess (subprocess .Popen ):
12
+
12
13
inputRequest = "<inputRequest>"
13
14
14
15
def __init__ (self , cmd , write_to_stdout , write_to_stderr , read_from_stdin ):
@@ -209,16 +210,13 @@ def _add_main(self, magics, code):
209
210
tmpCode = re .sub (r"//.*" , "" , code )
210
211
tmpCode = re .sub (r"/\*.*?\*/" , "" , tmpCode , flags = re .M | re .S )
211
212
212
- x = re .search (r"int\s+main\s*\(" , tmpCode )
213
-
214
- if not x :
213
+ if not re .search (r"int\s+main\s*\(" , tmpCode ):
215
214
code = self .main_head + code + self .main_foot
216
215
magics ['cflags' ] += ['-lm' ]
217
216
218
217
return magics , code
219
218
220
- def do_execute (self , code , silent , store_history = True ,
221
- user_expressions = None , allow_stdin = True ):
219
+ def do_execute (self , code , silent , store_history = True , user_expressions = None , allow_stdin = True ):
222
220
223
221
magics , code = self ._filter_magics (code )
224
222
@@ -234,13 +232,9 @@ def do_execute(self, code, silent, store_history=True,
234
232
p .write_contents ()
235
233
if p .returncode != 0 : # Compilation failed
236
234
self ._write_to_stderr ("\n [C++ 14 kernel] Interpreter exited with code {}. The executable cannot be executed" .format (p .returncode ))
237
-
238
- # delete source files before exit
239
235
os .remove (source_file .name )
240
236
os .remove (binary_file .name )
241
-
242
- return {'status' : 'ok' , 'execution_count' : self .execution_count , 'payload' : [],
243
- 'user_expressions' : {}}
237
+ return {'status' : 'ok' , 'execution_count' : self .execution_count , 'payload' : [], 'user_expressions' : {}}
244
238
245
239
p = self .create_jupyter_subprocess ([self .master_path , binary_file .name ] + magics ['args' ])
246
240
while p .poll () is None :
0 commit comments