Commit Graph

190 Commits

Author SHA1 Message Date
Jacek Caban aa5b68ac40 vbscript: Split named item lookup into a helper function.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-19 12:35:11 +01:00
Piotr Caban f595523413 vbscript: Don't leak IEnumVARIANT in interp_enumnext.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 20:22:09 +01:00
Piotr Caban a85d12af44 vbscript: Add support for "for each" on arrays.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-08 20:21:52 +01:00
Piotr Caban 0b5473c166 vbscript: Reimplement array_access function.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-11 14:23:25 +02:00
Jacek Caban c46dbfb131 vbscript: Call GetItemInfo() with original item name.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-07 16:59:55 +01:00
Jacek Caban 0de7b95c37 vbscript: Added a helper for getting default IDispatch value. 2015-03-06 00:02:08 +09:00
Jacek Caban bd42594da9 vbscript: Leave converting object to trivial values up to calee. 2015-03-03 23:16:52 +09:00
Jacek Caban 62bc8aeb0f vbscript: Leave assigning value up to add_dynamic_var callers. 2015-03-03 23:16:51 +09:00
Jacek Caban 571b09ce42 vbscript: Pass DISPATCH_PROPERTYPUTREF flag to InvokeEx when apropriate. 2015-03-03 23:16:48 +09:00
Jacek Caban 3873c93891 vbscript: Allow omitting optional function parameters in call expressions. 2015-01-28 21:30:10 +01:00
Jacek Caban e73bd253ea wscript: Added support for calling object by DISPID_VALUE in do_icall. 2014-07-21 18:44:22 +02:00
Jacek Caban be583662d4 vbscript: Reset error number on error mode change. 2014-06-16 09:28:16 +02:00
Jacek Caban ccf1567555 vbscript: Map some known error codes to vbscript errors.
Special thanks to Eric Lippert for the list of such errors.
2014-03-27 14:53:04 +01:00
Jacek Caban f6d6238e93 vbscript: Store required stack offset before doing jump. 2014-03-25 19:01:34 +01:00
Jacek Caban fc0ef22a44 vbscript: Added support for exception unwinding. 2014-03-21 16:51:23 +01:00
Jacek Caban f123556f07 vbscript: Allow creating RegExp object by new expression. 2014-03-18 16:10:38 +01:00
Jacek Caban 86ee4e959a vbscript: Added support for VARIANT references to interp_newenum. 2014-03-10 10:41:52 +01:00
Jacek Caban 6ad651bf77 vbscipt: Use VariantCopyInd in exec_script. 2014-03-10 10:41:42 +01:00
Jacek Caban 70628f80c0 vbscript: Directly access 'this' object properties in interpreter. 2014-03-07 14:34:47 +01:00
Nikolay Sivov 9b037d559e vbscript: Support VT_BYREF|VT_DISPATCH as a DISPID_NEWENUM source. 2014-02-05 13:49:27 +01:00
Jacek Caban 1c1a261122 vbscript: Don't allow OP_dim on already initialized arrays. 2013-11-25 15:15:52 +01:00
Francois Gouget 73bf5f1ae6 vbscript: Fix a trailing FIXME() '\n'. 2013-11-14 10:37:26 +01:00
Jacek Caban 7917b67a18 vbscript: Added support for setting array elements. 2013-11-13 18:31:07 +01:00
Jacek Caban 79c55e1255 vbscript: Added support for getting array elements. 2013-11-13 18:31:04 +01:00
Jacek Caban 853c6c4eea vbscript: Added interp_dim implementation. 2013-11-13 18:30:58 +01:00
Jacek Caban fc713bfc12 vbscript: Added bytecode support for arrays. 2013-11-13 18:30:55 +01:00
Piotr Caban fb29bf7d2f vbscript: Rename vbsheap to heap_pool. 2013-02-15 16:26:30 +01:00
Andrew Eikum 39d3453209 vbscript: Undefined variables resolve as EMPTY without Option Explicit. 2012-10-10 20:34:10 +02:00
Jacek Caban 81766a740e vbscript: Added support for VT_NULL in stack_pop_bool. 2012-09-10 12:15:40 +02:00
Jacek Caban 167174d88b vbscript: Added support for comparing to null. 2012-09-10 12:15:38 +02:00
Jacek Caban 374280aa04 vbscript: Added interp_case implementation. 2012-07-20 21:30:04 +02:00
Jacek Caban f17aaf8da7 vbscript: Added compiler support for select case statement. 2012-07-20 21:30:04 +02:00
Jacek Caban 8de35a4514 vbscript: Fixed 'exit do' statements crossing for in loops. 2012-07-09 09:58:49 -04:00
Jacek Caban 44266442ed vbscript: Added interpreter and compiler support for for each loops. 2012-07-03 17:11:57 +02:00
Francois Gouget d090c39470 vbscript: Add support for integer values in conditional jumps. 2012-05-23 18:25:10 +02:00
Jacek Caban d0be36213a vbscript: Added parameterized member assignment statement implementation. 2012-03-26 18:15:18 +02:00
Jacek Caban 732abbbcc3 vbscript: Added parameterized assign identifier statement support. 2012-03-26 18:15:16 +02:00
Jacek Caban 1e5c2134f1 vbscript: Evaluate object expression before value expression in member assignment. 2012-03-26 18:15:16 +02:00
Jacek Caban 434700bf6b vbscript: Init destination before passing it to VariantCopy in add_dynamic_var. 2012-03-26 18:15:16 +02:00
Jacek Caban e4bfd4e057 vbscript: Lookup visible items before global members in lookup_identifier. 2012-03-26 18:15:15 +02:00
Jacek Caban 1791cdaea8 vbscript: Fixed stack reallocation. 2012-01-16 16:49:16 +01:00
Jacek Caban edd5ca71b2 vbscript: Added compiler support for parametrized assignment statements. 2011-12-27 17:07:31 +01:00
Jacek Caban 6f0e215fb5 vbscript: Properly release global variables. 2011-10-14 20:26:43 +02:00
Jacek Caban 00de502b36 vbscript: Better stub for interp_errmode. 2011-09-22 17:24:42 +02:00
Jacek Caban abb2d28721 vbscript: Lookup global object before host-provided objects. 2011-09-22 16:33:42 +02:00
Jacek Caban a765b1ecc3 vbscript: Added interp_incc implementation. 2011-09-22 16:33:21 +02:00
Jacek Caban d55aa556ad vbscript: Added interp_step implementation. 2011-09-22 16:33:17 +02:00
Jacek Caban aad758921c vbscript: Added interp_val implementation. 2011-09-22 16:33:12 +02:00
Jacek Caban 8244e4c0c7 vbscript: Added for..to statement compiler implementation. 2011-09-22 16:33:08 +02:00
Jacek Caban 6cbf3e3b3c vbscript: Added interp_const implementation. 2011-09-21 14:47:34 +02:00
Jacek Caban 020d0695bb vbscript: Moved creating new dynamic variable to separated function. 2011-09-21 14:47:32 +02:00
Jacek Caban a968166224 vbscript: Added const statement compiler implementation. 2011-09-21 14:47:30 +02:00
Jacek Caban 4c23c99901 vbscript: Added support for undeclared variables in non-explicit mode. 2011-09-20 16:21:43 +02:00
Jacek Caban 6afc32c97d vbscript: Added On Error statement parser implementation. 2011-09-19 18:32:50 +02:00
Jacek Caban afffa2c58c vbscript: Added interp_me implementation. 2011-09-19 18:32:50 +02:00
Jacek Caban eef966faf7 vbscript: Added ME expression parser implementation. 2011-09-19 18:32:50 +02:00
Jacek Caban 95d040e99e vbscript: Added support for SCRIPTITEM_ISVISIBLE named items. 2011-09-19 18:32:50 +02:00
Jacek Caban 13d8e7b853 vbscript: Added error object stub implementation. 2011-09-19 18:32:50 +02:00
Jacek Caban 4e9d29907c vbscript: Added global object's isObject function stub implementation. 2011-09-19 18:32:35 +02:00
Jacek Caban 2de6982f46 vbscript: Added is expression implementation. 2011-09-19 18:00:01 +02:00
Jacek Caban 33a81218ad vbscript: Added interp_lteq implementation. 2011-09-19 17:59:56 +02:00
Jacek Caban ac5db68d02 vbscript: Added interp_lt implementation. 2011-09-19 17:59:52 +02:00
Jacek Caban 4df350bb22 vbscript: Added interp_gt implementation. 2011-09-19 17:59:49 +02:00
Jacek Caban bce6d6ac8a vbscript: Added interp_gteq implementation. 2011-09-19 17:59:45 +02:00
Jacek Caban beef095654 vbscript: Added more equality expressions parser/compiler implementation. 2011-09-19 17:59:41 +02:00
Jacek Caban 223a407a7f vbscript: Added do until..loop statement implementation. 2011-09-16 17:23:16 +02:00
Jacek Caban 603d053512 vbscript: Use default object value for objets in stack_pop_val. 2011-09-16 17:23:14 +02:00
Jacek Caban a8de7904f5 vbscript: Added support for default getters. 2011-09-16 17:23:14 +02:00
Jacek Caban a03ad6b2cd vbscript: Added interp_set_member implementation. 2011-09-16 17:23:14 +02:00
Jacek Caban 097a75f674 vbscript: Added compiler/runtime support for property getters/letters. 2011-09-16 17:23:14 +02:00
Jacek Caban 8de5db6030 vbscript: Added stop statement semi-stub implementation. 2011-09-15 19:13:15 +02:00
Jacek Caban 1e01a176a3 vbscript: Added this object to identifier lookup chanin. 2011-09-15 19:13:15 +02:00
Jacek Caban 308b2641d9 vbscript: Added interp_mcall implementation. 2011-09-15 19:13:15 +02:00
Jacek Caban a6ee830fd2 vbscript: Added object member call implementation. 2011-09-15 15:44:52 +02:00
Jacek Caban 9848d6be2e vbscript: Added interp_nothing implementation and tests. 2011-09-15 15:44:48 +02:00
Jacek Caban 8864c8dbae vbscript: Added nothing literal parser/compiler implementation. 2011-09-15 15:44:44 +02:00
Jacek Caban efc59d1b19 vbscript: Store class_desc_t in vbdisp_t. 2011-09-15 15:44:41 +02:00
Jacek Caban fb57bc21b8 vbscript: Added interp_new implementation. 2011-09-15 15:44:37 +02:00
Jacek Caban 408a1bf682 vbscript: Added new expression parser/compiler implemetation. 2011-09-15 15:44:33 +02:00
Jacek Caban f683832ac1 vbscript: Added interp_set_ident implementation. 2011-09-15 15:44:28 +02:00
Jacek Caban b3a6217ed3 vbscript: Added set statement parser/compiler implementation. 2011-09-15 15:44:25 +02:00
Jacek Caban 429bac4c86 vbscript: Added interp_imp implementation. 2011-09-14 17:00:19 +02:00
Jacek Caban 89c9a737f4 vbscript: Added interp_eqv implementation. 2011-09-14 17:00:19 +02:00
Jacek Caban f17b35fdeb vbscript: Added interp_xor implementation. 2011-09-14 17:00:19 +02:00
Jacek Caban 43d10693ca vbscript: Added xor, imp and eqv expressions parser/compiler implementation. 2011-09-14 17:00:19 +02:00
Jacek Caban 4916c1b26c vbscript: Added interp_or implementation. 2011-09-14 17:00:19 +02:00
Jacek Caban fae7352f93 vbscript: Added 'or' expression parser/compiler implementation. 2011-09-14 17:00:19 +02:00
Jacek Caban 091f243051 vbscript: Added interp_and implementation. 2011-09-14 17:00:19 +02:00
Jacek Caban 69de07981a vbscript: Added 'and' expression parser/compiler implementation. 2011-09-14 17:00:18 +02:00
Jacek Caban f9edb683d2 vbscript: Added support for returning value from function. 2011-09-14 17:00:18 +02:00
Jacek Caban 0b9b021aa3 vbscript: Added support for sub local variables. 2011-09-14 14:56:36 +02:00
Jacek Caban c846a5925b vbscript: Added interpreter support for sub arguments. 2011-09-14 14:56:21 +02:00
Jacek Caban 48d04b220b vbscript: Added function invocation supprot to do_icall. 2011-09-14 14:56:11 +02:00
Jacek Caban f00a8ec04d vbscript: Added functions lookup implementation. 2011-09-14 14:56:06 +02:00
Gerald Pfeifer d685a07f22 vbscript: Add missing error handling in interp_jmp_false. 2011-09-14 11:08:00 +02:00
Jacek Caban 143a488508 vbscript: Added interp_exp implementation. 2011-09-13 17:17:00 +02:00
Jacek Caban b5d8554f1e vbscript: Added exp expression parser/compiler implementation. 2011-09-13 17:17:00 +02:00
Jacek Caban 9db2d7c352 vbscript: Added interp_div implementation. 2011-09-13 17:17:00 +02:00
Jacek Caban 8a526743a1 vbscript: Added interp_mul implementation. 2011-09-13 17:17:00 +02:00
Jacek Caban 2f3c235a44 vbscript: Added multiplicative expression parser/compiler implementation. 2011-09-13 17:17:00 +02:00