Implement String.padStart and String.padEnd (#3999)
Based on: https://tc39.es/ecma262/#sec-string.prototype.padstart JerryScript-DCO-1.0-Signed-off-by: Bela Toth tbela@inf.u-szeged.hu
This commit is contained in:
@@ -80,6 +80,8 @@ enum
|
||||
|
||||
ECMA_STRING_PROTOTYPE_REPEAT,
|
||||
ECMA_STRING_PROTOTYPE_CODE_POINT_AT,
|
||||
ECMA_STRING_PROTOTYPE_PAD_START,
|
||||
ECMA_STRING_PROTOTYPE_PAD_END,
|
||||
/* Note: These 5 routines MUST be in this order */
|
||||
ECMA_STRING_PROTOTYPE_LAST_INDEX_OF,
|
||||
ECMA_STRING_PROTOTYPE_INDEX_OF,
|
||||
@@ -1388,6 +1390,12 @@ ecma_builtin_string_prototype_dispatch_routine (uint16_t builtin_routine_id, /**
|
||||
ret_value = ecma_builtin_string_prototype_object_iterator (to_string_val);
|
||||
break;
|
||||
}
|
||||
case ECMA_STRING_PROTOTYPE_PAD_END:
|
||||
case ECMA_STRING_PROTOTYPE_PAD_START:
|
||||
{
|
||||
ret_value = ecma_string_pad (to_string_val, arg1, arg2, builtin_routine_id == ECMA_STRING_PROTOTYPE_PAD_START);
|
||||
break;
|
||||
}
|
||||
#endif /* ENABLED (JERRY_ESNEXT) */
|
||||
default:
|
||||
{
|
||||
|
||||
@@ -73,6 +73,8 @@ ROUTINE (LIT_MAGIC_STRING_STARTS_WITH, ECMA_STRING_PROTOTYPE_STARTS_WITH, 2, 1)
|
||||
ROUTINE (LIT_MAGIC_STRING_INCLUDES, ECMA_STRING_PROTOTYPE_INCLUDES, 2, 1)
|
||||
ROUTINE (LIT_MAGIC_STRING_ENDS_WITH, ECMA_STRING_PROTOTYPE_ENDS_WITH, 2, 1)
|
||||
ROUTINE (LIT_MAGIC_STRING_CODE_POINT_AT, ECMA_STRING_PROTOTYPE_CODE_POINT_AT, 1, 1)
|
||||
ROUTINE (LIT_MAGIC_STRING_PAD_START, ECMA_STRING_PROTOTYPE_PAD_START, 2, 1)
|
||||
ROUTINE (LIT_MAGIC_STRING_PAD_END, ECMA_STRING_PROTOTYPE_PAD_END, 2, 1)
|
||||
ROUTINE (LIT_GLOBAL_SYMBOL_ITERATOR, ECMA_STRING_PROTOTYPE_ITERATOR, 0, 0)
|
||||
#endif /* ENABLED (JERRY_ESNEXT) */
|
||||
|
||||
|
||||
Reference in New Issue
Block a user