Commit Graph

40 Commits

Author SHA1 Message Date
Ruben Ayrapetyan b773ef074c Fixing exception handling in ecma_op_to_number. 2014-10-24 21:58:53 +04:00
Ruben Ayrapetyan 8f5160d6bf Implementing ToObject for number arguments. 2014-10-20 15:39:09 +04:00
Ruben Ayrapetyan 1b74687989 Implementing ToObject for boolean arguments. 2014-10-20 15:26:24 +04:00
Ruben Ayrapetyan 6430a104b3 ecma_ref_ecma_string -> ecma_copy_or_ref_ecma_string: copying ecma-string when the string's reference counter reaches maximum value. 2014-10-13 18:59:07 +04:00
Ruben Ayrapetyan 7819adcf99 Implementing ToObject routine for case argument is string literal. 2014-10-13 13:29:29 +04:00
Ruben Ayrapetyan c06c6a5ed8 Introducing ecma_free_property_descriptor. 2014-09-25 14:19:09 +04:00
Ruben Ayrapetyan 1e642fd527 Implementing ToPropertyDescriptor and FromPropertyDescriptor ECMA operations. 2014-09-22 19:31:35 +04:00
Ruben Ayrapetyan 7fc3b178d8 Introducing ecma_is_string_magic, ecma_init and ecma_finalize interfaces, 'magic-string' container type for ecma-strings. Renaming ecma_is_magic_string to ecma_is_zt_string_magic. Moving magic-string related routines to ecma-helpers-string.c. 2014-09-19 12:08:19 +04:00
Ruben Ayrapetyan 0a6e1a83f8 Renaming ecma_compare_ecma_string_to_ecma_string to ecma_compare_ecma_strings. 2014-09-02 20:16:41 +04:00
Ruben Ayrapetyan c9f954ec2e Implementing several unimplemented cases in ecma conversion routines. 2014-09-02 18:49:45 +04:00
Ruben Ayrapetyan 4d9602ba0d Supporting string concatenations that are longer than 64k. 2014-09-01 22:11:54 +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 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 5d2b535cec Implementing 'with' opcode; replacing 'end_with' opcode with 'meta' opcode of corresponding type. 2014-08-27 21:38:53 +04:00
Ruben Ayrapetyan 76121926d1 Splitting 'delete' opcode to 'delete_var' and 'delete_prop'. Implementing corresponding opcode handlers. 2014-08-27 17:12:59 +04:00
Ruben Ayrapetyan dca9bcc387 Removing ECMA_TYPE__COUNT enum value; fixing comment to ecma_copy_value 2014-08-22 17:50:57 +04:00
Ruben Ayrapetyan f7cdb454ed Implementing ToString operation (ecma_op_to_string) 2014-08-22 14:40:58 +04:00
Ruben Ayrapetyan 15b65a27fb Moving type conversion helpers from libecmaoperations to libecmaobjects. 2014-08-18 16:26:22 +04:00
Ruben Ayrapetyan 86a0c701df Partial stub for Int32 operation. 2014-08-14 19:15:25 +04:00
Ruben Ayrapetyan c831912ae5 Replacing ecma_array_first_chunk_t with ecma_string_t for ecma-strings. 2014-08-13 19:21:25 +04:00
Ruben Ayrapetyan 4fe85cdd1a Full implementation of [[DefineOwnProperty]] for array objects. 2014-08-13 14:55:40 +04:00
Ruben Ayrapetyan 3ae7a284dc Partially implementing [[DefineOwnProperty]] for Array objects. 2014-08-12 21:45:11 +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 e3cd8ee942 Generational mark and sweep GC. 2014-08-07 14:54:32 +04:00
Ruben Ayrapetyan 299c94ee85 Implementation of general objects' [[GetOwnProperty]], [[GetProperty]], [[CanPut]], [[HasProperty]], [[Delete]]; partial implementation of general objects' [[Get]], [[Put]], [[DefineOwnProperty]]. 2014-07-29 14:32:01 +04:00
Ruben Ayrapetyan 3ee0e8a8a5 Style fixes regarding 'empty' value: introducing ecma_is_empty_completion_value, reducing usage of the 'empty' value, listing possible usage cases of the 'empty' value in the comment to it's definition. 2014-07-28 21:21:31 +04:00
Ruben Ayrapetyan cae07c0832 Implementing stubs for ecma objects' common internal properties and methods (ECMA-262 v5, Table 8). 2014-07-28 18:16:05 +04:00
Ruben Ayrapetyan b2ae827fbd Partially implementing ECMA 'Absract relational comparison' (11.8.5). 2014-07-24 20:31:57 +04:00
Ruben Ayrapetyan 826c6aeca2 Implementing is_false_jmp, is_true_jmp opcodes. 2014-07-23 21:58:15 +04:00
Ruben Ayrapetyan 8d180e9be1 Minor style fixes. 2014-07-23 20:41:21 +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 9b2b248728 Partially implementing ToNumber operation. 2014-07-21 20:36:08 +04:00
Ruben Ayrapetyan 7e87a1fde0 Implementing CheckObjectCoercible operation and partial stubs for ToPrimitive and ToObject operations. 2014-07-21 19:58:04 +04:00