Sandu Liviu Catalin
ef0fc103cd
Supress some fall through warnings in GCC with markers. Later to be updated to attributes and include support for more compilers.
2019-05-24 22:17:24 +03:00
Sandu Liviu Catalin
24e6379f5e
Export newly added Squirrel functions. Fix function definition with different name than declaration.
2019-04-30 22:28:23 +03:00
Sandu Liviu Catalin
0f0b795ca9
Various minor changes and fixes that were not pushed to the repository. Just random stuff.
2019-01-29 18:44:55 +02:00
Sandu Liviu Catalin
1757e8b7c4
Exporn newlly added Squirrel API that is used to improve overloaded methods.
2018-10-31 20:28:18 +02:00
Sandu Liviu Catalin
353974528d
Update code to comply with changes in the Squirrel API.
2018-10-25 20:08:31 +03:00
Sandu Liviu Catalin
5ef96b943b
Allow a dummy StackStrF reference to be retrieved.
2018-10-23 22:28:34 +03:00
Sandu Liviu Catalin
3f8e95fabc
Update the base module utility to comply with the new StackStrF changes.
2018-07-30 01:03:10 +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
f048950d20
Implement a formatted Squirrel error throwing utility.
2017-06-16 02:23:24 +03:00
Sandu Liviu Catalin
40c16ca5fc
Make the AutoDelete helper available to modules.
2017-05-25 22:14:51 +03:00
Sandu Liviu Catalin
3ce06d8cbc
Minor adjustments to the code and several bug-fixes.
2017-05-05 20:39:25 +03:00
Sandu Liviu Catalin
41e04e5167
Initial implementation of the new event system.
...
Initial implementation of the new signals and slots class.
Fixed command parsing which compared a pointer to a character.
Buffer overflow fix in routines which used the limits from the entity tasks.
Switched from Sqrat::Object to Sqrat::LightObj in most places to avoid the overhead of the VM pointer.
Various other adjustments and improvements.
The plugin is currently in a broken state and crashes at shutdown. The bug is unknown at this point.
2017-02-21 21:24:59 +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
351d44a8e5
Implement a mechanism for generating pure typename functions.
2016-11-15 21:06:41 +02:00
Sandu Liviu Catalin
ded30fdeac
Implement move constructor in StackStrF type.
2016-11-14 10:25:31 +02:00
Sandu Liviu Catalin
ad876f6a8f
Implement a utility to help with deleting instances even when exceptions are thrown.
2016-10-30 18:25:53 +02:00
Sandu Liviu Catalin
e445530bbb
Implement a new module command that is called right before cosing the virtual machine to allow modules to release resources manually.
...
Should fix a possible crash in the IRC plugin which was caused by the Session destructor to be called recursively when cleaned automatically by the VM.
2016-09-02 14:11:39 +03:00
Sandu Liviu Catalin
d95f3253d4
Move the auto assign helper class to the shared utility header.
2016-08-25 11:54:29 +03:00
Sandu Liviu Catalin
fae1e51c7b
Prevent ambiguity errors during compilation caused by the new dispatch system under x64 builds.
2016-08-25 01:01:03 +03:00
Sandu Liviu Catalin
3cf8f7a24a
Remove dynamic argument comparison from the shared utility header and reimplement it as a more flexible dynamic dispatching in it's own header.
2016-08-24 22:27:45 +03:00
Sandu Liviu Catalin
adde1e852a
Reduce duplicate code from dynamic comparisons and prepare the implementation to be used for other metamethods types.
2016-08-24 19:47:10 +03:00
Sandu Liviu Catalin
d31c77341c
Implement a dynamic comparison system.
2016-08-24 18:45:46 +03:00
Sandu Liviu Catalin
66d1110733
Rvised the API distribution system to avoid segmentation fault crashes on Linux and make the overal code cleaner.
...
Moved the constants in IRC module into their own source and implemented a faster method of registering them.
Various other minor changes and adjustments. Some of them in order to comply with the new API distribution system.
2016-07-17 03:24:07 +03:00
Sandu Liviu Catalin
d71f76c63b
Fix an mistake in the declaration of the negation operator for the Buffer type.
2016-07-10 16:05:56 +03:00
Sandu Liviu Catalin
a89acef503
Initial implementation for the second revision of the SQLite module.
...
Added a utility function to retrieve a time instance in seconds.
2016-07-10 03:00:33 +03:00
Sandu Liviu Catalin
01852606c8
Implement double when binding constants with Sqrat.
...
Minor chnage in buffer when throwing an exception.
2016-07-09 22:48:42 +03:00
Sandu Liviu Catalin
f401b265da
Don't use the common buffer in the functions that covert date and time instances to string.
2016-07-09 21:33:27 +03:00
Sandu Liviu Catalin
a06efdafc5
Improve the Clamp functions to accept any type of value for all parameters.
...
Implement common functions to work with date and time types and avoid duplicate code.
Remove unnecessary functions used to retrieve the valie in long integer instances.
Various other fixes and name adjustments.
2016-07-09 21:21:07 +03:00
Sandu Liviu Catalin
bd75ffe305
Fix the functions used to create buffers and extend with new ones to interact with them.
2016-07-09 17:21:41 +03:00
Sandu Liviu Catalin
4e93e58397
Initial revision of the buffer implementation.
2016-07-08 00:56:54 +03:00
Sandu Liviu Catalin
98c50ce7e1
Minor comment fix in the shared utility header.
2016-07-05 23:07:04 +03:00
Sandu Liviu Catalin
87ab54d453
Expand the host plug-in API and not just the Squirrel API.
...
Extend the host plug-in API with a few more date/time functions.
Update some of the plugins to use the expanded functions of the host plug-in API.
2016-07-04 16:26:39 +03:00
Sandu Liviu Catalin
996c078105
Introduce a new module event to be called after the virtual machine was destroyed. Thus, preventing the release of the virtual machine while still in use.
...
Prevent releasing IRC sessions while they could still be in use.
Few other changes that had to be committed because of the change in the module API.
2016-06-26 16:18:23 +03:00
Sandu Liviu Catalin
3a8d4952c1
Avoid sharing the same source file between multiple projects where there's a possibility that with each project object generated by the the source file could have a diffrent code used by other sources from the project.
...
Which can lead to undefined link time errors (at best) or run-time crashes (at worst).
2016-06-20 16:17:03 +03:00
Sandu Liviu Catalin
8846cb9351
Initial revision of the script loading system to be more flexible and accurate.
2016-06-18 20:31:35 +03:00
Sandu Liviu Catalin
166760fd46
Export functions to at least create shared buffers from modules.
2016-06-15 10:01:07 +03:00
Sandu Liviu Catalin
861c830bb7
Improve the constructors in shared buffers implementation.
2016-06-15 10:00:28 +03:00
Sandu Liviu Catalin
85e881effa
Fix const correctness in utility functions.
...
By not taking the object reference as const we are forced to make copies of objects that are const or use const_cast. Eitherway, this is the correct way because objects are not modified.
2016-06-13 00:27:06 +03:00
Sandu Liviu Catalin
f1d8d60e96
Improve the string retrieval from the stack to make use of the new sq_getstringandsize API function and also obtain the size everytime.
...
Add two new helper functions to retrieve the string representation of a certain script type or object.
2016-06-09 02:05:36 +03:00
Sandu Liviu Catalin
6489dfdf08
Fix the command system which would fail on recursive command execution.
2016-06-08 16:26:55 +03:00
Sandu Liviu Catalin
410a60cfe5
More helper functions to the shared utility.
2016-06-07 03:04:57 +03:00
Sandu Liviu Catalin
221e27e090
Remove implementation of the Decimal time. Not worth the troublem.
2016-06-05 04:28:45 +03:00
Sandu Liviu Catalin
3411f7c64b
Export basic interaction with the decimal type.
2016-06-05 04:16:42 +03:00
Sandu Liviu Catalin
d42040c9c0
Merge the Random and Math libraries into the Numeric library and organize code a bit.
2016-06-05 00:00:59 +03:00
Sandu Liviu Catalin
cce6beb4d5
Fix the exported API for the Chrono library to use unsigned integers.
2016-06-04 23:10:35 +03:00
Sandu Liviu Catalin
2aa7e8b7c2
Furher implementation and improvement of the Chrono types and also exposed them to the module API.
...
Tighten the safety of exported functions to avoid exceptions leaking outside the host plugin.
2016-06-04 22:33:34 +03:00
Sandu Liviu Catalin
125088c9e3
Implement several helper functions to create long integer instances.
2016-06-03 22:16:14 +03:00
Sandu Liviu Catalin
0c92601362
Update the module API and merge shared code between modules and host plugin.
2016-06-03 21:26:19 +03:00
Sandu Liviu Catalin
248b062110
Fix mdoule builds on x64 to conform to the changes in the plugin sdk.
2016-05-24 05:45:01 +03:00
Sandu Liviu Catalin
6822172f6a
Updated the Squirrel and Sqrat libraries to the latest development versions.
2016-05-22 22:51:59 +03:00