40 Commits

Author SHA1 Message Date
pikastech
d8405c4f1a add doc backend
support file2doc, can draw function

use HELPER_MACRO in parser_test

fixing dostring parse

fix docstring

generate md with class and function ok

succeed to generate docstring to markdown

generate API doc ok

support --docgen and --docgen -o arg for compiler

update msc
2023-03-19 21:10:38 +08:00
pikastech
62d1d40618 remove parse_line test
move block inner parser

formatting line2Ast
2023-03-18 18:05:10 +08:00
pikastech
f39ad4077b format parser
clear the parse-test

fix time sleep on linux from `uint32_t` to `int64_t`

using parser object on pikaparer
2023-03-18 16:49:37 +08:00
lyon
83d5bd8379 support type hint `data: dict[str, DataItem] = {} 2023-03-15 22:17:26 +08:00
lyon
8d3795b179 fix complex default parse 2023-03-12 12:14:00 +08:00
lyon
02de084767 fix README details
fix multiline comment parse

add csv.py

parse csv no clashed
2023-03-12 00:24:56 +08:00
lyon
ec8405d304 support str.join()
fix VM for nano mode
2023-03-11 22:36:12 +08:00
lyon
7e8241ab15 (fix) fix multi comment err on one line 2023-03-11 00:18:12 +08:00
lyon
8ad1427f51 fix parse err, open assert on rust-msc-
add test about while data[:]

add test for list_list slice

release cross build
2023-03-08 20:54:42 +08:00
pikastech
7f5edaf090 add objCnt
ready to check where enable the mark_sweep

auto gc with threshold failed, add some assert

more assert about obj alive, dict mark not correct

add pikaGC_try, but cannot run at any time

markSweep crashed on keyword

save gcRoot for obj to debug

add debug point

add kernal_debug config to keep more debug info

use @res_<opt> to mark operation

found self reference on __iter__()

can not fix gc err around iter

remove lock, only keep the self lock

more obj info for debug

only pikaui not pass

only pikaui not pass
2023-03-08 09:35:27 +08:00
lyon
9d4aa3c38c try to fix gc about __pikaMain
fix format

can not markSweep after deinit root

support markRoot if not root

add clang-format

fix path

enable compile-commonds on to support clangd

set markSweep not default

use no_gc object for function frame

only gc for tinyobj, not pikaobj

restore add gc chain when init pikaObj

add clang-format in docker

set for default formatter to clang-format

all Object is GC_ROOT on create

only enable mark sweep to collect after OUT

markSweep after deinit __pikaMain

more mark sweep collect
2023-03-06 10:57:08 +08:00
lyon
38388625ca support mark-sweep gc
change project name and url on kernal sources

rename global Value

format name

use g_PikaObjState

add gc chain

add gc_mark()

add printCanFree

add sub locals init

try use mark-sweep to solve circle-ref

use mark sweep to collect circle ref succeed

import mark-sweep GC

config_default

update
2023-03-05 12:57:27 +08:00
pikastech
cb30579c08 update thread, fix parse err on 'not in or' 2023-03-01 15:46:22 +08:00
lyon
546daaabe0 logout syntex err line
fix parse err on complex list
2023-02-25 16:43:41 +08:00
lyon
de571a2662 add while_try_while
fix while_try_while vm err
2023-02-15 12:29:47 +08:00
lyon
dfe17ff3b9 fix splitCollect and type hint inner default 2023-02-14 20:53:27 +08:00
pikastech
b09cae79d3 raise when list out of index, fix 'for except brea' 2023-02-11 14:44:11 +08:00
lyon
612a8aa33d try to fix chain err 2023-02-09 17:16:40 +08:00
lyon
ec51e2cc11 add ui parse test 2023-02-09 15:53:15 +08:00
lyon
73e056141b fix mem leak when exit thread
support tuple args for _thread.start_new_thread()

update _thread
2023-02-01 21:35:49 +08:00
lyon
73b9effffd fix suger_multiassin inner def or class 2023-01-30 01:47:18 +08:00
lyon
6fe30eca60 format parser 2023-01-22 00:37:44 +08:00
lyon
1816e322ce fix l[x()] = b parse err 2023-01-21 23:19:36 +08:00
lyon
623547cf99 support json.loads() 2023-01-21 15:48:53 +08:00
lyon
55508d7e84 support del(x) 2022-12-23 18:11:49 +08:00
lyon
f6b97e1f7a add test for def not in 2022-12-17 15:47:08 +08:00
lyon
251c450248 support x not in y syntax 2022-12-15 01:07:27 +08:00
pikastech
a09d32d6ac format load_call_arg
use f struct

support stack check arg
2022-11-29 16:06:18 +08:00
lyon
5bb24375ae add python layer for requests to connnect url 2022-11-22 13:44:00 +08:00
lyon
7d90370d4c fix parse err for kw def
fix VM typelist overflow
2022-11-12 23:18:11 +08:00
pikastech
766c9bf7c9 add test_purec.h to support run unittest on purec 2022-10-28 18:39:50 +08:00
lyon
51f3da5961 rename tokes to tokenstream 2022-10-27 22:23:39 +08:00
lyon
123a110080 cut for pikanano 2022-10-26 20:50:37 +08:00
pikastech
ffe0565638 multiy module import ok, cmodule not ok 2022-10-20 13:57:28 +08:00
pikastech
7c6267bfd9 support multi module import parse 2022-10-20 12:55:07 +08:00
pikastech
e0aae36a1a reduce malloc 2022-10-05 20:36:00 +08:00
pikastech
060ac91f3d reduce alloc for stack push/pop 2022-10-05 01:04:37 +08:00
pikastech
b067caa7e0 add dict_update test case 2022-09-27 17:54:50 +08:00
pikastech
de4ec19b3d add issue_big_dict test 2022-09-27 16:26:33 +08:00
pikastech
75d6f97823 move test to top 2022-09-26 21:47:52 +08:00