Commit Graph

44 Commits

Author SHA1 Message Date
Rubidium 0724b3cda8 Codechange: replace SQChar with char 2025-05-04 16:59:06 +02:00
Rubidium 1f411f8a16 Codechange: use string_view for squirrel parameter checks 2025-05-04 16:59:06 +02:00
Rubidium 8f74c08ea6 Codechange: put SQRegFunctions into initializer_list and use ranged for loops 2025-05-04 14:05:05 +02:00
Rubidium d464961c41 Codechange: use std::string_view for SQ stack and function info 2025-05-03 23:02:09 +02:00
Rubidium 0bc773215e Codechange: use std::optional<std::string_view> to make the intent of function clearer 2025-05-03 23:02:09 +02:00
Rubidium fca99967a7 Codechange: make sq_scratchpad use std::span<char> 2025-05-03 23:02:09 +02:00
Rubidium b4d9682f21 Codechange: use std::string_view for sq_throwerror 2025-05-03 23:02:09 +02:00
Rubidium ec79ceb2be Codechange: use std::string_view for sq_pushstring 2025-05-03 23:02:09 +02:00
Rubidium 3020e615a9 Codechange: use std::string_view for squirrel compilation 2025-05-03 23:02:09 +02:00
Rubidium b6afd8d2b6 Codechange: remove some completely unused squirrel files 2025-05-03 17:14:10 +02:00
Rubidium 278aee2c19 Codechange: use std::string_view for sq_getstring 2025-05-03 14:24:28 +02:00
Rubidium af25eecc15 Codechange: use const for std::string_view where appropriate 2025-04-29 10:15:18 +02:00
Rubidium b9667ec3d1 Codechange: use std::string_view for scripts 2025-04-27 17:00:25 +02:00
Loïc Guilloux c86d918921 Add: [Script] Optional filter parameter to more ScriptXXXList constructors (#11698) 2024-01-09 09:39:13 +01:00
Rubidium 3a676a5af0 Codechange: replace static inline with static for non-class functions 2024-01-06 13:37:33 +01:00
Rubidium eaae0bb5e7 Codechange: automatic adding of _t to (u)int types, and WChar to char32_t
for i in `find src -type f|grep -v 3rdparty/fmt|grep -v 3rdparty/catch2|grep -v 3rdparty/opengl|grep -v stdafx.h`; do sed 's/uint16& /uint16 \&/g;s/int8\([ >*),;[]\)/int8_t\1/g;s/int16\([ >*),;[]\)/int16_t\1/g;s/int32\([ >*),;[]\)/int32_t\1/g;s/int64\([ >*),;[]\)/int64_t\1/g;s/ uint32(/ uint32_t(/g;s/_uint8_t/_uint8/;s/Uint8_t/Uint8/;s/ft_int64_t/ft_int64/g;s/uint64$/uint64_t/;s/WChar/char32_t/g;s/char32_t char32_t/char32_t WChar/' -i $i; done
2023-07-19 19:30:14 +02:00
Rubidium 4fbc81003f Codechange: make SQString::Create that supports std::string and use that 2023-06-20 15:25:17 +02:00
Rubidium e035705239 Codechange: introduce and use std::string variant of sq_throwerror 2023-05-14 22:54:10 +02:00
Rubidium 6e3d3c0e7c Codechange: introduce std::string variant of sq_pushstring 2023-05-09 23:14:48 +02:00
PeterN 57f2d70fef Change: Use cstdint instead of rolling our own types. (#10651) 2023-04-27 10:04:18 +02:00
Rubidium 484883e6e1 Cleanup: remove (unused) Squirrel code that used a hack to work around printf safety 2023-04-24 17:51:25 +02:00
Rubidium 8b93e45e22 Codechange: use string/fmt instead of printf for squirrel's PRINTFUNC 2023-04-24 17:51:25 +02:00
Patric Stout 56d54cf60e Add: introduce CMake for project management
CMake works on all our supported platforms, like MSVC, Mingw, GCC,
Clang, and many more. It allows for a single way of doing things,
so no longer we need shell scripts and vbs scripts to work on all
our supported platforms.

Additionally, CMake allows to generate project files for like MSVC,
KDevelop, etc.

This heavily reduces the lines of code we need to support multiple
platforms from a project perspective.

Addtiionally, this heavily improves our detection of libraries, etc.
2020-06-05 19:36:05 +02:00
rubidium 771dcf3b7b (svn r27003) -Cleanup: fix the use of spaces and asterices "around" some comments 2014-10-12 18:41:53 +00:00
rubidium 79ca66eb67 (svn r26853) -Cleanup [Squirrel]: remove some stuff that we never did and especially never should use 2014-09-19 20:06:51 +00:00
rubidium f41b4a8e1b (svn r26784) -Codechange [Squirrel]: use WChar for the lexer 2014-09-07 06:46:03 +00:00
rubidium 9b0c01e9bf (svn r26781) -Codechange [Squirrel]: remove includes/definitions that are already in stdafx.h 2014-09-06 20:20:35 +00:00
rubidium 7ece56c347 (svn r26780) -Cleanup: remove unused SQUIRREL_API macro 2014-09-06 20:11:00 +00:00
rubidium a47874754c (svn r26779) -Cleanup [Squirrel]: remove extern "C" statements; we won't be exporting things to C from our squirrel 2014-09-06 20:05:07 +00:00
rubidium e63ca12ab8 (svn r26775) -Cleanup [Squirrel]: "resolve" several of the unicode wrapper defines 2014-09-06 18:10:36 +00:00
rubidium 33ab505567 (svn r26774) -Cleanup [Squirrel]: remove _SC macro 2014-09-06 17:46:56 +00:00
rubidium ad315ef6d9 (svn r26772) -Cleanup [Squirrel]: remove traces to SQUNICODE define 2014-09-06 17:36:29 +00:00
rubidium 7a00d2e849 (svn r26769) -Codechange [Squirrel]: remove the difference between some platforms having wchar for SQChar and others just char; always use char (and UTF-8) like in the rest of (internal) OpenTTD 2014-09-06 17:20:45 +00:00
rubidium 39e90ec6e0 (svn r26584) -Codechange: [Squirrel] Make the internal integer for scripts always 64 bits, so scripts behave the same on 32 or 64 bits architectures 2014-05-11 20:16:37 +00:00
yexo f5b6a9db5c (svn r23801) -Fix: reading the utf-8 BOM from AI/GS files on big-endian machines failed 2012-01-15 11:31:34 +00:00
truebrain 1c9bec1999 (svn r23640) -Fix: stop using FORCEINLINE (1/3rd of the instances were, the others were still regular inline), but make sure inline is always a 'forced' inline (I am looking at you MSVC) 2011-12-20 17:57:56 +00:00
truebrain 0c2bbdde5c (svn r23383) -Update: bring Squirrel to 2.2.5; besides some nice bug fixes, it mostly solves the sort() issues 2011-12-01 12:03:20 +00:00
terkhen 1f3853249d (svn r22490) -Fix [FS#4623]: [Squirrel] Fix compilation under MinGW-w64. (JGR) 2011-05-25 16:35:23 +00:00
rubidium 9574371e53 (svn r18639) -Update: Squirrel from 2.2.3 to 2.2.4
-Revert (r17273): this fix is included in Squirrel 2.2.4
2009-12-26 09:59:32 +00:00
yexo ca6c4ee98a (svn r17498) -Add [NoAI]: Enable the squirrel std math library 2009-09-10 20:19:12 +00:00
yexo a4afa140f3 (svn r17223) -Change [NoAI] [FS#2980]: Crash an AI when it uses a DoCommand / Sleep instead of just printing an error message in the AI Debug Window 2009-08-19 16:14:15 +00:00
yexo 03d711add3 (svn r17195) -Update: squirrel to 2.2.3 stable 2009-08-15 21:21:52 +00:00
yexo 4ea3e511bd (svn r16502) -Fix [FS#2935]: when an AI was suspended while in a function called (indirectly) via call/acall/pcall OpenTTD crashed. Fix this by disallowing AIs to be suspended while called via call/acall/pcall.
IMPORTANT FOR AI WRITERS: AIs can no longer call any DoCommand functions (change anything, build vehicles, etc.) in a function called (indirectly) via call/acall/pcall. Where possible, please rewrite your code so it doesn't use call/acall/pcall
2009-06-01 22:00:47 +00:00
rubidium 1ad50ce4e6 (svn r15578) -Change: unexternalise squirrel. 2009-02-25 01:21:50 +00:00