boolean () { if (atAnyOfTokens(PyTokenTypes.STRING_NODES)) { SyntaxTreeBuilder.Marker stringLiteral = myBuilder.mark(); while (atAnyOfTokens(PyTokenTypes.STRING_NODES)) { nextToken(); } stringLiteral.done(PyElementTypes.STRING_LITERAL_EXPRESSION); return true; } else if (atAnyOfTokens(PyTokenTypes.TRUE_KEYWORD, PyTokenTypes.FALSE_KEYWORD)) { buildTokenElement(PyElementTypes.BOOL_LITERAL_EXPRESSION, myBuilder); return true; } else if (atToken(PyTokenTypes.NONE_KEYWORD)) { buildTokenElement(PyElementTypes.NONE_LITERAL_EXPRESSION, myBuilder); return true; } else if (atAnyOfTokens(PyTokenTypes.PLUS, PyTokenTypes.MINUS) || atAnyOfTokens(PyTokenTypes.NUMERIC_LITERALS)) { parseComplexNumber(); return true; } return false; }