修改python語法注意

fqbqrr發表於2020-11-20

參考地址
神算(py)的語法
替換UNICODE_..._,避免衝突.避免預設msvcrt
libucrt與微軟的衝突了.要改,主要是靜態lib/動態lib之間的問題.將libucrt.lib暫時去掉.
24.1.摘要
改變神算的語法不僅僅是改Grammar/神算.gram.
注意:這些說明適用於神算3.9及更高版本.早期版本不一樣.您不應更改早期神算版本語法,但,可使用GitHub追蹤devguide中此檔案的早期版本.
24.2.清單
注意:有時,不管用.放棄之前,請先試試make clean.
Grammar/神算.gram:語法,帶構建AST節點的操作.修改後,執行make regen-pegen來重生成Parser/parser..c(跑神算的解析器生成器Tools/peg_generator).
Grammar/Tokens新增新令牌型別.改變後,跑make regen-token來生成Include/token.h,Parser/token.c, Lib/token.py和Doc/library/token-list.inc,改了python.gram和Tokens的話,先跑make regen-token,然後再跑make regen-pegen.
要改Parser/神算.asdl來匹配語法.然後執行make regen-ast來生成Include/Python-ast.h和Python/Python-ast.c.
Parser/tokenizer.c包含令牌程式碼.如這裡可加新註釋或串型別.
要改Python/ast.c來使語法所需的AST物件有效.
要改Python/ast_unparse.c來使解析AST物件有效.
Lib/ast.py要改_Unparser來匹配新AST節點.
要改Doc/library/ast.rst以匹配新AST節點.
測試新改的語法test_grammar.py.
可能要調整庫模組pyclbr.
要改令牌生成器Lib/tokenize.py,注意改Doc/reference/中的文件.

相關文章