killme2008 / killme2008/aviatorscript

表达式校验问题

Aperta
#677 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Java
Stelle
5.2k
Fork
906
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

版本:5.4.3
值:{"a ": 20}
表达式:(a >30) (a < 50)

上述表达式调用AviatorEvaluator.validate()时不会报错,但运行时报错AviatorBoolean cannot be cast to AviatorFunction

其实就是表达式之间少了个运算符(比如&&、 ||),请问这类表达式为何不在validate时抛出异常?

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia da AviatorEvaluator.validate() e riproduci il problema con il valore {"a ": 20} e l’espressione (a >30) (a < 50). Traccia il modo in cui le espressioni adiacenti vengono analizzate e validate; il lavoro è completato quando l’operatore mancante viene rifiutato durante la validazione con un’eccezione chiara, invece di fallire solo a runtime.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
compilers
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.