Ruben Ayrapetyan
feedb37b20
Replacing way to specify ecma-char encoding and ecma-number type: instead of defining it like CONFIG_ECMA_NUMBER_FLOAT32 now it should be defined like CONFIG_ECMA_NUMBER_TYPE=CONFIG_ECMA_NUMBER_FLOAT32.
2014-10-23 18:33:10 +04:00
Ruben Ayrapetyan
42abd7d63a
Moving ecma-number mathematical constants to src/libecmaobjects/ecma-globals.h.
2014-10-20 20:48:36 +04:00
Ruben Ayrapetyan
3eed2d0d4c
Renaming ecma_op_number_{add,subtract,multiply,divide} -> ecma_number_{add,subtract,multiply,divide}.
...
Moving ecma_number_{add,subtract,multiply,divide} to src/libecmaobjects/ecma-helpers-number.c.
Moving abs, sqrt, ln, exp, calculation helpers from src/libecmabuiltins/ecma-builtin-math-object.c to src/libecmaobjects/ecma-helpers-number.c.
2014-10-20 18:48:10 +04:00
Ruben Ayrapetyan
b52ca8cca5
Fixing Number.prototype.toString.
2014-10-20 17:27:51 +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
9c1428de29
Implementing instantiation of prototype property Object built-in object.
2014-10-16 21:47:25 +04:00
Ruben Ayrapetyan
e54023caf2
Throwing CompactProfileError in cases required by Compact Profile.
2014-10-16 21:26:23 +04:00
Ruben Ayrapetyan
6520779f46
Initialization of [[PrimitiveValue]] properties of built-in String.prototype, Number.prototype and Boolean.prototype objects.
2014-10-16 20:17:29 +04:00
Ruben Ayrapetyan
ed960b78db
Introducing CompactProfileError built-in object.
2014-10-16 19:49:47 +04:00
Ruben Ayrapetyan
fce52b42c5
Fixing incorrect comments in src/libecmabuiltins/ecma-builtin-boolean-object.c.
2014-10-16 19:46:07 +04:00
Ilmir Usmanov
90789453ba
Fix 'prototype' property.
2014-10-16 18:07:56 +04:00
Ruben Ayrapetyan
8a58e0b9d5
Implementation of Boolean and Boolean.prototype built-in objects.
2014-10-16 14:45:55 +04:00
Ruben Ayrapetyan
c231893b28
Implementation of Number built-in object and partial implementation of Number.prototype built-in object.
...
Fixing [[Prototype]] and [[Class]] properties of Array and String built-in objects.
2014-10-16 13:25:47 +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
47d384c565
Partial implementation of the Array.prototype built-in object.
2014-09-26 20:07:45 +04:00
Ruben Ayrapetyan
add24b93fe
Fixing various FIXMEs that depend on Function.prototype built-in.
2014-09-26 19:36:14 +04:00
Ruben Ayrapetyan
bef5289cb6
Adding stubs for Function and Function.prototype built-ins.
2014-09-26 19:26:17 +04:00
Ruben Ayrapetyan
2d332bc98b
Implementing 'Object.prototype.toString' and 'Object.prototype.valueOf' built-ins.
2014-09-26 18:50:46 +04:00
Ruben Ayrapetyan
f82ae90040
Fixing various FIXMEs that depend on built-in Object constructor and Object.prototype.
2014-09-26 18:33:50 +04:00
Ruben Ayrapetyan
a0a2ec2cea
Replacing items of ecma_object_class_t with corresponding ecma magic strings.
2014-09-26 18:04:42 +04:00
Ruben Ayrapetyan
897ed2d5c2
Adding stubs for Object.prototype routines.
2014-09-26 17:47:53 +04:00
Ruben Ayrapetyan
508573b398
Compacting declaration of dispatch routines for built-in objects.
2014-09-26 17:07:04 +04:00
Ruben Ayrapetyan
ba2eeb84af
Implementing String.prototype.toString and String.prototype.valueOf built-in routines.
2014-09-25 21:04:24 +04:00
Ruben Ayrapetyan
5bee6cad0f
Adding stubs for String.prototype routines.
2014-09-25 20:39:00 +04:00
Ruben Ayrapetyan
c2ca158d19
Implementing Array built-in.
2014-09-25 14:58:45 +04:00
Ruben Ayrapetyan
448b67f6dd
Fixing memory leak and type of completion value in implementation of Object.defineProperty built-in.
2014-09-25 14:21:57 +04:00
Ruben Ayrapetyan
679d86dc8f
Passing 'this' argument to built-in routines.
2014-09-24 23:19:32 +04:00
Ruben Ayrapetyan
3efdcfa2ea
Implementing String built-in object.
2014-09-24 21:40:11 +04:00
Ruben Ayrapetyan
10ee3c4fb1
Implementing Math.pow built-in.
2014-09-24 18:49:41 +04:00
Ruben Ayrapetyan
44a2f7ba39
Implementing Math.log built-in.
2014-09-24 17:10:42 +04:00
Ruben Ayrapetyan
85a3a9a690
Implementing Math.exp built-in.
2014-09-24 16:01:57 +04:00
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
9b69ea4d6d
Implementing Math.sqrt.
2014-09-23 21:56:44 +04:00
Ruben Ayrapetyan
34a5e00b7f
Implementing Math.random.
2014-09-23 20:25:59 +04:00
Ruben Ayrapetyan
6c422fec2e
Implementing Math.min and Math.max built-ins.
2014-09-23 18:44:27 +04:00
Ruben Ayrapetyan
c5fd835931
Implementing Math.abs and Math.round built-ins.
2014-09-23 17:22:01 +04:00
Ruben Ayrapetyan
f237a8d5e1
Adding stubs for Math object's routines.
2014-09-23 16:23:36 +04:00
Ruben Ayrapetyan
288478926e
Implementing Math object's value properties.
2014-09-23 15:32:32 +04:00
Ruben Ayrapetyan
ae244f0148
Common built-in object's constructor.
2014-09-23 15:29:08 +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
49486757ca
Implementing 'Object.defineProperty' built-in routine.
2014-09-22 20:07:29 +04:00
Ruben Ayrapetyan
a287406e1f
Implementing 'new Object(...)' built-in constructor.
2014-09-22 18:19:34 +04:00
Ruben Ayrapetyan
d7314a7300
Adding stubs for the Object object.
2014-09-22 15:56:50 +04:00
Ruben Ayrapetyan
94f7f710a6
Fixing attributes of several properties of the Global object.
2014-09-22 15:35:35 +04:00
Ruben Ayrapetyan
f46853bdd8
Introducing interfaces for invoking built-in functions and constructors.
...
Implementing property instantiation routine dispatcher for Global object.
Adding instantiation for 'undefined', 'NaN', 'Infinity' and built-in routine
properties of the Global Object. Implementing isNaN and isFinite built-in routines.
2014-09-19 18:10:49 +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
9a667596de
Implementing constructor of Function object for built-in routines.
2014-09-18 19:48:43 +04:00
Ruben Ayrapetyan
55d9b12176
Introducing built-in routines dispatcher and stubs for the Global object's routines.
2014-09-18 16:25:33 +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