aboutsummaryrefslogtreecommitdiff
path: root/cogs/compiler.py
diff options
context:
space:
mode:
Diffstat (limited to 'cogs/compiler.py')
-rwxr-xr-xcogs/compiler.py79
1 files changed, 0 insertions, 79 deletions
diff --git a/cogs/compiler.py b/cogs/compiler.py
deleted file mode 100755
index b595992..0000000
--- a/cogs/compiler.py
+++ /dev/null
@@ -1,79 +0,0 @@
-from discord.ext import commands
-import discord
-import requests
-import json
-
-class Compiler(commands.Cog):
- def __init__(self, bot):
- self.bot = bot
-
- @commands.command()
- async def compile(self, ctx, language=None, *, code=None):
- """
- listRequest = requests.get("https://wandbox.org/api/list.json")
- compilerList = json.loads(listRequest.text)
-
- for i in compilerList:
- if i["language"] == language:
- compiler = i["name"]
- print(compiler)
- """
- compilers = {
- "bash": "bash",
- "c":"gcc-head-c",
- "c#":"dotnetcore-head",
- "coffeescript": "coffeescript-head",
- "cpp": "gcc-head",
- "elixir": "elixir-head",
- "go": "go-head",
- "java": "openjdk-head",
- "javascript":"nodejs-head",
- "lua": "lua-5.3.4",
- "perl": "perl-head",
- "php": "php-head",
- "python":"cpython-3.8.0",
- "ruby": "ruby-head",
- "rust": "rust-head",
- "sql": "sqlite-head",
- "swift": "swift-5.0.1",
- "typescript":"typescript-3.5.1",
- "vim-script": "vim-head"
- }
- if not language:
- await ctx.send(f"```json\n{json.dumps(compilers, indent=4)}```")
- if not code:
- await ctx.send("No code found")
- return
- try:
- compiler = compilers[language.lower()]
- except KeyError:
- await ctx.send("Language not found")
- return
- body = {
- "compiler": compiler,
- "code": code,
- "save": True
- }
- head = {
- "Content-Type":"application/json"
- }
- async with ctx.typing():
- r = requests.post("https://wandbox.org/api/compile.json", headers=head, data=json.dumps(body))
- try:
- response = json.loads(r.text)
- #await ctx.send(f"```json\n{json.dumps(response, indent=4)}```")
- print(f"```json\n{json.dumps(response, indent=4)}```")
- except json.decoder.JSONDecodeError:
- await ctx.send(f"```json\n{r.text}```")
-
- try:
- embed=discord.Embed(title="Compiled code")
- embed.add_field(name="Output", value=f'```{response["program_message"]}```', inline=False)
- embed.add_field(name="Exit code", value=response["status"], inline=True)
- embed.add_field(name="Link", value=f"[Permalink]({response['url']})", inline=True)
- await ctx.send(embed=embed)
- except KeyError:
- await ctx.send(f"```json\n{json.dumps(response, indent=4)}```")
-
-def setup(bot):
- bot.add_cog(Compiler(bot))