diff --git a/02.API-REFERENCE.md b/02.API-REFERENCE.md index 373ff6eb4..b1635163d 100644 --- a/02.API-REFERENCE.md +++ b/02.API-REFERENCE.md @@ -1496,6 +1496,49 @@ jerry_value_set_error_flag (jerry_value_t *value_p); - [jerry_value_t](#jerry_value_t) +## jerry_get_value_without_error_flag + +**Summary** + +If the input value is an error value, then return a new reference to its referenced value. +Otherwise, return a new reference to the value itself. + +*Note*: Returned value must be freed with [jerry_release_value](#jerry_release_value) +when it is no longer needed. + +**Prototype** + +```c +jerry_value_t +jerry_get_value_without_error_flag (jerry_value_t value) +``` + +- `value` - api value + +**Example** + +```c +{ + jerry_value_t value; + ... // create or acquire value + + jerry_value_set_error_flag (&value); + + jerry_value_t real_value = jerry_get_value_without_error_flag (value); + ... // process the real_value. Different from `jerry_value_clear_error_flag`, + // the error `value` will not be automatically released after calling + // `jerry_get_value_without_error_flag`. + + jerry_release_value (value); + jerry_release_value (real_value); +} +``` + +**See also** + +- [jerry_acquire_value](#jerry_acquire_value) +- [jerry_value_clear_error_flag](#jerry_value_clear_error_flag) + # Getter functions of 'jerry_value_t' Get raw data from API values.