From b462ac265ec495347655ea4514e063f7e7436343 Mon Sep 17 00:00:00 2001 From: jesopo Date: Mon, 8 Oct 2018 12:47:48 +0100 Subject: eval.py -> eval_python.py, rust_eval.py -> eval_rust.py --- modules/eval.py | 26 -------------------------- modules/eval_python.py | 27 +++++++++++++++++++++++++++ modules/eval_rust.py | 40 ++++++++++++++++++++++++++++++++++++++++ modules/rust_eval.py | 40 ---------------------------------------- 4 files changed, 67 insertions(+), 66 deletions(-) delete mode 100644 modules/eval.py create mode 100644 modules/eval_python.py create mode 100644 modules/eval_rust.py delete mode 100644 modules/rust_eval.py (limited to 'modules') diff --git a/modules/eval.py b/modules/eval.py deleted file mode 100644 index 7e79311b..00000000 --- a/modules/eval.py +++ /dev/null @@ -1,26 +0,0 @@ -import socket -from src import ModuleManager, utils - -EVAL_URL = "https://eval.appspot.com/eval" - -class Module(ModuleManager.BaseModule): - @utils.hook("received.command.eval", min_args=1) - def eval(self, event): - """ - :help: Evaluate a python statement - :usage: - """ - try: - code, page = utils.http.get_url(EVAL_URL, get_params={ - "statement": event["args"]}, code=True) - except socket.timeout: - event["stderr"].write("%s: eval timed out" % - event["user"].nickname) - return - - if not page == None and code == 200: - event["stdout"].write("%s: %s" % (event["user"].nickname, - page)) - else: - event["stderr"].write("%s: failed to eval" % - event["user"].nickname) diff --git a/modules/eval_python.py b/modules/eval_python.py new file mode 100644 index 00000000..2342e3e2 --- /dev/null +++ b/modules/eval_python.py @@ -0,0 +1,27 @@ +import socket +from src import ModuleManager, utils + +EVAL_URL = "https://eval.appspot.com/eval" + +class Module(ModuleManager.BaseModule): + _name = "Python" + @utils.hook("received.command.eval", min_args=1) + def eval(self, event): + """ + :help: Evaluate a python statement + :usage: + """ + try: + code, page = utils.http.get_url(EVAL_URL, get_params={ + "statement": event["args"]}, code=True) + except socket.timeout: + event["stderr"].write("%s: eval timed out" % + event["user"].nickname) + return + + if not page == None and code == 200: + event["stdout"].write("%s: %s" % (event["user"].nickname, + page)) + else: + event["stderr"].write("%s: failed to eval" % + event["user"].nickname) diff --git a/modules/eval_rust.py b/modules/eval_rust.py new file mode 100644 index 00000000..a1615c66 --- /dev/null +++ b/modules/eval_rust.py @@ -0,0 +1,40 @@ +import json, socket +from src import ModuleManager, utils + +EVAL_URL = "https://play.rust-lang.org/execute" +FN_TEMPLATE = """ +fn main() { + println!(\"{:?}\", { + %s + }); +} +""" + +class Module(ModuleManager.BaseModule): + _name = "Rust" + @utils.hook("received.command.rust", min_args=1) + def eval(self, event): + """ + :help: Evaluate a rust statement + :usage: + """ + try: + page = utils.http.get_url(EVAL_URL, post_data=json.dumps({ + "code": FN_TEMPLATE % event["args"], + "channel": "nightly", + "crateType": "bin", + "mode": "debug", + "tests": False, + "execute": True, + "target": "ast", + "backtrace": False + }), method="POST", json=True) + except socket.timeout: + event["stderr"].write("%s: eval timed out" % + event["user"].nickname) + return + + if page["success"]: + event["stdout"].write(page["stdout"]) + else: + event["stderr"].write(page["stderr"]) diff --git a/modules/rust_eval.py b/modules/rust_eval.py deleted file mode 100644 index a1615c66..00000000 --- a/modules/rust_eval.py +++ /dev/null @@ -1,40 +0,0 @@ -import json, socket -from src import ModuleManager, utils - -EVAL_URL = "https://play.rust-lang.org/execute" -FN_TEMPLATE = """ -fn main() { - println!(\"{:?}\", { - %s - }); -} -""" - -class Module(ModuleManager.BaseModule): - _name = "Rust" - @utils.hook("received.command.rust", min_args=1) - def eval(self, event): - """ - :help: Evaluate a rust statement - :usage: - """ - try: - page = utils.http.get_url(EVAL_URL, post_data=json.dumps({ - "code": FN_TEMPLATE % event["args"], - "channel": "nightly", - "crateType": "bin", - "mode": "debug", - "tests": False, - "execute": True, - "target": "ast", - "backtrace": False - }), method="POST", json=True) - except socket.timeout: - event["stderr"].write("%s: eval timed out" % - event["user"].nickname) - return - - if page["success"]: - event["stdout"].write(page["stdout"]) - else: - event["stderr"].write(page["stderr"]) -- cgit v1.3.1-10-gc9f91