Home | History | Annotate | Download | only in src

Lines Matching refs:Assignment

810   static Assignment* AsAssignment(Statement* stat) {
841 Assignment* assignment = AsAssignment(stat);
843 if (BlockContinues(assignment)) {
844 UpdateBlock(assignment);
849 if (!InBlock() && (assignment != NULL) &&
850 (assignment->op() == Token::ASSIGN)) {
851 StartBlock(assignment);
856 // The minimum number of contiguous assignment that will
902 bool BlockContinues(Assignment* assignment) {
903 if ((assignment == NULL) || (first_in_block_ == NULL)) return false;
904 if (assignment->op() != Token::ASSIGN) return false;
906 assignment->target());
909 void StartBlock(Assignment* assignment) {
910 first_in_block_ = assignment;
911 last_in_block_ = assignment;
915 void UpdateBlock(Assignment* assignment) {
916 last_in_block_ = assignment;
932 Assignment* first_in_block_;
933 Assignment* last_in_block_;
954 // Bail out if function already has property assignment that are
961 Assignment* assignment = AsAssignment(stat);
962 if (IsThisPropertyAssignment(assignment)) {
963 HandleThisPropertyAssignment(scope, assignment);
975 // Returns a fixed array containing three elements for each assignment of the
994 bool IsThisPropertyAssignment(Assignment* assignment) {
995 if (assignment != NULL) {
996 Property* property = assignment->target()->AsProperty();
997 return assignment->op() == Token::ASSIGN
1005 void HandleThisPropertyAssignment(Scope* scope, Assignment* assignment) {
1008 Property* property = assignment->target()->AsProperty();
1021 if (assignment->value()->AsLiteral() != NULL) {
1023 Literal* literal = assignment->value()->AsLiteral();
1026 } else if (assignment->value()->AsVariableProxy() != NULL) {
1029 assignment->value()->AsVariableProxy()->name();
1040 // It is not a simple "this.x = value;" assignment with a constant
1079 // The this assignment is not a simple one.
2143 // assignment statement. We use a block to collect multiple assignments.
2146 // rewriter to add a '.result' assignment to such a block (to get compliant
2148 // reasons when pretty-printing. Also, unless an assignment (initialization)
2172 // assignment for variables and constants because the value must be assigned
2282 value = NULL; // zap the value to avoid the unnecessary assignment
2301 // which is why we need to generate a separate assignment node.
2304 value = NULL; // zap the value to avoid the unnecessary assignment
2329 Assignment* assignment =
2331 block->AddStatement(factory()->NewExpressionStatement(assignment));
2335 // Add an assignment node to the initialization statement block if we still
2344 Assignment* assignment =
2346 block->AddStatement(factory()->NewExpressionStatement(assignment));
2909 Assignment* assignment = factory()->NewAssignment(
2912 factory()->NewExpressionStatement(assignment);
3039 // Parsed conditional expression only (no assignment).
3054 // Assignment to eval or arguments is disallowed in strict mode.
3059 Token::Value op = Next(); // Get assignment operator.
3065 // assignment to a property of 'this'. We should probably only add
3111 // In parsing the first assignment expression in conditional
4845 // Checks LHS expression for assignment and prefix/postfix increment/decrement