in lib/src/parser.dart [42:53]
Node _conditional() {
var condition = _or();
if (!_scanner.scan(TokenType.questionMark)) return condition;
var whenTrue = _conditional();
if (!_scanner.scan(TokenType.colon)) {
throw SourceSpanFormatException('Expected ":".', _scanner.peek().span);
}
var whenFalse = _conditional();
return ConditionalNode(condition, whenTrue, whenFalse);
}