Browse Source

Use lambda's for execute_* operations

Yentl Van Tendeloo 7 years ago
parent
commit
f33f7bcb4a
2 changed files with 4 additions and 13 deletions
  1. 3 12
      kernel/modelverse_kernel/request_handler.py
  2. 1 1
      wrappers/modelverse_SCCD.py

+ 3 - 12
kernel/modelverse_kernel/request_handler.py

@@ -6,9 +6,9 @@ from collections import defaultdict
 class RequestHandler(object):
 class RequestHandler(object):
     def __init__(self):
     def __init__(self):
         self.generator_stack = []
         self.generator_stack = []
-        self.handlers = {"CALL": self.execute_call,
-                         "CALL_ARGS": self.execute_call_args,
-                         "CALL_KWARGS": self.execute_call_kwargs,
+        self.handlers = {"CALL": lambda i: i[0],
+                         "CALL_ARGS": lambda i: i[0](*(i[1])),
+                         "CALL_KWARGS": lambda i: i[0](**(i[1])),
                          "SLEEP": self.execute_sleep}
                          "SLEEP": self.execute_sleep}
 
 
     def push_generator(self, gen):
     def push_generator(self, gen):
@@ -47,14 +47,5 @@ class RequestHandler(object):
                 del self.generator_stack[-1]
                 del self.generator_stack[-1]
                 raise
                 raise
 
 
-    def execute_call(self, request_args):
-        return request_args[0]
-
-    def execute_call_kwargs(self, request_args):
-        return request_args[0](**(request_args[1]))
-
-    def execute_call_args(self, request_args):
-        return request_args[0](*(request_args[1]))
-
     def execute_sleep(self, request_args):
     def execute_sleep(self, request_args):
         raise primitive_functions.SleepKernel(request_args[0], request_args[1])
         raise primitive_functions.SleepKernel(request_args[0], request_args[1])

+ 1 - 1
wrappers/modelverse_SCCD.py

@@ -1,7 +1,7 @@
 """
 """
 Generated by Statechart compiler by Glenn De Jonghe, Joeri Exelmans, Simon Van Mierlo, and Yentl Van Tendeloo (for the inspiration)
 Generated by Statechart compiler by Glenn De Jonghe, Joeri Exelmans, Simon Van Mierlo, and Yentl Van Tendeloo (for the inspiration)
 
 
-Date:   Fri Apr 27 13:51:23 2018
+Date:   Fri Apr 27 14:13:41 2018
 
 
 Model author: Yentl Van Tendeloo
 Model author: Yentl Van Tendeloo
 Model name:   MvK Server
 Model name:   MvK Server