From 083228a10dffcaa77b1d0035c29013c6802befd4 Mon Sep 17 00:00:00 2001 From: "lapayo94@gmail.com" Date: Sun, 8 Jul 2012 21:01:08 +0000 Subject: Squirrel Plugins I worked a little bit on the squirrel Bindings They work now on linux and windows :) (OSX is untested, but should work also) but they are very limited at the moment. (Only made OnChat working) I also fixed some small bugs. git-svn-id: http://mc-server.googlecode.com/svn/trunk@648 0a769ca7-a7f5-676a-18bf-c427514a06d6 --- squirrel_3_0_1_stable/_OLD_sqplus/changes.txt | 359 ++++++++++++++++++++++++++ 1 file changed, 359 insertions(+) create mode 100644 squirrel_3_0_1_stable/_OLD_sqplus/changes.txt (limited to 'squirrel_3_0_1_stable/_OLD_sqplus/changes.txt') diff --git a/squirrel_3_0_1_stable/_OLD_sqplus/changes.txt b/squirrel_3_0_1_stable/_OLD_sqplus/changes.txt new file mode 100644 index 000000000..a33f32c2f --- /dev/null +++ b/squirrel_3_0_1_stable/_OLD_sqplus/changes.txt @@ -0,0 +1,359 @@ +2008-07-13 "SQUIRREL2_1_1_sqplus_snapshot_20080713" + + * Released as a snapshot + + +2008-07-06 kawachi + + * Removed testSqPlus2 + + +2008-06-26 arst@users.sf.net + + * SquirrelVM.cpp / SqPlusSetup.h + - Added a new define SQPLUS_SQUIRRELVM_WITH_SYSTEMLIB + (Juggernaut, http://squirrel-lang.org/forums/2585/ShowThread.aspx#2585) + + - Added a new function: + SQClassDefBase::scriptVar(const SQChar* name, int ival, + SQBool static_var=SQFalse) + + It allows for creating either static or ordinary Squirrel class + members from C++ source code. Versions for int/double/const + SQChar*. + + - SquirrelObject::GetBase() - retrieve base class. + (Juggernaut, http://squirrel-lang.org/forums/2585/ShowThread.aspx#2585) + + +2008-06-14 Kazei + + * Fixed memory leak in overloadConstructor + (http://squirrel-lang.org/forums/thread/2516.aspx) + + +2008-05-10 Neimod + + * Fixed for typesafe scripting + (http://squirrel-lang.org/forums/thread/2478.aspx) + + +2008-05-08 arst@users.sf.net + + * sqplus.h/.cpp + + - SQ_USE_CLASS_INHERITANCE_SIMPLE is a new way of handling class + inheritence in SqPlus, relying on a template scheme (see ClassTypeBase + and ClassType). It doesn't use any memory per instance and should + be a bit faster than previous scheme. SqClassDef has been given + a second template argument to account for this: + + struct SQClassDef ... + + - The name of the class (in SqClassDef) can be filled in by SqPlus now, + if Squirrel class name is same as C++ class name: + + SQClasDef("Troll", "Creature").func(...) => + SQClasDef().func(...) + + - Code to handle class types (names, copy funcs, ID tag, ...) has been + collected in ClassTypeBase and ClassType. + + - A new macro to specify that classes should not be copied with default + C++ method: DECLARE_NONCOPY_TYPE(ClassThatCannotBeCopied). + + - Reworked body of repetetive template functions, Moved to + SqPlusCallTemplates.h. Can be included with different qualifiers + (const, cdecl). + + - Support for cdecl member functions (MSVC specific) through: + + SQPLUS_ENABLE_CDECL_MEMBER_FUNCTIONS + + cdecl functions are compatible across compilers, while thiscall + is not. + + - Generic Push/Pop/Match handlers: SQPLUS_USE_GENERIC_HANDLERS + By default, Push/Get/Match handlers are for a single type. This + adds a fallback level, so that `hierarchy wide' handlers can + be used (define for base class and let all derived classes use + just that). + + - For functions that return a pointer to a temporarary (such as + returning a SQDefCharBuf, a template mapper class: + + Temporary::type + + was added. It can hold a temporary value while finishing a + SquirrelFunction call (before returning to C++). + + - Suppressing horrible warnings from Visual C++ about sprintf and related + functions (_CRT_SECURE_NO_DEPRECATE). + + + * SquirrelVM.h/.cpp + + - Changed SquirrelVM and SquirrelVMSys to make them hold a reference + on a SQVM so that ownership can be shared in a defined way. + + - SquirrelVMSys can be used as before to swap the `active' VM. + Now it holds a ref to a VM so that a VM is closed automatically + when switched out and there are no refs to any longer. (To hold a + VM ref in the application, simply use an instance of SquirrelVMSys). + + - NOTE: A VM created through sq_open() comes out with a reference + count of 1. A VM created with sq_newthread() arrives with a ref + count of 0. SquirrelVM will compensate for this. + + - Possibility to store a `sandbox VM'. This VM is not allowed to + access functions / classes bound with SqPlus and so can run more + untrusted scripts. + + - Hopefully these changes will not break current apps. (Note: creating + and keeping correct refs on SQVM involved some difficulties (with ref- + counting and garbage collected Squirrel). The scheme provided here is + (I hope) a working solution.) + + * SquirrelObject.h/.cpp + + - Added: operator = (HSQOBJECT) + + - From forum: (http://squirrel-lang.org/forums/thread/2506.aspx) + (suggested by auron0) + - Added: operator == (const SquirrelObject& o) + - Added: CompareUserPointer(const SquirrelObject& o) + + * SqPlusUTF8.h / .cpp + + - New files for converting strings in arguments (UTF8 <-> wchar_t) + + - Fix for conversion of UTF8 sequence of length 3+ bytes + + + +2008-02-17 PallavNawani + + * BindVariable of std::string + (http://squirrel-lang.org/forums/2370/ShowThread.aspx) + + +2007-10-14 "SQUIRREL2_1_1_sqplus_snapshot_20071014" + + * Fixed const member function overloading by Tegan + (http://squirrel-lang.org/forums/thread/2160.aspx) + + * Updates for missing inline in DECLARE_INSTANCE_TYPE_NAME + (http://squirrel-lang.org/forums/thread/2156.aspx) + + * Fixed resolution in function overloading + (http://squirrel-lang.org/forums/thread/2179.aspx) + + * Added support for operator overloading suggested by Tegan + (http://squirrel-lang.org/forums/thread/2160.aspx) + + +2007-09-27 "SQUIRREL2_1_1_sqplus_snapshot_20070927" + + * Added ats's extensions : + http://squirrel-lang.org/forums/1/2153/ShowThread.aspx + + - GCC_INLINE_WORKAROUND (problems with inline functions with gcc) + - Set/get for short/char members + - Get for const SQChar* + - DECLARE_ENUM_TYPE - Allows enums to be used as arguments + - Support for more customized Push handlers + - SQPLUS_DISABLE_COPY_INSTANCES (disabling automatic use of copy + constructors) + - Support for automatically generate TypeMasks (a template + solution) on function registration + + +2007-08-25 "SQUIRREL2_1_1_sqplus_snapshot_20070825" + + * Added m0pey's smart pointer support : + http://squirrel-lang.org/forums/thread/1982.aspx + + +2007-01-07 "SQUIRREL2_1_1_sqplus_snapshot_20070701" + + * Fixed `returning a pointer of a derived class' problem with gcc + (http://squirrel-lang.org/forums/thread/1875.aspx) based on + http://wiki.squirrel-lang.org/default.aspx/SquirrelWiki/SqPlusNativeCreatedInstancesWithCorrectAncestry.html + + +2007-06/02 "SQUIRREL2_1_1_sqplus_snapshot_20070602" + + * Fix by Sebastien Frippiat: + http://squirrel-lang.org/forums/thread/507.aspx + + +2007-05-27 "SQUIRREL2_1_1_sqplus_snapshot_20070527" + + * Added sqplus/SqPlusOverload.h for function overloading. See + testSqPlus2unit/test_FunctionOverloading.cpp. + + +2007-03-04 "SQUIRREL2_1_1_sqplus_snapshot_20070304" + + * Fixed compilation problem on g++-3.4.4 (cygwin): + http://squirrel-lang.org/forums/thread/1753.aspx + + +2007-02-25 "SQUIRREL2_1_1_sqplus_snapshot_20070225" + + * Fix by Kamaitati: http://squirrel-lang.org/forums/thread/1748.aspx + + * Modified sqplu.h (SquirrelObject::Set<>()) for gcc + + * Added testSqPlus2unit directory for unit testing + + +2006-10-09- "SQUIRREL2_1_1_sqplus_25" + + * Fixed SqPlusConst.h: + http://squirrel-lang.org/forums/thread/1314.aspx, changed + SquirrelObject Get/Set to default to pass-by-reference, where + pass-by-copy requires extra parameter + + +2006-10-08 "SQUIRREL2_1_1_sqplus_24" + + * Added SQClassDefNoConstructor<>: + http://wiki.squirrel-lang.org/default.aspx/SquirrelWiki/SqPlusWithoutAutoDefaultConstructor.html + (allows binding abstract base classes/pure-virtual-interfaces) + + * Added "Squirrel Set/Get objects" + http://wiki.squirrel-lang.org/default.aspx/SquirrelWiki/SqPlusGetSetObjects.html + + +2006-09-30 "SQUIRREL2_1_1_sqplus_23" + + * Fixed return type for sq_std_string Get() + + +2006-08-21 "SQUIRREL2_1_0_sqplus_22" + + * Merged in Squirrel 2.1.1 Stable + + +2006-08-20 "SQUIRREL2_1_0_sqplus_21" + + * Changed code order to be compatible with GCC 4.1.x. + + * Added jflanglois' suggestion for std::basic_string + + +2006-06-27 "SQUIRREL2_1_0_sqplus_20" + + * Added Katsuaki Kawachi's GetInstance()/Match() changes + (http://www.squirrel-lang.org/forums/962/ShowPost.aspx) + + +2006-02-06 "SQUIRREL2_1_0_sqplus_19" + + * Added VS7.1 make/project files with 71 suffix: can be used + alongside VS8 without directory changes + + * Added optional debug string argument to SquirrelVM::CompileBuffer() + + +2006-05-28 "SQUIRREL2_1_0_sqplus_18" + + * Added Kamaitati's changes: bug fix, C++ style inheritance support, + null instance argument support + + +2006-04-25 "SQUIRREL2_1_0_sqplus_17" + + * Changed SquirrelObject::GetInstanceUP() to return NULL and + clear internal error state on invalid instance type request + + * Added SquirrelObject::GetTypeName(const "SQChar" * key), + SquirrelObject::GetTypeName("INT" key) and + SquirrelObject::GetTypeName(). + + * Added SQ_SUPPORT_INSTANCE_TYPE_INFO compile time option + + * Added missing template arguments (7 argument case) + + * Source changes to support VS7.1 and VS8 compilation (standard and + UNICODE builds) + + * Added Code::Blocks project files + + +2006-03-26 "SQUIRREL2_1_0_sqplus_11" + + * Updated make/build files to VS8 (http://msdn.microsoft.com/vstudio/) + + * Source changes for VS8 compilation + + +2006-03-19 "SQUIRREL2_1_0_sqplus_10" + + * Updated to Squirrel 2.1 + + +2006-02-27 "SQUIRREL2_0_5_sqplus_9" + + * Added Ben's changes to implement DECLARE_INSTANCE_TYPE_NAME + (http://www.squirrel-lang.org/forums/635/ShowPost.aspx) + + +2005-12-22 "SQUIRREL2_0_5_sqplus_8" + + * Added GetVMSys() and SetVMSys() to better support multiple VM's + + +2005-11-21 "SQUIRREL2_0_5_sqplus_7" + + * Added modular support for const member functions. Defining + SQPLUS_CONST_OPT before including sqplus.h enables the added + functionality + + * SqPlus tested on Mac OS-X + + +2005-11-03 "SQUIRREL2_0_5_sqplus_6" + + * Fixed inheritance issue: tables added to classes are not newly + created upon instantiation- they must be cloned during + construction (language design) + + * Reworked projects build settings to better allow building all + projects types: Debug, Release, Debug - Unicode, Release - Unicode + + +2005-11-01 "SQUIRREL2_0_5_sqplus_5" + + * Added Unicode support + + +2005-10-23 "SQUIRREL2_0_5_sqplus_4" + + * Added gcc support: + - Added simple GNU Makefiles for gcc + - Minor code changes for gcc compilation + - Tested on RH Linux gcc 3.2.3, Cygwin gcc 3.4.4, and gcc on Sony PSP + (http://www.squirrel-lang.org/forums/420/ShowPost.aspx#420) + + * Added ClassDef::enumInt() for registering enums as ints + (to replace ClassDef::constant((int)myEnum)) + + +2005-10-14 "SQUIRREL2_0_5_sqplus_3" + + * Added support for SquirrelObject as a function argument and return + value. Tables and arrays can be directly accessed without using + the stack. This also makes it possible to return tables, arrays, + classes, and closures for later use at runtime, saving look-up + overhead + + * Added GetRet() for SquirrelFunction<> to ensure proper stack + behavior + + * Added additional error return info to help with debugging + + * Removed unused code + + -- cgit v1.2.3