Sandu Liviu Catalin
2b9c8f6550
Fix StackStrF mistaking the free function variable containing the native function wrapper pointer as a user passed parameter.
...
Also fix StackStrF treating negative indexes as positive indexes.
Make ErrorToException inline instead of static in header.
2018-10-25 19:43:38 +03:00
Sandu Liviu Catalin
d556364ecf
Attempt to fix function binding to comply with changes to StackStrF.
...
Various other changes to fix other issues related to changes in StackStrF behavior.
2018-10-24 21:37:51 +03:00
Sandu Liviu Catalin
58acfb9857
Make a few midifications to StackStrF.
2018-10-23 22:28:09 +03:00
Sandu Liviu Catalin
112d4828bb
Update StackStrF to initialize without a default VM.
2018-10-23 22:16:54 +03:00
Sandu Liviu Catalin
464821592c
Remove traces of noexcept from the binding library. This would've impaired the exception handling required by the binding system and cause a program termination for even the slightest error that occured from the script.
2018-10-23 21:29:28 +03:00
Sandu Liviu Catalin
4c111d4139
Simplify the script function wrapper.
2018-07-31 17:41:46 +03:00
Sandu Liviu Catalin
0deb209e7b
Refactor the binding library even further to reduce code size and complexity.
2018-07-30 21:44:04 +03:00
Sandu Liviu Catalin
ecca09d6ce
Allow null parameters in StackStrF.
2018-07-30 20:40:52 +03:00
Sandu Liviu Catalin
f300e7ff4a
Massive code reduction in the binding utility by using variadic templates.
...
Extensive code refactoring surrounding the StackStrF helper to facilitate the new changes.
Various other miscellaneous changes and code refactoring to facilitate the new changes.
2018-07-30 00:58:27 +03:00
Sandu Liviu Catalin
71419ffd99
Fix comments on StackStrF helper.
2018-07-29 19:26:09 +03:00
Sandu Liviu Catalin
f51b4968ac
Fix bug in plugin caused by not popping the closure from the stack after calling it.
...
This would've caused the plugin to run out of stack memory eventually.
2018-07-05 21:01:08 +03:00
Sandu Liviu Catalin
2e8d97f071
Add another stack cleanup utility to the Sqrat library.
2017-08-07 00:21:59 +03:00
Sandu Liviu Catalin
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
Sandu Liviu Catalin
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
Sandu Liviu Catalin
178b30bb20
Minor adjustments to Sqrat types. Improved shared pointers to use less heap allocations for counters.
2017-02-21 21:19:10 +02:00
Sandu Liviu Catalin
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
Sandu Liviu Catalin
92faaccf06
Start from the outer namespace when catching or throwing exceptions in the Sqrat library.
2016-11-17 10:50:03 +02:00
Sandu Liviu Catalin
c1fe2b4fc0
Include a default constructor and an explicit compile time string constructor in the StackStrF type.
2016-11-16 13:03:11 +02:00
Sandu Liviu Catalin
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
Sandu Liviu Catalin
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
Sandu Liviu Catalin
e5f9fffd8e
Adjust the Sqrat exception class to look more like the standard std::exception.
2016-07-08 00:55:51 +03:00
Sandu Liviu Catalin
e93319a381
Implement implicit or explicit conversions to boolean for Sqrat weak pointers.
2016-07-03 03:21:29 +03:00
Sandu Liviu Catalin
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
Sandu Liviu Catalin
d96a6dff0b
Minor optimization when retrieving the last error.
2016-06-12 13:01:43 +03:00
Sandu Liviu Catalin
579bd4d76b
Implement move semantics for Sqrat smart pointers.
2016-06-12 13:01:04 +03:00
Sandu Liviu Catalin
94fb58cc5d
Fix compile time error in implicit conversion to boolean from previosu commit.
2016-06-08 21:10:31 +03:00
Sandu Liviu Catalin
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
Sandu Liviu Catalin
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
Sandu Liviu Catalin
fa12692490
Implemented the module system.
2016-02-23 17:48:30 +02:00
Sandu Liviu Catalin
08f7f396c9
Added external Sqrat library.
2015-11-01 10:06:54 +02:00