feat: update version to 0.2.5 and add stultus module for external API interactions
This commit is contained in:
parent
ab42c9e8a3
commit
9b73e9150b
37
multinut/stultus.py
Normal file
37
multinut/stultus.py
Normal file
@ -0,0 +1,37 @@
|
||||
# multinut/stultus.py
|
||||
|
||||
import requests
|
||||
|
||||
BASE_URL = "https://stultus.chipperfluff.at"
|
||||
|
||||
def _get(path: str, params: dict | list = None) -> bool:
|
||||
try:
|
||||
r = requests.get(f"{BASE_URL}/{path}", params=params, timeout=5)
|
||||
r.raise_for_status()
|
||||
return r.json().get("result", False)
|
||||
except Exception as e:
|
||||
raise RuntimeError(f"[STULTUS] Failed logic call to '{path}': {e}")
|
||||
|
||||
def EQUALS(a, b):
|
||||
return _get("equals", {"a": a, "b": b})
|
||||
|
||||
def GREATER(a, b):
|
||||
return _get("greater", {"a": a, "b": b})
|
||||
|
||||
def LESSER(a, b):
|
||||
return _get("lesser", {"a": a, "b": b})
|
||||
|
||||
def AND(*args):
|
||||
return _get("and", [("val", str(v).lower()) for v in args])
|
||||
|
||||
def OR(*args):
|
||||
return _get("or", [("val", str(v).lower()) for v in args])
|
||||
|
||||
def NOT(x):
|
||||
return _get("not", {"val": str(x).lower()})
|
||||
|
||||
def GREATER_EQUAL(a, b):
|
||||
return OR(GREATER(a, b), EQUALS(a, b))
|
||||
|
||||
def LESSER_EQUAL(a, b):
|
||||
return OR(LESSER(a, b), EQUALS(a, b))
|
||||
Loading…
x
Reference in New Issue
Block a user