mirror of
https://gitlab.freedesktop.org/plymouth/plymouth.git
synced 2026-05-08 07:48:03 +02:00
script: add String.Length function
Add String.Length function which returns the length of a string. It will make it possible to get the number of bullets from the display prompt callback inside scripts.
This commit is contained in:
parent
853ec9c290
commit
29c1511738
1 changed files with 14 additions and 0 deletions
|
|
@ -89,6 +89,15 @@ static script_return_t script_lib_string_sub_string (script_state_t *state,
|
|||
return script_return_obj (substring_obj);
|
||||
}
|
||||
|
||||
static script_return_t script_lib_string_length (script_state_t *state,
|
||||
void *user_data)
|
||||
{
|
||||
char *text = script_obj_as_string (state->this);
|
||||
size_t text_length = strlen(text);
|
||||
free (text);
|
||||
return script_return_obj (script_obj_new_number (text_length));
|
||||
}
|
||||
|
||||
script_lib_string_data_t *script_lib_string_setup (script_state_t *state)
|
||||
{
|
||||
script_lib_string_data_t *data = malloc (sizeof(script_lib_string_data_t));
|
||||
|
|
@ -108,6 +117,11 @@ script_lib_string_data_t *script_lib_string_setup (script_state_t *state)
|
|||
"start",
|
||||
"end",
|
||||
NULL);
|
||||
script_add_native_function (string_hash,
|
||||
"Length",
|
||||
script_lib_string_length,
|
||||
NULL,
|
||||
NULL);
|
||||
script_obj_unref (string_hash);
|
||||
data->script_main_op = script_parse_string (script_lib_string_string, "script-lib-string.script");
|
||||
script_return_t ret = script_execute (state, data->script_main_op);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue