INNER CODE UNIT · Python

method_from_signature

OverShifted/OverEngine · utils/wren_doc_gen.py:57

def method_from_signature(signature: str):
	is_foreign = signature.startswith("foreign ")
	is_static = "static " in signature

	raw_signature = signature
	if is_foreign:
		raw_signature = raw_signature[len("foreign "):]
	if is_static:
		raw_signature = raw_signature[len("static "):]

	if "=(" in raw_signature:
		left, right = raw_signature.split("=(")
		return PropertySetter(left, is_foreign, is_static, right[:-1])
	if "(" in raw_signature:
		left, right = raw_signature.split("(")
		return SimpleMethod(left, is_foreign, is_static, right[:-1].replace(' ', '').split(','))
	else:
		return PropertyGetter(raw_signature, is_foreign, is_static)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…