Ruben Ayrapetyan
25ec2bea17
Refactoring function call operations to return 'normal' completion values instead of 'return' completion values. Removing ECMA_FUNCTION_CALL macro.
2014-09-24 14:27:27 +04:00
Ruben Ayrapetyan
1fed738217
Replacing ecma_builtin_is_*_object interfaces with ecma_builtin_is (object, builtin_id), and ecma_builtin_get_*_object with ecma_builtin_get (builtin_id).
2014-09-22 21:46:26 +04:00
Ruben Ayrapetyan
f402e42d2f
Moving Global object related routines to libecmabuiltins component. Introducing ecma_init_builtins and ecma_finalize_builtins routines.
2014-09-18 13:55:56 +04:00
Ruben Ayrapetyan
5df12d2e04
Fixing NULL pointer dereference in PutValue routine.
2014-09-17 15:24:48 +04:00
Ruben Ayrapetyan
50371ddf20
Implementing Array construction routine; adding unit test on array operations.
2014-09-03 17:30:03 +04:00
Ruben Ayrapetyan
23b62bce54
Replacing doxygen header for ECMA modules 'addtogroup ecma ---TODO---' -> 'addtogroup ecma ECMA'.
2014-08-29 18:35:44 +04:00
Ruben Ayrapetyan
8e14f32806
Introducing getters/setters for ecma_object_t structure.
2014-08-29 15:53:07 +04:00
Ruben Ayrapetyan
f7968e617d
Adding several completion value construction and comparison helpers.
2014-08-29 12:51:06 +04:00
Ruben Ayrapetyan
227c09fb3e
Adding target counter and depth level to 'break' and 'continue' completion values.
2014-08-28 22:56:29 +04:00
Ruben Ayrapetyan
bf1841ce54
Full implementation of GetValue, PutValue operations.
2014-08-22 20:27:07 +04:00
Ruben Ayrapetyan
bc34fa3be6
Renaming src/libecmaoperations/ecma-objects-properties.[ch] -> src/libecmaoperations/ecma-objects.[ch].
2014-08-12 17:09:46 +04:00
Ruben Ayrapetyan
aa43e06366
Style fixes in liballocator, libecmaobjects, libecmaoperations: putting else on separate line after closing brace of 'if' block.
2014-08-12 13:53:34 +04:00
Ruben Ayrapetyan
48cff24f08
Styles fixes in libecmaobjects, libecmaoperations: indentation and braces rules.
2014-08-11 22:05:59 +04:00
Ruben Ayrapetyan
0b592470d5
Style fixes in libecmaoperations: space between function name and opening parenthesis, no space after opening parenthesis/before closing parenthesis. By mistake, the changes weren't commited with 8081e5cdb38ad0f9789a89c92362fc73a716d85c.
2014-08-11 19:34:49 +04:00
Ruben Ayrapetyan
e53be2b441
Renaming ecma_get_pointer, ecma_set_pointer, ecma_set_pointer_non_null macroses to uppercase names.
2014-08-11 19:13:59 +04:00
Ruben Ayrapetyan
8ce1ef3c8b
Removing trailing whitespace in liballocator, libecmaobjects and libecmaoperations.
2014-08-11 15:59:19 +04:00
Ruben Ayrapetyan
8260cc0214
Implementing case 3.b in PutValue operation.
2014-08-01 12:48:03 +04:00
Ruben Ayrapetyan
1796b9d903
Renaming rest camelCase-named identifiers according to underscore_named_value-naming.
2014-07-23 14:07:45 +04:00
Ruben Ayrapetyan
bc0c7824c2
Renaming ecma_* identifiers from 'camelCase' to 'underscore_naming'.
2014-07-23 12:54:56 +04:00
Ruben Ayrapetyan
2d4ed154ee
Removing m_ prefix from identifiers (m_ValueType -> ValueType, ...).
2014-07-23 11:41:58 +04:00
Ruben Ayrapetyan
739d19be5b
Implementing 'multiplication' opcode handler and unit test for the opcode.
2014-07-21 21:59:15 +04:00
Ruben Ayrapetyan
5df6233e0b
Fix description comment for ecma_op_put_value.
2014-07-21 18:11:05 +04:00
Ruben Ayrapetyan
5e503ced32
Fixing ecma_op_get_value, ecma_op_put_value: correctly distinguishing whether the base is object or lexical environment.
2014-07-21 17:51:11 +04:00
Ruben Ayrapetyan
57629912e4
Rename: ecma_OpGetValue -> ecma_op_get_value; ecma_OpSetValue -> ecma_op_put_value.
2014-07-21 17:47:39 +04:00
Ruben Ayrapetyan
1175526d52
Fixing value copying/value leakage issues.
2014-07-21 17:39:39 +04:00
Ruben Ayrapetyan
2598d01105
Renaming ecma_IsUndefinedValue -> ecma_IsValueUndefined and the like; introducing ecma_IsCompletionValueNormal{True,False} helpers.
2014-07-16 21:42:49 +04:00
Ruben Ayrapetyan
b72185696a
Introducing ecma_MakeReference and ecma_FreeReference, moving ecma_OpGetIdentifierReference to libecmaoperations/ecma-reference.c.
2014-07-16 17:20:40 +04:00
Ruben Ayrapetyan
ca420ea0e9
Implementing PutValue for cases:
...
- base is lexical environment;
- base is undefined (unresolvable reference);
Descripting implementation of other PutValue's cases in comments.
2014-07-16 14:41:17 +04:00
Ruben Ayrapetyan
16be2ee3ab
Implementing GetValue for cases:
...
- base is lexical environment;
- base is undefined (unresolvable reference);
Descripting implementation of other GetValue's cases in comments.
2014-07-15 21:41:47 +04:00
Ruben Ayrapetyan
4395da05d3
Renaming ecma_Object_t::u_Attributes to u.
...
Renaming ecma_CompletionValue_t:: completion_type to type, completion_value to value.
Introducing ECMA_TARGET_ID_RESERVED value of ecma_CompletionValue_t::target when it is unused.
Adding ecma_Reference_t type for ECMA-reference.
Introducing some constructors and helpers for ecma-values.
Introducing ecma_FindNamedProperty helper.
Removing ecma_SyntacticReference_t type.
Implementing ecma operation GetIdentifierReference.
Stubs and partial implementation for GetValue, SetValue, lexical environment operations (HasBinding, etc.).
2014-07-15 19:27:15 +04:00