OpenTTD Source 20241224-master-gee860a5c8e
|
the implementation of the Squirrel class. More...
#include "../stdafx.h"
#include "../debug.h"
#include "squirrel_std.hpp"
#include "../fileio_func.h"
#include "../string_func.h"
#include "script_fatalerror.hpp"
#include "../settings_type.h"
#include <sqstdaux.h>
#include <../squirrel/sqpcheader.h>
#include <../squirrel/sqvm.h>
#include "../core/alloc_func.hpp"
#include "../safeguards.h"
Go to the source code of this file.
Data Structures | |
struct | ScriptAllocator |
In the memory allocator for Squirrel we want to directly use malloc/realloc, so when the OS does not have enough memory the game does not go into unrecoverable error mode and kill the whole game, but rather let the AI die though then we need to circumvent MallocT/ReallocT. More... | |
class | SQFile |
Functions | |
void * | sq_vm_malloc (SQUnsignedInteger size) |
void * | sq_vm_realloc (void *p, SQUnsignedInteger oldsize, SQUnsignedInteger size) |
void | sq_vm_free (void *p, SQUnsignedInteger size) |
static char32_t | _io_file_lexfeed_ASCII (SQUserPointer file) |
static char32_t | _io_file_lexfeed_UTF8 (SQUserPointer file) |
static char32_t | _io_file_lexfeed_UCS2_no_swap (SQUserPointer file) |
static char32_t | _io_file_lexfeed_UCS2_swap (SQUserPointer file) |
static SQInteger | _io_file_read (SQUserPointer file, SQUserPointer buf, SQInteger size) |
Variables | |
ScriptAllocator * | _squirrel_allocator = nullptr |
In the memory allocator for Squirrel we want to directly use malloc/realloc, so when the OS does not have enough memory the game does not go into unrecoverable error mode and kill the whole game, but rather let the AI die though then we need to circumvent MallocT/ReallocT. | |
the implementation of the Squirrel class.
It handles all Squirrel-stuff and gives a nice API back to work with.
Definition in file squirrel.cpp.
|
static |
Definition at line 571 of file squirrel.cpp.
|
static |
Definition at line 597 of file squirrel.cpp.
|
static |
Definition at line 604 of file squirrel.cpp.
|
static |
Definition at line 578 of file squirrel.cpp.
|
static |
Definition at line 614 of file squirrel.cpp.
void sq_vm_free | ( | void * | p, |
SQUnsignedInteger | size | ||
) |
Definition at line 194 of file squirrel.cpp.
void * sq_vm_malloc | ( | SQUnsignedInteger | size | ) |
Definition at line 192 of file squirrel.cpp.
void * sq_vm_realloc | ( | void * | p, |
SQUnsignedInteger | oldsize, | ||
SQUnsignedInteger | size | ||
) |
Definition at line 193 of file squirrel.cpp.
ScriptAllocator* _squirrel_allocator = nullptr |
In the memory allocator for Squirrel we want to directly use malloc/realloc, so when the OS does not have enough memory the game does not go into unrecoverable error mode and kill the whole game, but rather let the AI die though then we need to circumvent MallocT/ReallocT.
For the rest of this code, the safeguards should be in place though!
Definition at line 188 of file squirrel.cpp.