1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2025-06-20 17:17:13 +02:00
Commit Graph

43 Commits

Author SHA1 Message Date
5fa97e17d9 Include a guard in the object iteration helper to avoid leaking in case of exception. 2017-06-19 14:24:10 +03:00
641fa973e0 Add a helper function to iterate over the elements in a script object more efficiently and easier. 2017-06-19 14:06:35 +03:00
c17a54b907 Add a helper function to append multiple elements into a script array more efficiently and easier. 2017-06-19 14:06:01 +03:00
d8c9be59d4 Remove redundant initialization to null in script object iterator. 2017-06-19 13:51:58 +03:00
7bb44ec008 Make builtin formatted strings default to false to avoid trying to perform a format in cases where it can be folled by a following parameters that are not meant to be part of that formatted string. 2017-06-18 20:25:12 +03:00
bb7a6881c6 Make sure that the free variable containing the pointer of the registered native closures is taken into account when registering functions with formatting support that take no extra parameters other than the formatting string and trailing variable arguments. 2017-06-17 22:41:03 +03:00
c5b509dcb3 Avoid creating multiple objects for the same string when event parameters contain strings.
Include a helper fonstructor in the light object type for quick string object creation.
2017-02-21 22:17:25 +02:00
178b30bb20 Minor adjustments to Sqrat types. Improved shared pointers to use less heap allocations for counters. 2017-02-21 21:19:10 +02:00
4287498600 Standardize helper structures to simplify the registration of constants and also to reduce compilation times and executable size. 2016-11-23 00:57:55 +02:00
c541fb3ea9 Implement constructors with formatting support in the Sqrat binding utility. 2016-11-22 16:08:45 +02:00
d359bd5c7b Make StackStrF constant when registering methods with formatting support. 2016-11-22 16:08:11 +02:00
2e0b7b6c7f Fix an issue in StackStrF type which would not perform the format with just one parameter. 2016-11-17 16:01:30 +02:00
41f2971b7c Implement an allocator for types that cannot be constructed by script and must not be destructed by script.
For cases where the actual instance is static and might outlive the VM itself.
2016-11-17 11:46:36 +02:00
641e51e03c Rename the lightweight object type.
Few adjustments to the tasks to overcome the limitation of removing themselves. Currently broken because they require a special Sqrat allocator.
2016-11-17 11:27:07 +02:00
15c824ddae Implement a constructor in the lightweight object type that copies a regular object. 2016-11-17 10:59:19 +02:00
faf07319f9 Implement lightweight objects in the Sqrat binding utility that only store the object reference and don't use any firtual functions.
Also make a a few adjustments to the regular Object constructor.
2016-11-17 10:52:14 +02:00
32061463c0 Remove duplicate code in Sqrat Var for the the StackStrF type. 2016-11-17 10:50:40 +02:00
92faaccf06 Start from the outer namespace when catching or throwing exceptions in the Sqrat library. 2016-11-17 10:50:03 +02:00
64a2957129 Always receive the StackStrF type as a const reference. 2016-11-16 15:09:37 +02:00
c1fe2b4fc0 Include a default constructor and an explicit compile time string constructor in the StackStrF type. 2016-11-16 13:03:11 +02:00
0137dfc66f Move the plugin Squirrel utilities to the Sqrat binding utility.
Implement registration of functions and methods with string formatting support in the Sqrat binding utility.
Few minor other fixes.
2016-11-16 11:54:07 +02:00
5d4f920007 Implement another constructor for Sqrat's Object type to grab an object reference right from the stack. 2016-09-11 20:10:29 +03:00
a373682cee Adjust the smart pointers in the Sqrat library.
Do not overwrite command listener options inc constructor.
Few other minor changes.
2016-07-12 02:43:29 +03:00
01852606c8 Implement double when binding constants with Sqrat.
Minor chnage in buffer when throwing an exception.
2016-07-09 22:48:42 +03:00
e5f9fffd8e Adjust the Sqrat exception class to look more like the standard std::exception. 2016-07-08 00:55:51 +03:00
e93319a381 Implement implicit or explicit conversions to boolean for Sqrat weak pointers. 2016-07-03 03:21:29 +03:00
a81b950952 Don't separate C++11 code from legacy code through macros. Make C++11 the default C++ version required. 2016-06-12 13:49:43 +03:00
0240d192e9 Implement move semantics on the Sqrat function wrapper. 2016-06-12 13:43:29 +03:00
3ca90d0698 Implement move semantics on the Sqrat table wrapper. 2016-06-12 13:43:19 +03:00
4eaf365bee Implement move semantics on the Sqrat array wrapper. 2016-06-12 13:31:28 +03:00
f71a1aa667 Implement move semantics on the Sqrat object wrapper. 2016-06-12 13:31:21 +03:00
67d6f54426 Minor optimizations in Sqrat when retrieving script strings. 2016-06-12 13:02:04 +03:00
d96a6dff0b Minor optimization when retrieving the last error. 2016-06-12 13:01:43 +03:00
579bd4d76b Implement move semantics for Sqrat smart pointers. 2016-06-12 13:01:04 +03:00
94fb58cc5d Fix compile time error in implicit conversion to boolean from previosu commit. 2016-06-08 21:10:31 +03:00
cf00eaa1b4 Implicit conversion to boolean of smart Sqrat pointers so they can be used in conditional expressions. 2016-06-08 16:57:48 +03:00
6822172f6a Updated the Squirrel and Sqrat libraries to the latest development versions. 2016-05-22 22:51:59 +03:00
46466930fb Fixed const correctness in Sqrat array. 2016-03-18 12:55:32 +02:00
f4a11ef825 Separated major non mandatory libraries into their onwn modules.
Consolidated and simplified the module API system.
Various other fixes and improvements.
2016-02-27 11:57:10 +02:00
fa12692490 Implemented the module system. 2016-02-23 17:48:30 +02:00
bedf03c9cd Implemented the IRC library.
Fixed a bug in the Routine system that caused crashes when constructed with only the first three arguments because it wasn't attached.
Implemented a gentle release of functions to not release them if the reference count is 1.
Adjusted the Routine and Command system to not be necessary to include them in the module core.
Moved the INI and XML libraries into their own namespace.
Various other modifications and fixes.
2016-02-23 05:23:56 +02:00
878a35eb2a Modified IRC Session events to receive the Session instance as first argument. Remeved leftover file and minor change in IDE sandbox project. 2015-11-04 20:58:05 +02:00
08f7f396c9 Added external Sqrat library. 2015-11-01 10:06:54 +02:00