| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_JSON_PARSER_H_ | 5 #ifndef V8_JSON_PARSER_H_ |
| 6 #define V8_JSON_PARSER_H_ | 6 #define V8_JSON_PARSER_H_ |
| 7 | 7 |
| 8 #include "src/v8.h" | 8 #include "src/v8.h" |
| 9 | 9 |
| 10 #include "src/char-predicates-inl.h" | 10 #include "src/char-predicates-inl.h" |
| (...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 318 } | 318 } |
| 319 | 319 |
| 320 if (c0_ == '"') { | 320 if (c0_ == '"') { |
| 321 // Successfully parsed index, parse and store element. | 321 // Successfully parsed index, parse and store element. |
| 322 AdvanceSkipWhitespace(); | 322 AdvanceSkipWhitespace(); |
| 323 | 323 |
| 324 if (c0_ == ':') { | 324 if (c0_ == ':') { |
| 325 AdvanceSkipWhitespace(); | 325 AdvanceSkipWhitespace(); |
| 326 Handle<Object> value = ParseJsonValue(); | 326 Handle<Object> value = ParseJsonValue(); |
| 327 if (!value.is_null()) { | 327 if (!value.is_null()) { |
| 328 JSObject::SetOwnElement(json_object, index, value, SLOPPY).Assert(); | 328 JSObject::SetOwnElementIgnoreAttributes(json_object, index, value, NONE) |
| 329 .Assert(); |
| 329 return kElementFound; | 330 return kElementFound; |
| 330 } else { | 331 } else { |
| 331 return kNullHandle; | 332 return kNullHandle; |
| 332 } | 333 } |
| 333 } | 334 } |
| 334 } | 335 } |
| 335 return kElementNotFound; | 336 return kElementNotFound; |
| 336 } | 337 } |
| 337 | 338 |
| 338 // Parse a JSON object. Position must be right at '{'. | 339 // Parse a JSON object. Position must be right at '{'. |
| (...skipping 495 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 834 | 835 |
| 835 DCHECK_EQ('"', c0_); | 836 DCHECK_EQ('"', c0_); |
| 836 // Advance past the last '"'. | 837 // Advance past the last '"'. |
| 837 AdvanceSkipWhitespace(); | 838 AdvanceSkipWhitespace(); |
| 838 return result; | 839 return result; |
| 839 } | 840 } |
| 840 | 841 |
| 841 } } // namespace v8::internal | 842 } } // namespace v8::internal |
| 842 | 843 |
| 843 #endif // V8_JSON_PARSER_H_ | 844 #endif // V8_JSON_PARSER_H_ |
| OLD | NEW |