Daniel Kolesa
|
666f487a92
|
don't need full bcode_ref/unref in this case
|
2021-03-21 18:53:22 +01:00 |
|
Daniel Kolesa
|
3f866baccb
|
strict reference counting for bytecode references
|
2021-03-21 18:45:59 +01:00 |
|
Daniel Kolesa
|
a5b0ce5d72
|
drop cs_cmd_internal
|
2021-03-21 03:07:11 +01:00 |
|
Daniel Kolesa
|
436098cc38
|
drop the whole cs_alias_internal nonsense
|
2021-03-21 02:59:37 +01:00 |
|
Daniel Kolesa
|
f8eb07ee2b
|
hide implementation details of idents
|
2021-03-21 02:47:02 +01:00 |
|
Daniel Kolesa
|
be71d3a4b9
|
rework allocator errors and error message storage buffer
|
2021-03-20 21:06:26 +01:00 |
|
Daniel Kolesa
|
d7c93fa8b9
|
make format errors internal errors
|
2021-03-20 19:54:46 +01:00 |
|
Daniel Kolesa
|
82d366366e
|
drop libostd requirement entirely
|
2021-03-20 08:23:51 +01:00 |
|
Daniel Kolesa
|
68669413cc
|
get rid of most remaining ostd usage
|
2021-03-20 06:52:10 +01:00 |
|
Daniel Kolesa
|
10b2a81cec
|
redo (un)escape_string around output iterators
|
2021-03-20 06:18:31 +01:00 |
|
Daniel Kolesa
|
320fdbaefd
|
use c++20 std::span
|
2021-03-20 05:41:25 +01:00 |
|
Daniel Kolesa
|
4068c96ec2
|
remove the auxiliary run_<type> APIs, they are fairly useless now
|
2021-03-20 05:14:14 +01:00 |
|
Daniel Kolesa
|
d626fba537
|
remove file exec api
this is something each thing will want to do on its own...
but add a new set of calls that take code source for debug info
|
2021-03-20 05:10:19 +01:00 |
|
Daniel Kolesa
|
5648c1a757
|
use string_view everywhere that returns or takes a string
|
2021-03-20 04:10:27 +01:00 |
|
Daniel Kolesa
|
5a4cccf194
|
move strref impl to cs_util
|
2021-03-19 02:28:30 +01:00 |
|
Daniel Kolesa
|
26bcc43578
|
get rid of tvals_concat in favor of simpler api
|
2021-03-19 00:31:18 +01:00 |
|
Daniel Kolesa
|
64d9c0e749
|
make intstr/floatstr internal to cs_value
|
2021-03-19 00:12:47 +01:00 |
|
Daniel Kolesa
|
9d0494a9da
|
replace list_parser with a simpler api
|
2021-03-18 23:53:16 +01:00 |
|
Daniel Kolesa
|
704f9217f7
|
unify enum style
|
2021-03-18 20:55:14 +01:00 |
|
Daniel Kolesa
|
7023e09049
|
don't use memcpy for non-trivial structures
|
2021-03-18 01:37:38 +01:00 |
|
Daniel Kolesa
|
6ed9ae1235
|
get rid of standard i/o inside vm
|
2021-03-18 00:03:30 +01:00 |
|
Daniel Kolesa
|
7eaf3679a4
|
get rid of cs_value::get_strr
|
2021-03-17 21:59:37 +01:00 |
|
Daniel Kolesa
|
2f5bb697eb
|
use string refs more instead of allocated strings
|
2021-03-17 21:46:37 +01:00 |
|
Daniel Kolesa
|
e3cff816c7
|
reduce copying strings around (ensure refs are not erased)
|
2021-03-17 21:00:19 +01:00 |
|
Daniel Kolesa
|
64130a12bf
|
remove handling of constants from codegen, bytecode and cs_value
also drop move semantics on cs_value
|
2021-03-17 20:41:08 +01:00 |
|
Daniel Kolesa
|
c004db42c6
|
refactor cs_value and related structures to contain state
this will allow us to intern strings inside cs_value
|
2021-03-17 01:26:30 +01:00 |
|
Daniel Kolesa
|
dcae5b30b2
|
initial implementation of unique/interned string manager
|
2021-03-16 00:45:09 +01:00 |
|
q66
|
8805594bc2
|
style fixes
|
2018-04-27 23:53:55 +02:00 |
|
q66
|
d12e7f67ee
|
gcc warning fixes
|
2017-11-06 01:07:53 +01:00 |
|
q66
|
efdc82324e
|
fix includes
|
2017-06-20 21:21:39 +02:00 |
|
q66
|
f0f6dc437f
|
fix build
|
2017-04-17 17:13:14 +02:00 |
|
q66
|
73d1b142d1
|
fixes
|
2017-03-31 03:34:09 +02:00 |
|
q66
|
5c2c441925
|
fix build
|
2017-02-19 16:44:16 +01:00 |
|
q66
|
73699bd1cf
|
use std::min, max, clamp
|
2017-02-18 17:49:01 +01:00 |
|
q66
|
e87b1b566c
|
use appender_range directly
|
2017-02-18 17:28:43 +01:00 |
|
q66
|
14436d6aa0
|
fix build
|
2017-02-16 20:51:03 +01:00 |
|
q66
|
8343979e03
|
fix build after style update
|
2017-02-16 19:07:22 +01:00 |
|
q66
|
74edc2821d
|
fix build
|
2017-02-15 19:41:12 +01:00 |
|
q66
|
9b4ea3e765
|
replace removed PointerRange
|
2017-02-14 17:41:15 +01:00 |
|
q66
|
41eb8b211f
|
begin naming scheme rework
|
2017-02-13 18:11:19 +01:00 |
|
q66
|
140ccf08c6
|
add cs_internal_error exception and use it for unrecoverable unlikely errors
|
2017-02-12 22:52:43 +01:00 |
|
q66
|
6e67ce8574
|
clean up pointerrange constructor
|
2017-02-09 22:54:09 +01:00 |
|
q66
|
fda734a868
|
ostd fixes
|
2017-02-09 21:27:57 +01:00 |
|
q66
|
2536179500
|
use standard type traits
|
2017-02-09 20:59:14 +01:00 |
|
q66
|
0dd69fedea
|
remove memory.hh includes
|
2017-02-01 20:20:57 +01:00 |
|
q66
|
58bf658409
|
update according to ostd
|
2017-01-30 19:38:11 +01:00 |
|
q66
|
8dc423dcaa
|
update according to ostd
|
2017-01-30 01:18:55 +01:00 |
|
q66
|
3bdb0c4d7b
|
update according to ostd
|
2017-01-29 15:17:43 +01:00 |
|
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
|
79b1a031ca
|
use new ostd features
|
2016-11-15 22:54:05 +01:00 |
|
q66
|
c4471b71bf
|
unexpose allocator related stuff from public API
|
2016-10-03 19:23:15 +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
|
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
|
604fd4e000
|
proper line infos at parse time
|
2016-09-22 01:44:35 +02:00 |
|
q66
|
814b2824e9
|
match ostd api
|
2016-09-18 19:31:19 +02:00 |
|
q66
|
845232605d
|
remove the out stream and re-do the var printing system
|
2016-09-15 21:59:11 +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
|
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
|
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
|
e41c3c03a1
|
use exceptions to throw errors
|
2016-09-14 00:14:21 +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
|
233b9dc7dd
|
get rid of noalias
|
2016-09-10 19:54:55 +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
|
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 |
|