Я хочу проверить тип функции внутри моей проверки подлинности Xtend.Проверить тип в валидаторе Xtend
XText грамматика выглядит следующим образом:
Element:
'Element' name=ID
'feature' feature=DOUBLE
'end' 'Element'
;
Это, как он используется:
Element MyElement
feature 2.5
end Element
Если пытаться использовать INTEGER
значение вместо DOUBLE
для feature
, редактор показывает ошибка:
mismatched input '84900' expecting RULE_DOUBLE
Я бы как перезаписать сообщение. Поэтому я создал метод проверки в моем валидаторе. В методе я хотел бы проверить тип функции. Это то, что я пытаюсь сделать:
@Check
def checkFeatureType(Element element) {
if (element.feature instanceof Double) {
// shows error!
}
}
instanceof
проверка показывает следующее сообщение об ошибке:
Incompatible conditional operand types double or Double and Double or double
Как я могу выполнить проверку типа или есть лучший способ, чтобы переопределить стандартное сообщение упомянутого выше?