pikastech
bb54c2e719
support setattr
and getattr
...
run tests() in cases is ok
2022-08-11 17:39:38 +08:00
pikastech
ac97532a7a
support exec()
builtin
2022-08-10 12:07:32 +08:00
pikastech
e0eee73209
support dir()
builtin, fix str disp in list...
2022-08-10 11:49:54 +08:00
pikastech
57d89e256f
support try_expect for open
2022-08-06 17:59:32 +08:00
pikastech
4899884747
use u32 for mem info
...
add speed by using register in for-loop
fix ci_benchmark
2022-07-31 11:14:49 +08:00
pikastech
a40f68e9b2
use more inline in PikaVM
...
use static refcnt in PikaObj
use static _clsptr
2022-07-30 21:26:46 +08:00
pikastech
117096a764
correct the sort of fun dec in .h
...
fix .h and .pyi
update PikaMath
update pika_cjson
2022-07-30 18:56:20 +08:00
pikastech
1d7bcf2a39
use __getitem__ __setitem__ instead of __get__ __set__
2022-07-29 23:40:16 +08:00
pikastech
de10086338
add arg_new<T> api
...
update version
2022-07-20 10:34:50 +08:00
pikastech
f019b5ca79
hex(0) return '0x00'
2022-07-15 10:47:24 +08:00
李昂
45a07c5773
!58 Support read() builtin
...
* support read(-1)
* add example
2022-07-15 02:06:23 +00:00
李昂
e7e501ab73
!56 Support tuple literal
...
* Merge branch 'master' into tuple
* sue SyntaxItemList
* cut the parser
* update preCompiler
* not use tiny_obj in stdlib
* use BUILTIN_STRUCT_ENABLE for list, dict, tuple
* add PikaStdData.Tuple()
* !51 Support bind .pyi from other *.py expect main.py
* fix overflow issue
* fix overflow issue and simplification code
* update PikaCV_Image.c.
2022-07-14 08:36:02 +00:00
李昂
660a97110f
!47 not use suger to parse slice
...
* use __vm_[get/slice] for sysobj
* not use suger in slice
* parser for new slice is ok
* add SLC ins
2022-07-11 06:42:12 +00:00
李昂
76db2494a5
!46 try to support [][], not ok yeat
...
* fix typo in test
* Merge branch 'master' into slice
* adding slice to parser from suger
2022-07-11 03:14:14 +00:00
lyon
1bd3b367f4
fix str(None) return other string
2022-07-06 15:13:23 +08:00
李昂
4a943b479c
!41 Support chain invoke like < String('test').split() >
...
* support chain invoke ok
* add test for S(S.replace()).replace()
* parse to RUN .split
* try to support chain invoke, not ok
* can devide a chain
2022-07-05 06:23:49 +00:00
pikastech
f51c9a05d2
update stdlib, fix ac5
2022-07-01 23:41:32 +08:00
Lyon
a9370691d2
fix image size overflow for g030
2022-07-01 22:55:29 +08:00
pikastech
8aaf317689
fix print normal object
2022-06-30 17:33:06 +08:00
pikastech
944503cd23
support return val from type()
2022-06-30 16:10:38 +08:00
pikastech
865290df74
support len() for object and __len__().
...
* list, dict, dict_keys is ok
2022-06-24 18:18:06 +08:00
pikastech
3e371e9e57
fix a[1] = 1 not work inner function()
2022-06-24 16:08:27 +08:00
李昂
e6a33c058e
!34 Support __str__() for PikaStdData.List(),PikaStdData.Dict(),PikaStdData.dict_keys(),
...
* print list as '[x,x,x]'
* support __str__ for Dict
* support __str__ for dict_keys()
2022-06-24 03:30:56 +00:00
pikastech
77f1879180
add id() built-in
2022-06-14 12:06:56 +08:00
李昂
6acc0f9ecd
!25 support format output for print()
...
* test for format with tuple is ok
* 'format'%var is ok (tuple var is not ok)
* rename _cformat to cformat()
* optimize the memory usage of format_list
* add string-test.cpp
* cformat() is ok
* fix variable par load issue
* use test_common.h
* use test_common to simplify the gtest case
* Merge branch 'master' into dev
* fix float->double for bytecodegen
* update to /package
* Use double in C for float in python
2022-06-14 03:20:17 +00:00
李昂
5148412411
!24 support double in C Module
...
* Merge branch 'master' into dev
* fix float->double for bytecodegen
* update to /package
* Use double in C for float in python
2022-06-13 10:02:59 +00:00
李昂
b02672b130
!21 Support variable pars for print()
...
* update pre-compiler
* test passed for variable pars of print()
* variable pars is tested ok for print()
* skip arg_num check for variable
* support *val in the preCompiler
* add file
* Merge branch 'dev' of https://gitee.com/lyon1998/pikascript into dev
* fix warning
* both update ByteCodeGen
* use super instead of parent
* create PikaList C list struct
* use args inner the PikaStdData.List()
* use PikaDict in PikaStdData.Dict()
* support dict in c
* support dict in c
* clean Tinyobj
2022-06-11 14:56:51 +00:00
pikastech
a87da14c7d
move print() and print_no_end from BaseObj to SysObj
2022-06-10 12:04:06 +08:00
pikastech
2afaea6e7c
support str() from bytes to string
2022-06-10 11:34:46 +08:00
pikastech
f0b5be9c92
support len() for bytes
2022-06-10 10:55:48 +08:00
pikastech
2c17be4191
__slice__ equal to __get__ when SLICE_ENABLE off
2022-06-08 10:27:23 +08:00
pikastech
0daf46c269
fix for_loop runError in module
2022-06-08 10:00:54 +08:00
pikastech
30209aff77
support return Object in CModule
2022-06-06 09:13:27 +08:00
lyon
19a0b52ea3
use argType_isObject in not importent place
2022-06-01 14:39:59 +08:00
lyon
a97d6f3f76
support __str__ for String(), find mem leak when print(String('test'))
2022-06-01 11:46:59 +08:00
lyon
c0a925d42d
support [:i] and [i:] for str and bytes
2022-05-31 20:17:26 +08:00
lyon
0a48afb444
cutoff the __slice__ fn in SysObj
2022-05-30 16:38:58 +08:00
lyon
d96d01d8a9
support slice for str and bytes, tested
2022-05-30 14:35:44 +08:00
lyon
a41d206509
test slice for str
2022-05-30 14:22:19 +08:00
lyon
c0581b4408
support nagtive index for str and bytes
2022-05-30 14:01:59 +08:00
lyon
3c7b765a3f
support int() for bytes
2022-05-27 10:29:57 +08:00
lyon
ffe8e85db9
use __slice__ to call __get__ indirectly
2022-05-26 17:03:58 +08:00
lyon
6b63c13bef
support bytes() built-in
2022-05-26 15:46:34 +08:00
lyon
d3fd9512b4
support and tested char() and ord() builtin-fun
2022-05-25 15:53:39 +08:00
lyon
09bb50a98c
support hex() and tested ok
2022-05-25 15:42:25 +08:00
lyon
db45bd9964
str(obj) from __str__ is test ok
2022-05-25 13:57:02 +08:00
lyon
ee3a2c8f53
support [] index for bytes
2022-05-21 19:23:34 +08:00
lyon
876ea81576
support type(b'test') -> <class 'bytes'>
2022-04-28 16:04:14 +08:00
lyon
5cbe98d212
keep both meta obj and direct obj, meta obj cannot init with arg
2022-04-28 00:42:06 +08:00
lyon
ceb8de7c81
format arg_new[]Obj api
2022-04-28 00:29:32 +08:00