54 L"[object ArrayBuffer]",
66 str =
L"[object Object]";
68 str =
is_null(vthis) ?
L"[object Null]" :
L"[object Undefined]";
78 str =
L"[object Object]";
88 IDispatch_Release(disp);
121 FIXME(
"Host object this\n");
128 IDispatch_Release(disp);
152 IDispatch_Release(disp);
185 const WCHAR *name_str;
214 hres = IDispatch_QueryInterface(disp, &IID_IDispatchEx, (
void**)&dispex);
216 hres = IDispatchEx_GetDispID(dispex, bstr,
make_grfdex(
ctx, fdexNameCaseSensitive), &
id);
217 IDispatchEx_Release(dispex);
219 hres = IDispatch_GetIDsOfNames(disp, &
IID_NULL, &bstr, 1,
ctx->lcid, &
id);
226 IDispatch_Release(disp);
253 FIXME(
"Host object this\n");
271 IDispatch_Release(disp);
303 IDispatch_Release(disp);
325 FIXME(
"getter is not JS object\n");
368 FIXME(
"setter is not JS object\n");
409 FIXME(
"Host object this\n");
418 IDispatch_Release(disp);
444 FIXME(
"Host object value\n");
481 if(
desc->explicit_value)
565 FIXME(
"getter is not an object\n");
572 FIXME(
"getter is not JS object\n");
589 FIXME(
"setter is not an object\n");
596 FIXME(
"setter is not JS object\n");
607 if(
desc->explicit_getter ||
desc->explicit_setter) {
608 if(
desc->explicit_value)
621 DISPID id = DISPID_STARTENUM;
634 FIXME(
"non-JS list obj\n");
635 IDispatch_Release(list_disp);
685 FIXME(
"not implemented non-JS object\n");
698 FIXME(
"not implemented non-JS object\n");
726 FIXME(
"not an object\n");
753 FIXME(
"not implemented non-JS object\n");
808 FIXME(
"Invalid arg\n");
818 FIXME(
"Non-JS prototype\n");
860 DISPID id = DISPID_STARTENUM;
871 FIXME(
"Non-JS object\n");
930 FIXME(
"Non-JS object\n");
945 WARN(
"argument is not an object\n");
953 FIXME(
"Non-JS object\n");
968 WARN(
"argument is not an object\n");
976 FIXME(
"Non-JS object\n");
990 WARN(
"argument is not an object\n");
998 FIXME(
"Non-JS object\n");
1012 WARN(
"argument is not an object\n");
1020 FIXME(
"Non-JS object\n");
1034 WARN(
"argument is not an object\n");
1042 FIXME(
"Non-JS object\n");
1082 case DISPATCH_CONSTRUCT: {
1096 IDispatch_Release(disp);
1123 object_prototype,
ret);
HRESULT create_array(script_ctx_t *ctx, DWORD length, jsdisp_t **ret)
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
HRESULT create_builtin_constructor(script_ctx_t *ctx, builtin_invoke_t value_proc, const WCHAR *name, const builtin_info_t *builtin_info, DWORD flags, jsdisp_t *prototype, jsdisp_t **ret)
HRESULT Function_value(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_isFrozen(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_keys(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_preventExtensions(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_defineSetter(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_getOwnPropertyNames(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_isPrototypeOf(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static const builtin_prop_t Object_props[]
HRESULT Object_get_proto_(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_propertyIsEnumerable(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static const builtin_info_t Object_info
static HRESULT ObjectConstr_value(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static const builtin_prop_t ObjectConstr_props[]
HRESULT create_object(script_ctx_t *ctx, jsdisp_t *constr, jsdisp_t **ret)
HRESULT create_object_constr(script_ctx_t *ctx, jsdisp_t *object_prototype, jsdisp_t **ret)
HRESULT create_object_prototype(script_ctx_t *ctx, jsdisp_t **ret)
static HRESULT Object_getPrototypeOf(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_toString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_toLocaleString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_defineGetter(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_freeze(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_defineProperty(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_hasOwnProperty(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_defineProperties(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Object_seal(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static const builtin_info_t ObjectConstr_info
static HRESULT Object_valueOf(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static const builtin_info_t ObjectInst_info
static HRESULT Object_isExtensible(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT jsdisp_define_properties(script_ctx_t *ctx, jsdisp_t *obj, jsval_t list_val)
static HRESULT Object_isSealed(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static void release_property_descriptor(property_desc_t *desc)
static HRESULT Object_getOwnPropertyDescriptor(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
HRESULT Object_set_proto_(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT object_keys(script_ctx_t *ctx, jsval_t arg, enum jsdisp_enum_type enum_type, jsval_t *r)
static HRESULT to_property_descriptor(script_ctx_t *ctx, jsdisp_t *attr_obj, property_desc_t *desc)
static HRESULT Object_create(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
GLdouble GLdouble GLdouble r
GLboolean GLboolean GLboolean b
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
static HRESULT to_string(VARIANT *src, BSTR *dst)
HRESULT jsdisp_get_own_property(jsdisp_t *obj, const WCHAR *name, BOOL flags_only, property_desc_t *desc)
HRESULT jsdisp_define_data_property(jsdisp_t *obj, const WCHAR *name, unsigned flags, jsval_t value)
HRESULT jsdisp_propput_name(jsdisp_t *obj, const WCHAR *name, jsval_t val)
HRESULT jsdisp_get_id(jsdisp_t *jsdisp, const WCHAR *name, DWORD flags, DISPID *id)
HRESULT init_dispex_from_constr(jsdisp_t *dispex, script_ctx_t *ctx, const builtin_info_t *builtin_info, jsdisp_t *constr)
HRESULT jsdisp_get_prop_name(jsdisp_t *obj, DISPID id, jsstr_t **r)
ULONG jsdisp_release(jsdisp_t *obj)
HRESULT create_dispex(script_ctx_t *ctx, const builtin_info_t *builtin_info, jsdisp_t *prototype, jsdisp_t **dispex)
void jsdisp_freeze(jsdisp_t *obj, BOOL seal)
HRESULT jsdisp_propput_idx(jsdisp_t *obj, DWORD idx, jsval_t val)
jsdisp_t * jsdisp_addref(jsdisp_t *obj)
HRESULT jsdisp_call_name(jsdisp_t *disp, const WCHAR *name, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
jsdisp_t * to_jsdisp(IDispatch *disp)
HRESULT jsdisp_define_property(jsdisp_t *obj, const WCHAR *name, property_desc_t *desc)
HRESULT jsdisp_change_prototype(jsdisp_t *obj, jsdisp_t *proto)
HRESULT jsdisp_propget(jsdisp_t *jsdisp, DISPID id, jsval_t *val)
HRESULT jsdisp_next_prop(jsdisp_t *obj, DISPID id, enum jsdisp_enum_type enum_type, DISPID *ret)
BOOL jsdisp_is_frozen(jsdisp_t *obj, BOOL sealed)
HRESULT to_flat_string(script_ctx_t *, jsval_t, jsstr_t **, const WCHAR **)
#define JS_E_OBJECT_EXPECTED
#define SCRIPTLANGUAGEVERSION_ES5
#define JS_E_FUNCTION_EXPECTED
@ JSDISP_ENUM_OWN_ENUMERABLE
#define JS_E_INVALID_WRITABLE_PROP_DESC
const char * debugstr_jsval(const jsval_t)
static DWORD make_grfdex(script_ctx_t *ctx, DWORD flags)
HRESULT to_object(script_ctx_t *, jsval_t, IDispatch **)
static IDispatchEx * to_dispex(jsdisp_t *jsdisp)
HRESULT to_boolean(jsval_t, BOOL *)
#define JS_E_PROP_DESC_MISMATCH
const unsigned int PROPF_WRITABLE
const unsigned int PROPF_ENUMERABLE
const unsigned int PROPF_CONFIGURABLE
const unsigned int PROPF_METHOD
const unsigned int PROPF_CONSTR
static const WCHAR * jsstr_flatten(jsstr_t *str)
static void jsstr_release(jsstr_t *str)
static unsigned jsstr_length(jsstr_t *str)
static unsigned jsstr_flush(jsstr_t *str, WCHAR *buf)
static jsstr_t * jsstr_alloc(const WCHAR *str)
HRESULT jsval_copy(jsval_t v, jsval_t *r)
void jsval_release(jsval_t val)
static jsval_t jsval_null(void)
static jsval_t jsval_string(jsstr_t *str)
static jsval_t jsval_undefined(void)
static jsval_t jsval_obj(jsdisp_t *obj)
static jsval_t jsval_bool(BOOL b)
static BOOL is_null_disp(jsval_t v)
static jsval_t jsval_null_disp(void)
static BOOL is_undefined(jsval_t v)
static jsval_t jsval_disp(IDispatch *obj)
static IDispatch * get_object(jsval_t v)
static BOOL is_object_instance(jsval_t v)
static BOOL is_null(jsval_t v)
D3D11_SHADER_VARIABLE_DESC desc
static VARIANTARG static DISPID
void WINAPI DECLSPEC_HOTPATCH SysFreeString(BSTR str)
BSTR WINAPI SysAllocStringLen(const OLECHAR *str, unsigned int len)
HRESULT(* to_string)(jsdisp_t *, jsstr_t **)
const builtin_info_t * builtin_info
#define DISP_E_UNKNOWNNAME