Introducing ECMA property descriptor (8.10) type and helpers for it: constructor and destructor.
This commit is contained in:
@@ -189,7 +189,51 @@ typedef enum
|
||||
} ecma_property_configurable_value_t;
|
||||
|
||||
/**
|
||||
* Description of ecma-property.
|
||||
* Description of ECMA property descriptor
|
||||
*
|
||||
* See also: ECMA-262 v5, 8.10.
|
||||
*/
|
||||
typedef struct
|
||||
{
|
||||
/** Is [[Value]] defined? */
|
||||
unsigned int is_value_defined : 1;
|
||||
|
||||
/** Is [[Get]] defined? */
|
||||
unsigned int is_get_defined : 1;
|
||||
|
||||
/** Is [[Set]] defined? */
|
||||
unsigned int is_set_defined : 1;
|
||||
|
||||
/** Is [[Writable]] defined? */
|
||||
unsigned int is_writable_defined : 1;
|
||||
|
||||
/** Is [[Enumerable]] defined? */
|
||||
unsigned int is_enumerable_defined : 1;
|
||||
|
||||
/** Is [[Configurable]] defined? */
|
||||
unsigned int is_configurable_defined : 1;
|
||||
|
||||
/** [[Value]] */
|
||||
ecma_value_t value;
|
||||
|
||||
/** [[Get]] */
|
||||
ecma_value_t get;
|
||||
|
||||
/** [[Set]] */
|
||||
ecma_value_t set;
|
||||
|
||||
/** [[Writable]] */
|
||||
ecma_property_writable_value_t writable;
|
||||
|
||||
/** [[Enumerable]] */
|
||||
ecma_property_enumerable_value_t enumerable;
|
||||
|
||||
/** [[Configurable]] */
|
||||
ecma_property_configurable_value_t configurable;
|
||||
} ecma_property_descriptor_t;
|
||||
|
||||
/**
|
||||
* Description of ecma-property
|
||||
*/
|
||||
typedef struct ecma_property_t {
|
||||
/** Property's type (ecma_property_type_t) */
|
||||
|
||||
Reference in New Issue
Block a user