q66
|
8e31583612
|
use uint32_t
|
2017-01-25 02:10:17 +01:00 |
|
q66
|
1c5c0939e1
|
use size_t
|
2017-01-25 02:09:50 +01:00 |
|
q66
|
d14c8f8593
|
update to latest ostd
|
2017-01-25 01:57:33 +01:00 |
|
q66
|
57478f6866
|
move to std::vector
|
2017-01-25 01:18:29 +01:00 |
|
q66
|
7be2ee5a08
|
remove multi-item parse
|
2016-11-18 15:17:50 +01:00 |
|
q66
|
79b1a031ca
|
use new ostd features
|
2016-11-15 22:54:05 +01:00 |
|
q66
|
ed65356dbe
|
automagically figure out CsInt minimum and add some extra assertions
|
2016-11-12 19:15:28 +01:00 |
|
q66
|
58b8f3ba54
|
make some types not configurable
|
2016-11-11 22:19:51 +01:00 |
|
q66
|
128a961869
|
simpler char-to-hexdigit conversion func (can assume because of isxdigit)
|
2016-11-08 23:12:02 +01:00 |
|
q66
|
4f7c05a60d
|
clean up ListParser api
|
2016-11-07 23:33:53 +01:00 |
|
q66
|
da37ff51d1
|
rename to get_element
|
2016-11-06 23:48:50 +01:00 |
|
q66
|
049cbd0035
|
make input private in listparser
|
2016-10-27 00:49:16 +02:00 |
|
q66
|
78df1ca95d
|
move element() out to header
|
2016-10-26 23:02:48 +02:00 |
|
q66
|
6fcdbe7ac1
|
non-allocating element() variant on ListParser
|
2016-10-24 02:52:25 +02:00 |
|
q66
|
1a08b018c6
|
remove list_index, add parse() that takes number of items
|
2016-10-24 02:45:15 +02:00 |
|
q66
|
4d830b08ad
|
sublist fix
|
2016-10-24 02:38:52 +02:00 |
|
q66
|
61135fb79b
|
remove list_length and instead add a method
|
2016-10-24 02:33:04 +02:00 |
|
q66
|
ed106d7e11
|
remove list_explode
|
2016-10-23 19:32:24 +02:00 |
|
q66
|
b5568456a5
|
forgot some exports
|
2016-10-22 19:34:52 +02:00 |
|
q66
|
b3e31c1d25
|
use Size for linenum
|
2016-10-15 21:15:19 +02:00 |
|
q66
|
f124126b32
|
use str parse util for blockstrs
|
2016-10-12 02:05:55 +02:00 |
|
q66
|
5fe766aaeb
|
use the new util in parser
|
2016-10-11 21:23:04 +02:00 |
|
q66
|
0a88a10d99
|
add a line-counting parse_string to util
|
2016-10-11 21:15:23 +02:00 |
|
q66
|
27affb1057
|
expose string parse
|
2016-10-10 20:14:16 +02:00 |
|
q66
|
7f1c6b03a8
|
don't copy where not necessary
|
2016-10-04 20:30:13 +02:00 |
|
q66
|
c4471b71bf
|
unexpose allocator related stuff from public API
|
2016-10-03 19:23:15 +02:00 |
|
q66
|
4353bb7904
|
move allocator into shared state
|
2016-10-02 13:56:55 +02:00 |
|
q66
|
5d70e2c80f
|
simplify parser error handling (and allow for wider usage of line infos)
|
2016-09-29 21:21:21 +02:00 |
|
q66
|
cd515a4cff
|
expose word parsing into API and unify with parser
|
2016-09-29 20:57:47 +02:00 |
|
q66
|
9995fcf2e1
|
str parse cleanup
|
2016-09-26 02:27:33 +02:00 |
|
q66
|
15e692f755
|
save state within ListParser and throw errors on unfinished strings in lists
|
2016-09-25 15:26:38 +02:00 |
|
q66
|
ccf24e95f5
|
line breaking in strings without inserting newlines
|
2016-09-24 03:31:56 +02:00 |
|
q66
|
64b12b442b
|
remove a jump
|
2016-09-23 21:06:44 +02:00 |
|
q66
|
3a0cd8d378
|
exception-proof rundepth
|
2016-09-23 21:04:52 +02:00 |
|
q66
|
1cdcc438cc
|
debug fix
|
2016-09-23 20:18:01 +02:00 |
|
q66
|
de98b808ef
|
allow breaking statements into multiple lines with \
|
2016-09-23 20:04:29 +02:00 |
|
q66
|
604fd4e000
|
proper line infos at parse time
|
2016-09-22 01:44:35 +02:00 |
|
q66
|
0f10c3e303
|
safer next_char()
|
2016-09-22 01:19:29 +02:00 |
|
q66
|
1c9f9c8f9f
|
safe lexing with unterminated strings
|
2016-09-22 01:15:51 +02:00 |
|
q66
|
b3110c30b9
|
use ConstCharRange for source
|
2016-09-22 01:12:32 +02:00 |
|
q66
|
5527025d5c
|
more cleanups
|
2016-09-22 00:42:34 +02:00 |
|
q66
|
9bfb599f64
|
fixes
|
2016-09-22 00:40:33 +02:00 |
|
q66
|
73f770552c
|
clean up parser a bit
|
2016-09-22 00:36:21 +02:00 |
|
q66
|
33c6479539
|
move ListParser utils out of the way
|
2016-09-21 21:02:13 +02:00 |
|
q66
|
918ca216a3
|
recursive parseword
|
2016-09-21 20:48:56 +02:00 |
|
q66
|
1b25b64ae5
|
force strings to be finished
|
2016-09-20 22:33:02 +02:00 |
|
q66
|
43e272c7e0
|
more parser cleanups
|
2016-09-20 22:24:56 +02:00 |
|
q66
|
6f706dea86
|
properly get rid of cutstring/cutword
|
2016-09-20 22:11:40 +02:00 |
|
q66
|
814b2824e9
|
match ostd api
|
2016-09-18 19:31:19 +02:00 |
|
q66
|
b57fcd082b
|
split up statement parser a bit
|
2016-09-17 22:32:32 +02:00 |
|
q66
|
62d4afccd2
|
remove set_mstr
|
2016-09-15 23:09:52 +02:00 |
|
q66
|
1846fee1a0
|
clean up string lib
|
2016-09-15 23:04:32 +02:00 |
|
q66
|
4bbe2ca6df
|
clean up list sort
|
2016-09-15 22:45:28 +02:00 |
|
q66
|
cf21ba0a86
|
list lib cleanup
|
2016-09-15 22:34:52 +02:00 |
|
q66
|
845232605d
|
remove the out stream and re-do the var printing system
|
2016-09-15 21:59:11 +02:00 |
|
q66
|
192ce615d8
|
remove get_err/set_err
|
2016-09-15 21:27:14 +02:00 |
|
q66
|
f12197bbe5
|
throw CsErrorException where appropriate (robust error handling everywhere)
|
2016-09-15 21:15:54 +02:00 |
|
q66
|
377e9d7702
|
throw out of the VM on errors
|
2016-09-15 20:55:58 +02:00 |
|
q66
|
214ecf8ad2
|
fix multi-operand cmp bug
|
2016-09-15 19:21:06 +02:00 |
|
q66
|
c97e56d7b7
|
fix doargs segv
|
2016-09-15 04:30:37 +02:00 |
|
q66
|
38c17d1911
|
implement break/continue in bytecode
|
2016-09-15 02:12:22 +02:00 |
|
q66
|
b05bc51b14
|
reduce the instruction number by merging some instructions
|
2016-09-15 02:02:54 +02:00 |
|
q66
|
b0917ade03
|
use type inference for shorter command funcs
|
2016-09-15 00:42:19 +02:00 |
|
q66
|
c5772f0720
|
add loop control (break and continue)
|
2016-09-14 23:24:13 +02:00 |
|
q66
|
b20eb94a9e
|
alloc error stack using CsState
|
2016-09-14 21:46:47 +02:00 |
|
q66
|
e7f3213588
|
custom allocf support
|
2016-09-14 21:33:32 +02:00 |
|
q66
|
e41c3c03a1
|
use exceptions to throw errors
|
2016-09-14 00:14:21 +02:00 |
|
q66
|
4510e53916
|
use normal exception handling to handle errors C++-side, also guarantee valid pointer from alloc
|
2016-09-13 23:47:06 +02:00 |
|
q66
|
35ebb0e822
|
useful funcs to alloc resources for internal use
|
2016-09-13 18:57:02 +02:00 |
|
q66
|
f97f896017
|
throwing errors now does not allocate (besides the stack)
|
2016-09-12 21:47:29 +02:00 |
|
q66
|
ce62593840
|
move idents/identmap into internal state
|
2016-09-12 20:04:59 +02:00 |
|
q66
|
083f905913
|
explicitly pass CsState to all callbacks (might be a different thread eventually)
|
2016-09-11 23:13:39 +02:00 |
|
q66
|
dc5294bac3
|
re-done pcall without blocks
|
2016-09-10 20:44:06 +02:00 |
|
q66
|
6d2d8dda73
|
remove nodebug (useless/incompatible with pcall)
|
2016-09-10 20:10:15 +02:00 |
|
q66
|
820e7a9e9b
|
opaque callstack
|
2016-09-10 20:03:58 +02:00 |
|
q66
|
233b9dc7dd
|
get rid of noalias
|
2016-09-10 19:54:55 +02:00 |
|
q66
|
f1e1a02a11
|
panic func takes ConstCharRange
|
2016-09-10 18:49:36 +02:00 |
|
q66
|
dfe491e4b3
|
error cleanup and always include lineinfo where possible
|
2016-09-10 16:06:01 +02:00 |
|
q66
|
3e0b35e427
|
fix a subtle bug with small int->string conversions
|
2016-09-10 15:31:13 +02:00 |
|
q66
|
323c84c3d6
|
trigger actual errors from parser
|
2016-09-10 15:01:49 +02:00 |
|
q66
|
879737ce83
|
remove unnecessary func, allow formatted errors
|
2016-09-10 01:11:21 +02:00 |
|
q66
|
32c53a31a0
|
pass callstack state with errors
|
2016-09-09 19:19:50 +02:00 |
|
q66
|
f1039148b0
|
allow for arbitrarily sized CsInt/CsFloat
|
2016-09-09 17:43:23 +02:00 |
|
q66
|
9b292188c8
|
simple interface to error/pcall on cubescript side
|
2016-09-09 01:18:06 +02:00 |
|
q66
|
bb72c27d2d
|
simple error handling mechanism (will be used extensively later once it improves)
|
2016-09-09 00:42:53 +02:00 |
|
q66
|
5674375614
|
clean up the call stack in a scoped way properly always
|
2016-09-08 23:42:14 +02:00 |
|
q66
|
e3310ce74f
|
fix invalid free in code cleanup
|
2016-09-08 22:04:36 +02:00 |
|
q66
|
f3fd6892bc
|
rename p_stack to p_callstack in CsState
|
2016-09-08 21:30:08 +02:00 |
|
q66
|
cdb5a5f6f8
|
source tree reorg
|
2016-09-07 22:57:28 +02:00 |
|