Я создаю такую модель:
Код: Выделить всё
from textx import metamodel_from_str
funl_grammar = """
Model: statement *= Statement;
Statement: FunctionDefinition | Function;
FunctionDefinition: name=ID '=' function=Function;
Function: name=ID '(' params*=Param (',' params*=Param)* ')';
Param: Function | INT | ID | STRING;
Comment: /#.*$/;
ID: /[a-zA-Z_][a-zA-Z0-9_]*/;
INT: /[0-9]+/;
STRING: /".*"/;
"""
mm = metamodel_from_str(funl_grammar)
Если я создам подобную функцию, где я хочу быть уверен, что параметр является частью моей грамматики, и textx считает его параметром:
Код: Выделить всё
def my_func(param: mm["Param"]):
...
Знаете ли вы, как Я мог бы это исправить? Поиск в Google и ChatGPT пока не помог.
Подробнее здесь: https://stackoverflow.com/questions/788 ... xtx-models