Spaces:
Sleeping
Sleeping
Update parser.py
Browse files
parser.py
CHANGED
@@ -105,6 +105,8 @@ class Parser:
|
|
105 |
}
|
106 |
|
107 |
if func_name in funciones_con_argumento:
|
|
|
|
|
108 |
self.match("OPEN_PAREN")
|
109 |
arg = self.expression()
|
110 |
self.match("CLOSE_PAREN")
|
@@ -112,6 +114,8 @@ class Parser:
|
|
112 |
return {"type": "function", "name": func_name, "arg": arg}
|
113 |
|
114 |
elif func_name in funciones_sin_argumento:
|
|
|
|
|
115 |
self.match("SEMICOLON")
|
116 |
return {"type": "function", "name": func_name, "arg": None}
|
117 |
|
|
|
105 |
}
|
106 |
|
107 |
if func_name in funciones_con_argumento:
|
108 |
+
if self.current()[0] != "OPEN_PAREN":
|
109 |
+
raise SyntaxError(f"La funci贸n '{func_name}' requiere un argumento entre par茅ntesis.")
|
110 |
self.match("OPEN_PAREN")
|
111 |
arg = self.expression()
|
112 |
self.match("CLOSE_PAREN")
|
|
|
114 |
return {"type": "function", "name": func_name, "arg": arg}
|
115 |
|
116 |
elif func_name in funciones_sin_argumento:
|
117 |
+
if self.current()[0] == "OPEN_PAREN":
|
118 |
+
raise SyntaxError(f"La funci贸n '{func_name}' no debe llevar argumentos ni par茅ntesis.")
|
119 |
self.match("SEMICOLON")
|
120 |
return {"type": "function", "name": func_name, "arg": None}
|
121 |
|