92 Commits

Author SHA1 Message Date
Gunnar Beutner
4a2a6d999a Fix incorrect debug hints for nested attributes
fixes #8604
2015-03-05 13:18:15 +01:00
Gunnar Beutner
4d63351561 Fix some compile warnings 2015-03-04 08:26:15 +01:00
Gunnar Beutner
9bbe9a4875 Fix a memory leak in *Expression::GetReference
fixes #8593
2015-03-04 08:00:38 +01:00
Gunnar Beutner
a76f816623 Implement the 'continue' and 'break' keywords
fixes #8394
2015-02-19 12:57:52 +01:00
Gunnar Beutner
b858a05f15 Make operators &&, || behave like in JavaScript
fixes #8290
2015-01-27 08:40:19 +01:00
Gunnar Beutner
01d3be8820 Implement the while statement
fixes #8269
2015-01-23 15:54:27 +01:00
Michael Friedrich
78bfd0204c Update copyright year 2015-01-22 12:00:23 +01:00
Gunnar Beutner
363f23b1d8 Rename ScriptFunction to Function
fixes #8258
2015-01-21 08:48:38 +01:00
Gunnar Beutner
5e9d9aea74 Change return type for 'set' expressions to Empty
fixes #8172
2015-01-12 08:55:16 +01:00
Gunnar Beutner
ee5f4fb7e3 Improve error reporting for the import keyword
fixes #8061
2014-12-20 11:09:21 +01:00
Gunnar Beutner
97168378e8 Rename _DEBUG to I2_DEBUG
fixes #7767
2014-12-19 12:19:28 +01:00
Gunnar Beutner
873e294158 Refactor the WorkQueue class to make error reporting easier
refs #7709
2014-12-18 15:11:57 +01:00
Gunnar Beutner
28734daa06 Fix crash when accessing invalid fields
fixes #8104
2014-12-18 11:21:11 +01:00
Gunnar Beutner
23a556c7ce Make sure that operator % throws an exception when the ride-hand-side argument is 0
fixes #8089
2014-12-16 08:52:32 +01:00
Gunnar Beutner
d72bd4fec2 Add another unit test for expressions
refs #8074
2014-12-15 17:23:18 +01:00
Gunnar Beutner
252f3205cb Fix incorrect variable scoping
refs #8074
2014-12-15 12:58:55 +01:00
Gunnar Beutner
b40e95d9b6 Only implicitly convert strings to indexers
refs #8074
2014-12-14 11:55:44 +01:00
Gunnar Beutner
1cb0231c05 Refactor how variable scopes work
refs #8074
2014-12-14 11:33:45 +01:00
Gunnar Beutner
dd4c04aa9b Implement the 'global' keyword to differentiate between variable scopes
refs #8074
2014-12-13 17:48:58 +01:00
Gunnar Beutner
1275847d5a Improve error messages for failed expressions
fixes #8076
2014-12-12 21:21:30 +01:00
Gunnar Beutner
05485ea2d6 Disallow calling strings as functions
fixes #8040
2014-12-12 20:45:11 +01:00
Gunnar Beutner
cfd775c948 Move the VMFrame class to libbase
refs #8065
2014-12-12 15:33:56 +01:00
Gunnar Beutner
aa38dde1fc Implement prototype functions
fixes #8065
2014-12-12 15:22:37 +01:00
Gunnar Beutner
a94b26ff47 Add missing DebugInfo for field accesses
refs #8062
2014-12-12 08:58:39 +01:00
Gunnar Beutner
b016003eb5 Implement string indexers
fixes #8062
2014-12-12 06:54:38 +01:00
Gunnar Beutner
4d401a7cc5 Fix if for non-boolean arguments
fixes #8072
2014-12-11 21:31:30 +01:00
Gunnar Beutner
a9e2bc4b40 Implement a way to call methods on objects
fixes #8071
2014-12-11 21:12:34 +01:00
Gunnar Beutner
2720333d6e Fix missing location information for included files
fixes #7927
2014-12-10 15:06:09 +01:00
Gunnar Beutner
cee13fbec0 Implement the %, ^, %=, ^=, &= and |= operators
fixes #7813
2014-11-25 17:16:34 +01:00
Gunnar Beutner
ed81cb0f2c Make SetExpression check whether the LHS is null
fixes #7814
2014-11-24 18:26:27 +01:00
Gunnar Beutner
fddead5303 Fix some compiler warnings
fixes #7826
2014-11-24 18:25:08 +01:00
Gunnar Beutner
2ec499be17 Implement the __if and __else keywords
fixes #7824
2014-11-24 09:56:28 +01:00
Gunnar Beutner
d3a6277fec Fix the __return keyword
fixes #7811
2014-11-24 00:07:29 +01:00
Gunnar Beutner
d366dd8e30 Fix the reduce/reduce conflicts
refs #7800
2014-11-23 15:25:25 +01:00
Gunnar Beutner
81acd34f52 Implement unit tests for the config parser
refs #7805
2014-11-23 09:54:08 +01:00
Gunnar Beutner
af759ff6ab Fix incorrect result for the !in operator
fixes #7806
2014-11-23 09:54:08 +01:00
Gunnar Beutner
f5766f9118 Refactor the stack frame handling for scripts
fixes #7748
2014-11-22 19:24:03 +01:00
Gunnar Beutner
0ab61291c6 Make sure source information is always available for error messages
refs #7699
2014-11-21 18:35:59 +01:00
Gunnar Beutner
764d72a61a Improve error messages for the config parser
refs #7699
2014-11-21 09:07:08 +01:00
Gunnar Beutner
8e265b7b7f Implement a C++ code generator for libconfig
fixes #7699
fixes #7704
fixes #7706
2014-11-20 21:53:32 +01:00
Gunnar Beutner
0078e00c13 Refactor apply/object rules
fixes #7700
2014-11-20 21:29:50 +01:00
Gunnar Beutner
f84cc8de39 Implement support for signals
fixes #7744
2014-11-20 06:54:48 +01:00
Gunnar Beutner
ea729b2b6c Clean up the DebugHint class 2014-11-17 14:52:08 +01:00
Gunnar Beutner
d8e1943671 Fix missing debug info for nested dictionaries
fixes #7688
2014-11-15 12:17:59 +01:00
Gunnar Beutner
814589ac17 Use Array::Contains in InExpression/NotInExpression 2014-11-15 08:22:32 +01:00
Gunnar Beutner
65be09215f Avoid unnecessary type lookups
refs #7622
2014-11-10 20:07:07 +01:00
Gunnar Beutner
3cc79a6005 Optimize apply/object filters
refs #7622
2014-11-10 12:06:29 +01:00
Gunnar Beutner
ec109b04dd Refactor the AST
refs #7622
2014-11-10 12:06:25 +01:00
Gunnar Beutner
e3c5063aff Remove unused fields from the ObjectRule class
refs #7622
2014-11-10 09:52:27 +01:00
Gunnar Beutner
478f03b49a Replace boost::shared_ptr with boost::intrusive_ptr
refs #7622
2014-11-09 16:54:41 +01:00