OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 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 1258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1269 }; | 1269 }; |
1270 | 1270 |
1271 | 1271 |
1272 class FunctionLiteral: public Expression { | 1272 class FunctionLiteral: public Expression { |
1273 public: | 1273 public: |
1274 FunctionLiteral(Handle<String> name, | 1274 FunctionLiteral(Handle<String> name, |
1275 Scope* scope, | 1275 Scope* scope, |
1276 ZoneList<Statement*>* body, | 1276 ZoneList<Statement*>* body, |
1277 int materialized_literal_count, | 1277 int materialized_literal_count, |
1278 int expected_property_count, | 1278 int expected_property_count, |
1279 bool has_only_this_property_assignments, | |
1280 bool has_only_simple_this_property_assignments, | 1279 bool has_only_simple_this_property_assignments, |
1281 Handle<FixedArray> this_property_assignments, | 1280 Handle<FixedArray> this_property_assignments, |
1282 int num_parameters, | 1281 int num_parameters, |
1283 int start_position, | 1282 int start_position, |
1284 int end_position, | 1283 int end_position, |
1285 bool is_expression) | 1284 bool is_expression) |
1286 : name_(name), | 1285 : name_(name), |
1287 scope_(scope), | 1286 scope_(scope), |
1288 body_(body), | 1287 body_(body), |
1289 materialized_literal_count_(materialized_literal_count), | 1288 materialized_literal_count_(materialized_literal_count), |
1290 expected_property_count_(expected_property_count), | 1289 expected_property_count_(expected_property_count), |
1291 has_only_this_property_assignments_(has_only_this_property_assignments), | |
1292 has_only_simple_this_property_assignments_( | 1290 has_only_simple_this_property_assignments_( |
1293 has_only_simple_this_property_assignments), | 1291 has_only_simple_this_property_assignments), |
1294 this_property_assignments_(this_property_assignments), | 1292 this_property_assignments_(this_property_assignments), |
1295 num_parameters_(num_parameters), | 1293 num_parameters_(num_parameters), |
1296 start_position_(start_position), | 1294 start_position_(start_position), |
1297 end_position_(end_position), | 1295 end_position_(end_position), |
1298 is_expression_(is_expression), | 1296 is_expression_(is_expression), |
1299 loop_nesting_(0), | 1297 loop_nesting_(0), |
1300 function_token_position_(RelocInfo::kNoPosition), | 1298 function_token_position_(RelocInfo::kNoPosition), |
1301 inferred_name_(Heap::empty_string()), | 1299 inferred_name_(Heap::empty_string()), |
(...skipping 12 matching lines...) Expand all Loading... |
1314 Scope* scope() const { return scope_; } | 1312 Scope* scope() const { return scope_; } |
1315 ZoneList<Statement*>* body() const { return body_; } | 1313 ZoneList<Statement*>* body() const { return body_; } |
1316 void set_function_token_position(int pos) { function_token_position_ = pos; } | 1314 void set_function_token_position(int pos) { function_token_position_ = pos; } |
1317 int function_token_position() const { return function_token_position_; } | 1315 int function_token_position() const { return function_token_position_; } |
1318 int start_position() const { return start_position_; } | 1316 int start_position() const { return start_position_; } |
1319 int end_position() const { return end_position_; } | 1317 int end_position() const { return end_position_; } |
1320 bool is_expression() const { return is_expression_; } | 1318 bool is_expression() const { return is_expression_; } |
1321 | 1319 |
1322 int materialized_literal_count() { return materialized_literal_count_; } | 1320 int materialized_literal_count() { return materialized_literal_count_; } |
1323 int expected_property_count() { return expected_property_count_; } | 1321 int expected_property_count() { return expected_property_count_; } |
1324 bool has_only_this_property_assignments() { | |
1325 return has_only_this_property_assignments_; | |
1326 } | |
1327 bool has_only_simple_this_property_assignments() { | 1322 bool has_only_simple_this_property_assignments() { |
1328 return has_only_simple_this_property_assignments_; | 1323 return has_only_simple_this_property_assignments_; |
1329 } | 1324 } |
1330 Handle<FixedArray> this_property_assignments() { | 1325 Handle<FixedArray> this_property_assignments() { |
1331 return this_property_assignments_; | 1326 return this_property_assignments_; |
1332 } | 1327 } |
1333 int num_parameters() { return num_parameters_; } | 1328 int num_parameters() { return num_parameters_; } |
1334 | 1329 |
1335 bool AllowsLazyCompilation(); | 1330 bool AllowsLazyCompilation(); |
1336 | 1331 |
(...skipping 14 matching lines...) Expand all Loading... |
1351 already_compiled_ = true; | 1346 already_compiled_ = true; |
1352 } | 1347 } |
1353 #endif | 1348 #endif |
1354 | 1349 |
1355 private: | 1350 private: |
1356 Handle<String> name_; | 1351 Handle<String> name_; |
1357 Scope* scope_; | 1352 Scope* scope_; |
1358 ZoneList<Statement*>* body_; | 1353 ZoneList<Statement*>* body_; |
1359 int materialized_literal_count_; | 1354 int materialized_literal_count_; |
1360 int expected_property_count_; | 1355 int expected_property_count_; |
1361 bool has_only_this_property_assignments_; | |
1362 bool has_only_simple_this_property_assignments_; | 1356 bool has_only_simple_this_property_assignments_; |
1363 Handle<FixedArray> this_property_assignments_; | 1357 Handle<FixedArray> this_property_assignments_; |
1364 int num_parameters_; | 1358 int num_parameters_; |
1365 int start_position_; | 1359 int start_position_; |
1366 int end_position_; | 1360 int end_position_; |
1367 bool is_expression_; | 1361 bool is_expression_; |
1368 int loop_nesting_; | 1362 int loop_nesting_; |
1369 int function_token_position_; | 1363 int function_token_position_; |
1370 Handle<String> inferred_name_; | 1364 Handle<String> inferred_name_; |
1371 bool try_fast_codegen_; | 1365 bool try_fast_codegen_; |
(...skipping 408 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1780 #undef DEF_VISIT | 1774 #undef DEF_VISIT |
1781 | 1775 |
1782 private: | 1776 private: |
1783 bool stack_overflow_; | 1777 bool stack_overflow_; |
1784 }; | 1778 }; |
1785 | 1779 |
1786 | 1780 |
1787 } } // namespace v8::internal | 1781 } } // namespace v8::internal |
1788 | 1782 |
1789 #endif // V8_AST_H_ | 1783 #endif // V8_AST_H_ |
OLD | NEW |