36#include "vbscript_classes.h"
48 struct list custom_blocks;
162static inline unsigned arg_cnt(
const DISPPARAMS *dp)
164 return dp->cArgs - dp->cNamedArgs;
169 return dp->rgvarg + dp->cArgs-
i-1;
225 X(assign_ident, 1, ARG_BSTR, ARG_UINT) \
226 X(assign_member, 1, ARG_BSTR, ARG_UINT) \
227 X(bool, 1, ARG_INT, 0) \
228 X(catch, 1, ARG_ADDR, ARG_UINT) \
229 X(case, 0, ARG_ADDR, 0) \
231 X(const, 1, ARG_BSTR, 0) \
232 X(dim, 1, ARG_BSTR, ARG_UINT) \
234 X(double, 1, ARG_DOUBLE, 0) \
236 X(enumnext, 0, ARG_ADDR, ARG_BSTR) \
238 X(hres, 1, ARG_UINT, 0) \
239 X(errmode, 1, ARG_INT, 0) \
244 X(icall, 1, ARG_BSTR, ARG_UINT) \
245 X(icallv, 1, ARG_BSTR, ARG_UINT) \
248 X(incc, 1, ARG_BSTR, 0) \
249 X(int, 1, ARG_INT, 0) \
251 X(jmp, 0, ARG_ADDR, 0) \
252 X(jmp_false, 0, ARG_ADDR, 0) \
253 X(jmp_true, 0, ARG_ADDR, 0) \
256 X(mcall, 1, ARG_BSTR, ARG_UINT) \
257 X(mcallv, 1, ARG_BSTR, ARG_UINT) \
263 X(new, 1, ARG_STR, 0) \
264 X(newenum, 1, 0, 0) \
266 X(nothing, 1, 0, 0) \
269 X(pop, 1, ARG_UINT, 0) \
272 X(set_ident, 1, ARG_BSTR, ARG_UINT) \
273 X(set_member, 1, ARG_BSTR, ARG_UINT) \
274 X(step, 0, ARG_ADDR, ARG_BSTR) \
276 X(string, 1, ARG_STR, 0) \
282#define X(x,n,a,b) OP_##x,
378#define FACILITY_VBS 0xa
379#define MAKE_VBSERROR(code) MAKE_HRESULT(SEVERITY_ERROR, FACILITY_VBS, code)
403#define VBSCRIPT_BUILD_VERSION 16978
404#define VBSCRIPT_MAJOR_VERSION 5
405#define VBSCRIPT_MINOR_VERSION 8
static struct sockaddr_in sa
static void * heap_alloc(size_t len)
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
#define memcpy(s1, s2, n)
static const char mbstate_t *static wchar_t const char mbstate_t *static const wchar_t int *static double
static VARIANTARG static DISPID
const builtin_prop_t * members
IDispatch IDispatch_iface
IDispatchEx IDispatchEx_iface
array_desc_t * array_descs
vbdisp_prop_desc_t * props
vbdisp_funcprop_desc_t * funcs
unsigned class_terminate_id
unsigned class_initialize_id
struct _class_desc_t * next
struct _dynamic_var_t * next
array_desc_t * array_descs
dynamic_var_t * global_vars
named_item_t * named_items
IInternetHostSecurityManager * secmgr
function_t * global_funcs
IDispatchEx IDispatchEx_iface
const class_desc_t * desc
HRESULT create_regexp(IDispatch **) DECLSPEC_HIDDEN
void heap_pool_clear(heap_pool_t *) DECLSPEC_HIDDEN
void detach_global_objects(script_ctx_t *) DECLSPEC_HIDDEN
HRESULT init_global(script_ctx_t *) DECLSPEC_HIDDEN
void heap_pool_free(heap_pool_t *) DECLSPEC_HIDDEN
HRESULT init_err(script_ctx_t *) DECLSPEC_HIDDEN
HRESULT create_script_disp(script_ctx_t *, ScriptDisp **) DECLSPEC_HIDDEN
BSTR get_vbscript_error_string(HRESULT) DECLSPEC_HIDDEN
void release_dynamic_vars(dynamic_var_t *) DECLSPEC_HIDDEN
heap_pool_t * heap_pool_mark(heap_pool_t *) DECLSPEC_HIDDEN
void * heap_pool_alloc(heap_pool_t *, size_t) __WINE_ALLOC_SIZE(2) DECLSPEC_HIDDEN
HRESULT WINAPI VBScriptRegExpFactory_CreateInstance(IClassFactory *, IUnknown *, REFIID, void **) DECLSPEC_HIDDEN
HRESULT WINAPI VBScriptFactory_CreateInstance(IClassFactory *, IUnknown *, REFIID, void **) DECLSPEC_HIDDEN
IUnknown * create_ax_site(script_ctx_t *) DECLSPEC_HIDDEN
HRESULT compile_script(script_ctx_t *, const WCHAR *, const WCHAR *, DWORD, vbscode_t **) DECLSPEC_HIDDEN
HRESULT create_vbdisp(const class_desc_t *, vbdisp_t **) DECLSPEC_HIDDEN
static LPWSTR heap_strdupW(LPCWSTR str)
HRESULT get_disp_value(script_ctx_t *, IDispatch *, VARIANT *) DECLSPEC_HIDDEN
static unsigned arg_cnt(const DISPPARAMS *dp)
void * heap_pool_grow(heap_pool_t *, void *, DWORD, DWORD) DECLSPEC_HIDDEN
BSTR get_vbscript_string(int) DECLSPEC_HIDDEN
struct _dynamic_var_t dynamic_var_t
struct _class_desc_t class_desc_t
static BOOL is_int32(double d)
HRESULT to_int(VARIANT *, int *) DECLSPEC_HIDDEN
HRESULT create_safearray_iter(SAFEARRAY *sa, IEnumVARIANT **ev) DECLSPEC_HIDDEN
HRESULT disp_call(script_ctx_t *, IDispatch *, DISPID, DISPPARAMS *, VARIANT *) DECLSPEC_HIDDEN
HRESULT vbdisp_get_id(vbdisp_t *, BSTR, vbdisp_invoke_type_t, BOOL, DISPID *) DECLSPEC_HIDDEN
HRESULT disp_propput(script_ctx_t *, IDispatch *, DISPID, WORD, DISPPARAMS *) DECLSPEC_HIDDEN
void clear_ei(EXCEPINFO *) DECLSPEC_HIDDEN
HRESULT compile_procedure(script_ctx_t *, const WCHAR *, const WCHAR *, DWORD, class_desc_t **) DECLSPEC_HIDDEN
void heap_pool_init(heap_pool_t *) DECLSPEC_HIDDEN
void release_regexp_typelib(void) DECLSPEC_HIDDEN
HRESULT report_script_error(script_ctx_t *) DECLSPEC_HIDDEN
HRESULT get_builtin_id(BuiltinDisp *, const WCHAR *, DISPID *) DECLSPEC_HIDDEN
IDispatch * lookup_named_item(script_ctx_t *, const WCHAR *, unsigned) DECLSPEC_HIDDEN
HRESULT exec_script(script_ctx_t *, BOOL, function_t *, vbdisp_t *, DISPPARAMS *, VARIANT *) DECLSPEC_HIDDEN
HRESULT disp_get_id(IDispatch *, BSTR, vbdisp_invoke_type_t, BOOL, DISPID *) DECLSPEC_HIDDEN
void release_vbscode(vbscode_t *) DECLSPEC_HIDDEN
static VARIANT * get_arg(DISPPARAMS *dp, DWORD i)
void collect_objects(script_ctx_t *) DECLSPEC_HIDDEN
#define __WINE_ALLOC_SIZE(x)