Mypy 1.10.0+dev Documentationof legacy code There are tools for automatically adding draft annotations based on simple static analysis or on type profiles collected at runtime. Tools include MonkeyType [https://monkeytype.readthedocs not touch a Note The same will work with isinstance(x := a, float) as well. Limitations Mypy’s analysis is limited to individual symbols and it will not track relationships between symbols. For example error whenever it encounters code determined to be unreachable or redundant after performing type analysis. This can be a helpful way of detecting certain kinds of bugs in your code. For example, enabling0 码力 | 318 页 | 270.84 KB | 1 年前3
Mypy 1.8.0 Documentationof legacy code There are tools for automatically adding draft annotations based on simple static analysis or on type profiles collected at runtime. Tools include MonkeyType [https://monkeytype.readthedocs not touch a Note The same will work with isinstance(x := a, float) as well. Limitations Mypy’s analysis is limited to individual symbols and it will not track relationships between symbols. For example error whenever it encounters code determined to be unreachable or redundant after performing type analysis. This can be a helpful way of detecting certain kinds of bugs in your code. For example, enabling0 码力 | 318 页 | 271.55 KB | 1 年前3
Agda User Manual v2.6.3pred : Nat → Nat pred zero = zero pred (suc x) = x With copatterns, we can do the case analysis directly by pattern matching: open Enumeration enum-Nat : Bool → Enumeration Nat start (enum-Nat ) ]==> Executable The following sections describe these stages in more detail: Lexer Lexical analysis (aka tokenization) is the process of converting a sequence of characters (the raw *.agda file) into involves scope analysis, figuring out infix operator precedences and tidying up definitions. The abstract syntax Agda.Syntax.Abstract is the result after desugaring and scope analysis of the concrete0 码力 | 379 页 | 354.83 KB | 1 年前3
Agda User Manual v2.6.2pred : Nat → Nat pred zero = zero pred (suc x) = x With copatterns, we can do the case analysis directly by pattern matching: open Enumeration enum-Nat : Bool → Enumeration Nat start (enum-Nat ) ]==> Executable The following sections describe these stages in more detail: Lexer Lexical analysis (aka tokenization) is the process of converting a sequence of characters (the raw *.agda file) into involves scope analysis, figuring out infix operator precedences and tidying up definitions. The abstract syntax Agda.Syntax.Abstract is the result after desugaring and scope analysis of the concrete0 码力 | 348 页 | 414.11 KB | 1 年前3
Agda User Manual v2.6.2.2pred : Nat → Nat pred zero = zero pred (suc x) = x With copatterns, we can do the case analysis directly by pattern matching: open Enumeration enum-Nat : Bool → Enumeration Nat start (enum-Nat ) ]==> Executable The following sections describe these stages in more detail: Lexer Lexical analysis (aka tokenization) is the process of converting a sequence of characters (the raw *.agda file) into involves scope analysis, figuring out infix operator precedences and tidying up definitions. The abstract syntax Agda.Syntax.Abstract is the result after desugaring and scope analysis of the concrete0 码力 | 354 页 | 433.60 KB | 1 年前3
Agda User Manual v2.6.2.1pred : Nat → Nat pred zero = zero pred (suc x) = x With copatterns, we can do the case analysis directly by pattern matching: open Enumeration enum-Nat : Bool → Enumeration Nat start (enum-Nat ) ]==> Executable The following sections describe these stages in more detail: Lexer Lexical analysis (aka tokenization) is the process of converting a sequence of characters (the raw *.agda file) into involves scope analysis, figuring out infix operator precedences and tidying up definitions. The abstract syntax Agda.Syntax.Abstract is the result after desugaring and scope analysis of the concrete0 码力 | 350 页 | 416.80 KB | 1 年前3
PyArmor Documentation v6.2.7lines in top level (no identation): a = Analysis(... pyz = PYZ(... And there are 3 key parameters when creating an Analysis object, for example: a = Analysis( ... pathex=..., hiddenimports= Add extra path DISTPATH/obf/temp to pathex and hookspath After changed, it may be like this: a = Analysis(['myscript.py'], pathex=[os.path.join(DISTPATH, 'obf', 'temp'), ...], binaries=[] with ; in the command line. And patch specfile hello.spec, insert the following lines after the Analysis object. The purpose is to replace all the original scripts with obfuscated ones: src = os.path0 码力 | 159 页 | 123.91 KB | 1 年前3
PyArmor Documentation v6.3.1lines in top level (no identation): a = Analysis(... pyz = PYZ(... And there are 3 key parameters when creating an Analysis object, for example: a = Analysis( ... pathex=..., hiddenimports= Add extra path DISTPATH/obf/temp to pathex and hookspath After changed, it may be like this: a = Analysis(['myscript.py'], pathex=[os.path.join(DISTPATH, 'obf', 'temp'), ...], binaries=[] with ; in the command line. And patch specfile hello.spec, insert the following lines after the Analysis object. The purpose is to replace all the original scripts with obfuscated ones: src = os.path0 码力 | 161 页 | 124.89 KB | 1 年前3
Kotlin 1.9.10 官方文档 中文版
improvements: 逃逸分析 性能提升与错误修复 选择加入 Objective-C 异常的包装 CocoaPods 插件改进 对 Xcode 12 库的支持 逃逸分析 The escape analysis mechanism is Experimental. It may be dropped or changed at any time. Use it only for evaluation appreciate your feedback on it in YouTrack. Kotlin/Native receives a prototype of the new escape analysis mechanism. It improves the runtime performance by allocating certain objects on the stack instead program even more. The escape analysis runs in a separate compilation phase for the release builds (with the -opt compiler option). If you want to disable the escape analysis phase, use the -Xdisable-0 码力 | 3753 页 | 29.69 MB | 1 年前3
PyArmor Documentation v8.1.9obfdist/pyarmor_runtime_000000 ./ Already have foo.spec, appending runtime package to hiddenimports a = Analysis( ... hiddenimports=['pyarmor_runtime_000000'], ... ) Otherwise generating foo.spec by --hidden-import pyarmor_runtime_000000 foo.py Patching foo.spec by inserting extra code after a = Analysis a = Analysis( ... ) # Patched by PyArmor _src = r'/path/to/src' _obf = r'/path/to/src/obfdist' rft-auto-exclude This is default method. The idea is search all attribute chains in the scripts and analysis each name in the chain. If not sure it’s safe to rename, add it to exclude table, and do not touch0 码力 | 131 页 | 111.00 KB | 1 年前3
共 387 条
- 1
- 2
- 3
- 4
- 5
- 6
- 39













