K. Lange
7d409ebcbb
Format spec support in f-strings
2022-07-10 16:11:12 +09:00
K. Lange
9230d4fee1
int.__format__, long.__format__ with as close to Python semantics as I can be bothered
2022-07-10 16:10:40 +09:00
K. Lange
d8a1861c23
format() and object.__format__()
2022-07-10 16:10:07 +09:00
K. Lange
f1c0af711e
Cache __format__ method
2022-07-10 16:09:32 +09:00
K. Lange
f24cb336e7
Fixup SET_GLOBAL to use IfExists, no need for delete
2022-07-10 13:19:15 +09:00
K. Lange
9b5ce15bf7
Implement Python's identifier mangling
2022-07-10 13:13:27 +09:00
K. Lange
d00bdda104
Strings, too...
2022-07-09 21:55:08 +09:00
K. Lange
17a6aaf8d6
Fix parse error when 'if' ends on a class
2022-07-09 21:10:36 +09:00
K. Lange
95c6f17a21
Remove accidentally committed test file
2022-07-09 20:56:07 +09:00
K. Lange
6fa951a0bb
Subclass cleanup must use exact key match to not call VM during GC sweep
2022-07-09 18:50:31 +09:00
K. Lange
ff23dbbc14
Update docs
2022-07-09 08:12:31 +09:00
K. Lange
c10a457242
Rudimentary __setattr__ support
2022-07-07 14:54:30 +09:00
K. Lange
cf98b93836
dict.__eq__
2022-07-06 22:18:37 +09:00
K. Lange
ae99ce1058
set comparisons
2022-07-06 22:14:28 +09:00
K. Lange
ff19144201
Even more correct sequence comparisons...
2022-07-06 22:07:42 +09:00
K. Lange
6d59ddb4cd
'inline' on krk_valuesEqual does nothing
2022-07-06 21:53:55 +09:00
K. Lange
c9b989cb56
Add test for __set_name__
2022-07-06 21:43:15 +09:00
K. Lange
2d8de139b3
More fixes to tuple comparisons; port to lists
2022-07-06 21:25:59 +09:00
K. Lange
d6018001ba
list and tuple stuff should use SameOrEqual not just Equal
2022-07-06 20:18:19 +09:00
K. Lange
92d8d0e200
Cleanup, simplify equality operation
2022-07-06 20:16:20 +09:00
K. Lange
17772c74ef
unary + (__pos__)
2022-07-06 15:37:38 +09:00
K. Lange
ed52b72ae8
operator @ (__matmul__)
2022-07-06 15:37:38 +09:00
K. Lange
855d342a68
Support __set_name__
2022-07-06 15:37:38 +09:00
K. Lange
388a649ec9
Perform identity checking before equality checking for table keys
2022-07-06 15:37:35 +09:00
K. Lange
c49a12effc
Highlight krk sources as Python on gitlab mirror
2022-07-06 10:11:59 +09:00
K. Lange
af18b205a9
Better long printing
2022-07-06 07:04:57 +09:00
K. Lange
afc522a341
Replace KRK_METHOD, KRK_FUNC with nicer macros
2022-07-05 22:42:29 +09:00
K. Lange
25d5f88454
Clean up a bunch of potential type checking issues
2022-07-05 19:19:46 +09:00
K. Lange
7ff7c26fbd
Standardize =,is,~,- a bit more; ELF 'protected' on operator functions
2022-07-05 18:49:29 +09:00
K. Lange
e95cc5d10b
Break out collection builder opcodes into inlinable function
2022-07-05 18:48:20 +09:00
K. Lange
92378917b0
No reason for that callgrind stuff to be a big macro
2022-07-05 17:43:44 +09:00
K. Lange
ee1420cd35
Use krk_unpackIterable (and a temporary tuple) in OP_UNPACK
2022-07-05 14:45:47 +09:00
K. Lange
eabe6f9ecf
Cleanup some exposed string functions we don't need
2022-07-05 13:30:06 +09:00
K. Lange
3cda8cf0da
Replace macro unpackIterableFast with callback-driven function
2022-07-05 13:24:37 +09:00
K. Lange
ebe1b0276e
Remove tupleOf builtin
2022-07-05 11:43:11 +09:00
K. Lange
19927ea13f
Stop using tupleOf in codec tools
2022-07-05 11:42:57 +09:00
K. Lange
a429aa93dd
tuple.__init__ should not call tupleOf
2022-07-05 11:42:25 +09:00
K. Lange
31509bcc3c
Remove setOf, listOf, dictOf builtins (all unused)
2022-07-05 11:42:04 +09:00
K. Lange
87f6c316bd
tuple.__add__(tuple)
2022-07-05 11:40:21 +09:00
K. Lange
8314e4c35d
'zip' as a class
2022-07-05 11:39:59 +09:00
K. Lange
5d77dec70e
Set rpath in tools
2022-07-04 07:50:53 +09:00
K. Lange
fe4fd1af78
Retool more things to use utility macros
2022-07-03 23:54:30 +09:00
K. Lange
0ae051b65d
Rewrite Exceptions using typechecking method macros
2022-07-03 23:20:21 +09:00
K. Lange
f86887b40a
Elide : for zero-length Exception.__str__()
2022-07-03 23:20:00 +09:00
K. Lange
de0af11361
KeyError should repr instead of print because Python does that
2022-07-03 21:20:55 +09:00
K. Lange
8b6952dd04
Include module name when printing exception name
2022-07-03 21:20:36 +09:00
K. Lange
f38a451f19
Attach and build upon partial tracebacks
...
If an exception is raised within a 'try', attach a traceback only up
until that 'try'. If a re-raised exception has a traceback already,
attach the new traceback "above" the existing one.
2022-07-03 20:39:07 +09:00
K. Lange
85ad910f23
Attach __cause__, __context__ to exceptions; support 'raise ... from ...'
2022-07-03 19:50:00 +09:00
K. Lange
2d2691710c
Exceptions with no argument should not set it to 'None'
2022-07-03 19:38:04 +09:00
K. Lange
3167888187
Restore frame pointer correctly on exit due to inner exception
2022-07-03 18:45:07 +09:00