Commit Graph

25 Commits

Author SHA1 Message Date
Thomas Goyne 9f196adc2e Replace boost::tokenizer with agi::Split 2015-02-08 08:11:22 -08:00
Thomas Goyne a6b1639320 Extract some bits that don't need to be templated from templates
Cuts compile time by about 10% and shrinks the final binary a little.
2014-12-28 16:46:38 -08:00
Thomas Goyne 5201773a3b Slightly optimize returning strings to lua from ffi functions 2014-12-28 16:46:37 -08:00
Thomas Goyne 416b9809c8 Update boost to 1.56
Closes #1818.
2014-08-16 14:01:58 -07:00
Thomas Goyne 74a215f642 Convert the re module over to the LuaJIT ffi 2014-07-28 12:30:44 -07:00
Thomas Goyne a01a84fb4f Extract some common ffi API stuff 2014-07-28 12:30:44 -07:00
Thomas Goyne 0cf35894e1 Convert the lfs module to using the ffi 2014-07-28 12:30:44 -07:00
Thomas Goyne 4f08afd808 Convert the unicode lua module over to using the ffi 2014-07-28 12:30:44 -07:00
Thomas Goyne 897f9d1254 Eliminate some warnings 2014-07-14 10:10:22 -07:00
Thomas Goyne a58ed7343d Add Aegisub's include dirs before the system ones rather than after 2014-07-07 09:42:02 -07:00
Thomas Goyne 365c04333c Install the unicode-compatible Lua module loader before loading moonscript
Closes #1760.
2014-07-07 09:23:36 -07:00
Thomas Goyne 0153987e02 Eliminate warnings in lpeg 2014-06-24 09:06:32 -07:00
Thomas Goyne 8d26c66d0f Remove a bunch of unused functionalty from agi::Exception 2014-05-30 11:53:14 -07:00
Thomas Goyne b43788fa7f Replace boost::format with agi::format
boost::format is slow to compile, slow to run, and has an unpleasant
interface.
2014-05-30 08:30:31 -07:00
Thomas Goyne eec83bb32b Cut down on FileNotFound exceptions thrown on startup 2014-05-27 06:42:46 -07:00
Thomas Goyne 09e325a1c3 Clean up unused includes 2014-05-23 07:28:24 -07:00
Thomas Goyne 94a060a556 Add unicode case conversion functions to the automation module 2014-05-09 07:00:48 -07:00
Thomas Goyne 431b096f51 Fix loading modules with UTF-8 BOMs
Ensure MoonScript gets loaded before we install our package loader to
avoid having its package loader used over ours.
2014-04-28 14:19:16 -07:00
Thomas Goyne a5a6d5da86 Restore the BOM-skipping logic to the Lua script reader
And add BOM to one of the test files to verify it works.
2014-04-28 10:21:54 -07:00
Thomas Goyne 63f4bf1beb Switch from regular Lua to LuaJIT 2014-04-28 07:38:30 -07:00
Thomas Goyne 9492192b73 Switch back to building Lua as C
In preparation for switching to LuaJIT, which doesn't support PUC Lua's
thing of using C++ exceptions for lua_error.

Requires replacing all uses of lua_error (and things calling lua_error)
with custom versions that throw an exception instead and adding an
exception -> lua error wrapper at all C++ -> Lua boundaries.
2014-04-27 10:37:23 -07:00
Thomas Goyne 689c16deb3 Use lua_createtable where applicable 2014-04-27 09:15:35 -07:00
Thomas Goyne 5cde33c8d5 Reimplement the useful parts of lfs
It doesn't support Unicode on Windows, so replace it with a
reimplementation using boost.filesystem that does, but skip all the
useless junk.
2014-04-26 08:16:39 -07:00
Thomas Goyne 2adcc76cf6 Switch automation tests to busted
This requires shuffling a bunch of stuff around to get a CLI lua
executable that uses an automation-like environment, but that's
something that'll be nice to have in the future anyway.

Busted indirectly depends on lfs and we currently can't use external
binary modules, so add a copy of lfs to the repo and build it with
Aegisub.
2014-04-26 08:16:38 -07:00
Thomas Goyne b8af29da0d Move some of the automation machinery to libaegisub 2014-04-25 15:03:18 -07:00