OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 1348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1359 // is shadowed by a later occurrence of the same key. For the | 1359 // is shadowed by a later occurrence of the same key. For the |
1360 // marked expressions, no store code is emitted. | 1360 // marked expressions, no store code is emitted. |
1361 void CalculateEmitStore(); | 1361 void CalculateEmitStore(); |
1362 | 1362 |
1363 enum Flags { | 1363 enum Flags { |
1364 kNoFlags = 0, | 1364 kNoFlags = 0, |
1365 kFastElements = 1, | 1365 kFastElements = 1, |
1366 kHasFunction = 1 << 1 | 1366 kHasFunction = 1 << 1 |
1367 }; | 1367 }; |
1368 | 1368 |
| 1369 struct Accessors: public ZoneObject { |
| 1370 Accessors() : getter(NULL), setter(NULL) { } |
| 1371 Expression* getter; |
| 1372 Expression* setter; |
| 1373 }; |
| 1374 |
1369 protected: | 1375 protected: |
1370 template<class> friend class AstNodeFactory; | 1376 template<class> friend class AstNodeFactory; |
1371 | 1377 |
1372 ObjectLiteral(Isolate* isolate, | 1378 ObjectLiteral(Isolate* isolate, |
1373 Handle<FixedArray> constant_properties, | 1379 Handle<FixedArray> constant_properties, |
1374 ZoneList<Property*>* properties, | 1380 ZoneList<Property*>* properties, |
1375 int literal_index, | 1381 int literal_index, |
1376 bool is_simple, | 1382 bool is_simple, |
1377 bool fast_elements, | 1383 bool fast_elements, |
1378 int depth, | 1384 int depth, |
(...skipping 1587 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2966 private: | 2972 private: |
2967 Isolate* isolate_; | 2973 Isolate* isolate_; |
2968 Zone* zone_; | 2974 Zone* zone_; |
2969 Visitor visitor_; | 2975 Visitor visitor_; |
2970 }; | 2976 }; |
2971 | 2977 |
2972 | 2978 |
2973 } } // namespace v8::internal | 2979 } } // namespace v8::internal |
2974 | 2980 |
2975 #endif // V8_AST_H_ | 2981 #endif // V8_AST_H_ |
OLD | NEW |