Home | History | Annotate | Download | only in ast

Lines Matching full:expression

51 bool Expression::IsSmiLiteral() const {
56 bool Expression::IsStringLiteral() const {
61 bool Expression::IsNullLiteral() const {
68 bool Expression::IsUndefinedLiteral() const {
87 bool Expression::IsValidReferenceExpressionOrThis() const {
95 : Expression(zone, start_position),
108 : Expression(zone, start_position),
146 static void AssignVectorSlots(Expression* expr, FeedbackVectorSpec* spec,
169 Assignment::Assignment(Zone* zone, Token::Value op, Expression* target,
170 Expression* value, int pos)
171 : Expression(zone, pos),
190 AssignVectorSlots(expression(), spec, &slot_);
238 bool FunctionLiteral::NeedsHomeObject(Expression* expr) {
245 ObjectLiteralProperty::ObjectLiteralProperty(Expression* key, Expression* value,
257 Expression* key, Expression* value,
297 Expression* value = property->value();
334 Expression* value = property->value();
374 Expression* value = property->value();
521 Expression* element = values()->at(array_index);
581 Expression* subexpr = values()->at(array_index);
593 Handle<Object> MaterializedLiteral::GetBoilerplateValue(Expression* expression,
595 if (expression->IsLiteral()) {
596 return expression->AsLiteral()->value();
598 if (CompileTimeValue::IsCompileTimeValue(expression)) {
599 return CompileTimeValue::GetValue(isolate, expression);
619 // expression has a ToBoolean stub and we want to collect the type
623 set_to_boolean_types(oracle->ToBooleanTypes(expression()->test_id()));
637 static bool IsTypeof(Expression* expr) {
643 // Check for the pattern: typeof <expression> equals <string literal>.
644 static bool MatchLiteralCompareTypeof(Expression* left,
646 Expression* right,
647 Expression** expr,
650 *expr = left->AsUnaryOperation()->expression();
658 bool CompareOperation::IsLiteralCompareTypeof(Expression** expr,
665 static bool IsVoidOfLiteral(Expression* expr) {
669 maybe_unary->expression()->IsLiteral();
673 // Check for the pattern: void <literal> equals <expression> or
674 // undefined equals <expression>
675 static bool MatchLiteralCompareUndefined(Expression* left,
677 Expression* right,
678 Expression** expr) {
690 bool CompareOperation::IsLiteralCompareUndefined(Expression** expr) {
696 // Check for the pattern: null equals <expression>
697 static bool MatchLiteralCompareNull(Expression* left,
699 Expression* right,
700 Expression** expr) {
709 bool CompareOperation::IsLiteralCompareNull(Expression** expr) {
733 void Expression::RecordToBooleanTypeFeedback(TypeFeedbackOracle* oracle) {
766 VariableProxy* proxy = expression()->AsVariableProxy();
777 if (expression()->IsSuperCallReference()) return SUPER_CALL;
779 Property* property = expression()->AsProperty();
812 void AstVisitor::VisitExpressions(ZoneList<Expression*>* expressions) {
816 // undefined expression or literal? Revisit this code if this
818 Expression* expression = expressions->at(i);
819 if (expression != NULL) Visit(expression);
880 RECURSE(Visit(stmt->expression()));
901 RECURSE(Visit(stmt->expression()));
905 RECURSE(stmt->expression());
917 Expression* label = clause->label();
1013 ZoneList<Expression*>* values = expr->values();
1015 Expression* value = values->at(i);
1027 RECURSE_EXPRESSION(Visit(expr->expression()));
1040 RECURSE_EXPRESSION(Visit(expr->expression()));
1041 ZoneList<Expression*>* args = expr->arguments();
1043 Expression* arg = args->at(i);
1049 RECURSE_EXPRESSION(Visit(expr->expression()));
1050 ZoneList<Expression*>* args = expr->arguments();
1052 Expression* arg = args->at(i);
1058 ZoneList<Expression*>* args = expr->arguments();
1060 Expression* arg = args->at(i);
1066 RECURSE_EXPRESSION(Visit(expr->expression()));
1070 RECURSE_EXPRESSION(Visit(expr->expression()));
1101 RECURSE_EXPRESSION(Visit(expr->expression()));
1120 RECURSE(Visit(expr->expression()));
1126 CaseClause::CaseClause(Zone* zone, Expression* label,
1128 : Expression(zone, pos),