Implement BigInt primitve type and some of its operations (#4062)
Supported operations: - parse BigInt (decimal, hexadecimal, binary) - toString with any radix between 2 and 36 - arithmetic operations: negate, add, subtract, multiply, divide, modulo - left and right shift JerryScript-DCO-1.0-Signed-off-by: Zoltan Herczeg zherczeg.u-szeged@partner.samsung.com
This commit is contained in:
@@ -307,6 +307,9 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_VALUE, "value")
|
||||
#if ENABLED (JERRY_PARSER)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_RESOURCE_EVAL, "<eval>")
|
||||
#endif
|
||||
#if ENABLED (JERRY_BUILTIN_BIGINT)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_BIGINT_UL, "BigInt")
|
||||
#endif
|
||||
#if ENABLED (JERRY_BUILTIN_MATH)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_LOG10E_U, "LOG10E")
|
||||
#endif
|
||||
@@ -318,6 +321,9 @@ LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_STRING_UL, "String")
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_SYMBOL_UL, "Symbol")
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_ASSIGN, "assign")
|
||||
#endif
|
||||
#if ENABLED (JERRY_BUILTIN_BIGINT)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_BIGINT, "bigint")
|
||||
#endif
|
||||
#if ENABLED (JERRY_BUILTIN_DATAVIEW) \
|
||||
|| ENABLED (JERRY_BUILTIN_TYPEDARRAY)
|
||||
LIT_MAGIC_STRING_DEF (LIT_MAGIC_STRING_BUFFER, "buffer")
|
||||
@@ -981,6 +987,8 @@ LIT_MAGIC_STRING_FIRST_STRING_WITH_SIZE (4, LIT_MAGIC_STRING_DATE_UL)
|
||||
LIT_MAGIC_STRING_FIRST_STRING_WITH_SIZE (5, LIT_MAGIC_STRING_ARRAY_UL)
|
||||
#if ENABLED (JERRY_PARSER)
|
||||
LIT_MAGIC_STRING_FIRST_STRING_WITH_SIZE (6, LIT_MAGIC_STRING_RESOURCE_EVAL)
|
||||
#elif ENABLED (JERRY_BUILTIN_BIGINT)
|
||||
LIT_MAGIC_STRING_FIRST_STRING_WITH_SIZE (6, LIT_MAGIC_STRING_BIGINT_UL)
|
||||
#elif ENABLED (JERRY_BUILTIN_MATH)
|
||||
LIT_MAGIC_STRING_FIRST_STRING_WITH_SIZE (6, LIT_MAGIC_STRING_LOG10E_U)
|
||||
#else
|
||||
|
||||
@@ -132,6 +132,7 @@ LIT_MAGIC_STRING_THROW = "throw"
|
||||
LIT_MAGIC_STRING_TRUNC = "trunc"
|
||||
LIT_MAGIC_STRING_VALUE = "value"
|
||||
LIT_MAGIC_STRING_RESOURCE_EVAL = "<eval>"
|
||||
LIT_MAGIC_STRING_BIGINT_UL = "BigInt"
|
||||
LIT_MAGIC_STRING_LOG10E_U = "LOG10E"
|
||||
LIT_MAGIC_STRING_NUMBER_UL = "Number"
|
||||
LIT_MAGIC_STRING_OBJECT_UL = "Object"
|
||||
@@ -139,6 +140,7 @@ LIT_MAGIC_STRING_REGEXP_UL = "RegExp"
|
||||
LIT_MAGIC_STRING_STRING_UL = "String"
|
||||
LIT_MAGIC_STRING_SYMBOL_UL = "Symbol"
|
||||
LIT_MAGIC_STRING_ASSIGN = "assign"
|
||||
LIT_MAGIC_STRING_BIGINT = "bigint"
|
||||
LIT_MAGIC_STRING_BUFFER = "buffer"
|
||||
LIT_MAGIC_STRING_CALLEE = "callee"
|
||||
LIT_MAGIC_STRING_CALLER = "caller"
|
||||
|
||||
Reference in New Issue
Block a user