- Implemented a C wrapper for the library. Compile the library with AS_C_INTERFACE to use it.
- Added a dummy array in asUPtr to make the size equal on all compilers (even when the C++ interface is disabled)
- Added SetLineCallback()/ClearLineCallback() to the context interface. These should be used instead of ExecuteStep() to control how much is executed each frame.
- Added SetExceptionCallback()/ClearExceptionCallback() to the context interface. These methods can be used for debugging purposes and allow the application to examine the callstack when an exception is raised.
- Added GetCallstackSize() and GetCallstackFunction() to the context interface.
- Added the possibility to turn off support for registering class methods. Compile the library with AS_NO_CLASS_METHODS. This can be used on compilers where class methods don't currently work.
- Added GetFunctionSection() to the engine interface.
- ExecuteStep() is now a deprecated method. Use the line callback method instead, which is much more flexible.
- Added GetCallstackLineNumber() to the context interface.
🎉 Celebrating 25 Years of GameDev.net! 🎉
Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!
AngelScript 2.1.0 WIP 3 (2005/02/13)
The first WIP of 2.1.0 is now available. The following changes were made:
Great stuff.
one thing that would be great is if you created a tiny little help app that can generate all the stubs needed for registering your own classes and hooking into functions from the AS scripts.
I know there are few simple apps for this but it would be excellent to have a good tested app from the application writer so we know that this app will generate exactly the code needed and will follow the versions of the Angelscript.
one thing that would be great is if you created a tiny little help app that can generate all the stubs needed for registering your own classes and hooking into functions from the AS scripts.
I know there are few simple apps for this but it would be excellent to have a good tested app from the application writer so we know that this app will generate exactly the code needed and will follow the versions of the Angelscript.
Just uploaded WIP 2 with the following changes:
I'll add the bug fixes to version 2.0.0 as well, when I get the time.
You can check out how the generic calling convention works by looking at the unit test in test_feature/test_generic.cpp.
- Bug fixes
- The line numbers reported by the VM were incorrect.
- GetGlobalVarPointer() was returning a pointer to a pointer for registered object types. (Thanks Rain Dog)
- The line numbers reported by the VM were incorrect.
- Library interface
- All methods that return line numbers can now optionally return column number as well.
- Added the asCALL_GENERIC flag for functions using the generic calling convention.
- Added GetObject() to the context interface, that will return the object pointer when a method function using the generic calling convention is called.
- Added GetArgDWord(), GetArgQWord(), GetArgFloat(), GetArgDouble(), and GetArgObject() to the context interface.
- Added SetReturnDWord(), SetReturnQWord(), SetReturnFloat(), SetReturnDouble(), and SetReturnObject() to the context interface.
- All methods that return line numbers can now optionally return column number as well.
- Script language
- The script language now allows statements like: func(expr), where the function don't take any arguments and
the expression evaluates to a void type. This is especially useful when dynamically generating scripts where
the expression type isn't known before hand.
- The script language now allows statements like: func(expr), where the function don't take any arguments and
I'll add the bug fixes to version 2.0.0 as well, when I get the time.
You can check out how the generic calling convention works by looking at the unit test in test_feature/test_generic.cpp.
WIP 3 is here with the following changes:
- Bug fixes
- Fixed a possible crash when calling AddScriptSection() with 0 for section name.
- Fixed a possible crash when calling AddScriptSection() with 0 for section name.
- Library interface
- Added a new asIScriptGeneric interface for handling generic functions.
- Moved the GetObject(), GetArgXXX(), and SetReturnXXX() functions to the asIScriptGeneric interface.
- The function signature for the generic functions now takes a pointer to asIScriptGeneric instead of asIScriptContext.
- The generic calling convention is now supported for behaviour functions as well.
- Added two new behaviours asBEHAVE_ALLOC and asBEHAVE_FREE, that can be used to register custom memory allocation functions for an object type.
- Added a new asIScriptGeneric interface for handling generic functions.
- Project
- Added as_generic.cpp and as_generic.h with the interface for generic functions.
- Added as_generic.cpp and as_generic.h with the interface for generic functions.
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement