Commit Graph

440 Commits

Author SHA1 Message Date
Gunnar Beutner 6c53c7f192 Fix debug info for indexer
fixes #8132
2014-12-19 16:53:44 +01:00
Gunnar Beutner a3ea72c4ca Implement the __commit function
refs #8127
2014-12-19 13:08:46 +01:00
Gunnar Beutner 97168378e8 Rename _DEBUG to I2_DEBUG
fixes #7767
2014-12-19 12:19:28 +01:00
Gunnar Beutner 6383da1f2f Replace spaces with tabs 2014-12-18 17:06:00 +01:00
Gunnar Beutner 9f18211ada Remove obsolete code
refs #7709
2014-12-18 15:57:30 +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 82a9a8f0cf Fix crash in ConfigCompilerContext::WriteObject
fixes #8106
2014-12-18 12:46:35 +01:00
Gunnar Beutner 28734daa06 Fix crash when accessing invalid fields
fixes #8104
2014-12-18 11:21:11 +01:00
Gunnar Beutner 9011c9fa67 Fix crash when accessing invalid fields on objects which don't have prototypes 2014-12-16 18:15:47 +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 8ef8316ca6 Fix location info for strings
fixes #8081
2014-12-16 06:18:39 +01:00
Gunnar Beutner d72bd4fec2 Add another unit test for expressions
refs #8074
2014-12-15 17:23:18 +01:00
Gunnar Beutner b9831f0be4 Add unit tests for the "var" keyword
refs #8074
2014-12-15 16:42:34 +01:00
Gunnar Beutner 77806b9de7 Get rid of the local/global keywords
refs #8074
2014-12-15 16:09:17 +01:00
Gunnar Beutner 252f3205cb Fix incorrect variable scoping
refs #8074
2014-12-15 12:58:55 +01:00
Gunnar Beutner 55b7f00382 Remove unnecessary includes 2014-12-15 10:16:06 +01:00
Gunnar Beutner 8c9fdb537f Remove unused code
refs #8074
2014-12-15 06:03:13 +01:00
Gunnar Beutner 262bfb7fc9 Allow if/else in rterms
refs #8074
2014-12-14 14:08:41 +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 c0f6d65b66 Fix operator precedence for =>
refs #8030
2014-12-13 14:06:19 +01:00
Gunnar Beutner 54ab4dd924 Implement support for lambdas
refs #8030
2014-12-13 13:50:47 +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 7ac6347d6a Update error message to use the correct lexer token name
refs #7883
2014-12-11 15:07:21 +01:00
Gunnar Beutner e86b36f8d7 Remove the __ prefix from some of the lexer tokens
fixes #7883
2014-12-11 13:12:35 +01:00
Gunnar Beutner 2720333d6e Fix missing location information for included files
fixes #7927
2014-12-10 15:06:09 +01:00
Gunnar Beutner 705447ce18 Make ConfigCompiler::HandleInclude return an inline dictionary
fixes #8047
2014-12-10 11:30:42 +01:00
Gunnar Beutner 89a0fc006e Implement a boolean sub-type for the Value class
fixes #8043
2014-12-10 09:05:16 +01:00
Gunnar Beutner 9e01f6d8b9 Fix operator precedence for %, |, ^, &, in and !in in combination with <
fixes #8029
2014-12-09 20:51:19 +01:00
Gunnar Beutner 291b000e09 Allow modifying the name attribute
fixes #8033
2014-12-09 20:37:20 +01:00
Gunnar Beutner 3cb2afd454 Fix minor memory leak in the config parser 2014-12-06 10:23:25 +01:00
Gunnar Beutner b5b1be95a2 Make the config lexer return an error for unterminated string literals
fixes #7808
2014-11-28 06:49:06 +01:00
Gunnar Beutner ab63fca3d5 Make the config parser thread-safe
fixes #7822
2014-11-28 06:48:27 +01:00
Gunnar Beutner 358d91e912 Remove the __parent field in the DynamicObject class
refs #7748
2014-11-27 06:32:12 +01:00
Gunnar Beutner cee13fbec0 Implement the %, ^, %=, ^=, &= and |= operators
fixes #7813
2014-11-25 17:16:34 +01:00
Gunnar Beutner 1e5751c540 Build fix for GCC
refs #7822
2014-11-25 12:36:13 +01:00
Gunnar Beutner 31605402ea Move the parser's global variables to the ConfigCompiler class
refs #7822
2014-11-25 09:40:32 +01:00
Gunnar Beutner 9281f82ba3 Fix parser problem with missing new-lines
refs #7822
2014-11-25 08:59:55 +01:00
Gunnar Beutner c5839b91aa Use MakeLiteral instead of 'new LiteralExpression'
refs #7822
2014-11-25 08:44:47 +01:00
Gunnar Beutner 03a4452343 Remove the global m_Expressions variable
refs #7822
2014-11-25 08:42:27 +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