Remove ecma_simple_value_t and refactor ecma_make_simple_value (#2135)
This patch removes all ecma_make_simple_value calls to make the code more easy to understand. Also removes the type ecma_simple_value_t which improves the performance in related code paths by calculating the value of new ecma_value_t is no longer needed. JerryScript-DCO-1.0-Signed-off-by: Robert Fancsik frobert@inf.u-szeged.hu
This commit is contained in:
committed by
Dániel Bátyai
parent
1007b63024
commit
e83de3accd
@@ -148,12 +148,12 @@ ecma_op_create_mutable_binding (ecma_object_t *lex_env_p, /**< lexical environme
|
||||
ecma_value_t completion;
|
||||
if (!ecma_get_object_extensible (binding_obj_p))
|
||||
{
|
||||
return ecma_make_simple_value (ECMA_SIMPLE_VALUE_EMPTY);
|
||||
return ECMA_VALUE_EMPTY;
|
||||
}
|
||||
|
||||
completion = ecma_builtin_helper_def_prop (binding_obj_p,
|
||||
name_p,
|
||||
ecma_make_simple_value (ECMA_SIMPLE_VALUE_UNDEFINED),
|
||||
ECMA_VALUE_UNDEFINED,
|
||||
true, /* Writable */
|
||||
true, /* Enumerable */
|
||||
is_deletable, /* Configurable */
|
||||
@@ -169,7 +169,7 @@ ecma_op_create_mutable_binding (ecma_object_t *lex_env_p, /**< lexical environme
|
||||
}
|
||||
}
|
||||
|
||||
return ecma_make_simple_value (ECMA_SIMPLE_VALUE_EMPTY);
|
||||
return ECMA_VALUE_EMPTY;
|
||||
} /* ecma_op_create_mutable_binding */
|
||||
|
||||
/**
|
||||
@@ -228,7 +228,7 @@ ecma_op_set_mutable_binding (ecma_object_t *lex_env_p, /**< lexical environment
|
||||
}
|
||||
}
|
||||
|
||||
return ecma_make_simple_value (ECMA_SIMPLE_VALUE_EMPTY);
|
||||
return ECMA_VALUE_EMPTY;
|
||||
} /* ecma_op_set_mutable_binding */
|
||||
|
||||
/**
|
||||
@@ -271,7 +271,7 @@ ecma_op_get_binding_value (ecma_object_t *lex_env_p, /**< lexical environment */
|
||||
}
|
||||
else
|
||||
{
|
||||
result = ecma_make_simple_value (ECMA_SIMPLE_VALUE_UNDEFINED);
|
||||
result = ECMA_VALUE_UNDEFINED;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -300,11 +300,11 @@ ecma_op_delete_binding (ecma_object_t *lex_env_p, /**< lexical environment */
|
||||
if (ecma_get_lex_env_type (lex_env_p) == ECMA_LEXICAL_ENVIRONMENT_DECLARATIVE)
|
||||
{
|
||||
ecma_property_t *prop_p = ecma_find_named_property (lex_env_p, name_p);
|
||||
ecma_simple_value_t ret_val;
|
||||
ecma_value_t ret_val;
|
||||
|
||||
if (prop_p == NULL)
|
||||
{
|
||||
ret_val = ECMA_SIMPLE_VALUE_TRUE;
|
||||
ret_val = ECMA_VALUE_TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -312,17 +312,17 @@ ecma_op_delete_binding (ecma_object_t *lex_env_p, /**< lexical environment */
|
||||
|
||||
if (!ecma_is_property_configurable (*prop_p))
|
||||
{
|
||||
ret_val = ECMA_SIMPLE_VALUE_FALSE;
|
||||
ret_val = ECMA_VALUE_FALSE;
|
||||
}
|
||||
else
|
||||
{
|
||||
ecma_delete_property (lex_env_p, ECMA_PROPERTY_VALUE_PTR (prop_p));
|
||||
|
||||
ret_val = ECMA_SIMPLE_VALUE_TRUE;
|
||||
ret_val = ECMA_VALUE_TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
return ecma_make_simple_value (ret_val);
|
||||
return ret_val;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -351,7 +351,7 @@ ecma_op_implicit_this_value (ecma_object_t *lex_env_p) /**< lexical environment
|
||||
|
||||
if (ecma_get_lex_env_type (lex_env_p) == ECMA_LEXICAL_ENVIRONMENT_DECLARATIVE)
|
||||
{
|
||||
return ecma_make_simple_value (ECMA_SIMPLE_VALUE_UNDEFINED);
|
||||
return ECMA_VALUE_UNDEFINED;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -367,7 +367,7 @@ ecma_op_implicit_this_value (ecma_object_t *lex_env_p) /**< lexical environment
|
||||
}
|
||||
else
|
||||
{
|
||||
return ecma_make_simple_value (ECMA_SIMPLE_VALUE_UNDEFINED);
|
||||
return ECMA_VALUE_UNDEFINED;
|
||||
}
|
||||
}
|
||||
} /* ecma_op_implicit_this_value */
|
||||
|
||||
Reference in New Issue
Block a user