How to Build Your First C++ Automated Refactoring Tool - CppCon 2023*Context) : ClangTidyCheck(Name, Context) {} void registerMatchers(ast_matchers::MatchFinder *Finder) override; void check(const ast_matchers::MatchFinder::MatchResult &Result) override; };Proprietary *Context) : ClangTidyCheck(Name, Context) {} void registerMatchers(ast_matchers::MatchFinder *Finder) override; void check(const ast_matchers::MatchFinder::MatchResult &Result) override; };Proprietary *Context) : ClangTidyCheck(Name, Context) {} void registerMatchers(ast_matchers::MatchFinder *Finder) override; void check(const ast_matchers::MatchFinder::MatchResult &Result) override; };Compilation0 码力 | 83 页 | 6.03 MB | 6 月前3
Just-In-Time Compilation: The Next Big Thing[Future] Abstract Syntax Tree (AST) node 5 . 10READ–EVAL–PRINT LOOP (REPL) READ–EVAL–PRINT LOOP (REPL) using meta = std::string; // [Future] Abstract Syntax Tree (AST) node P1717: COMPILE TIME METAPROGRAMMING LOOP (REPL) READ–EVAL–PRINT LOOP (REPL) using meta = std::string; // [Future] Abstract Syntax Tree (AST) node P1717: COMPILE TIME METAPROGRAMMING IN C++ P1717: COMPILE TIME METAPROGRAMMING IN C++ std::vector LOOP (REPL) READ–EVAL–PRINT LOOP (REPL) using meta = std::string; // [Future] Abstract Syntax Tree (AST) node P1717: COMPILE TIME METAPROGRAMMING IN C++ P1717: COMPILE TIME METAPROGRAMMING IN C++ std::vector0 码力 | 222 页 | 5.45 MB | 6 月前3
Back to Basics: Move SemanticsSemantics dala segment | CC SY | X| | 玫 class cust { Private, std: :string firsl std: :string 1ast int val7 public Cust(const std: :string& 王,const std::stringE 1,int : SirstfE) ,lastf1),valfvl data segment: class cust { Private, veoe寺 td: :string first std: :string 1ast int val public Cust(const std: :string& 上,const std : SirstfE) ,lastf1),valfvl { ) string& 1,int itinto cv std: :string firstf"oilo) 7 std: :string last{"Cook') 7 ev-emplace_back (std: :movetEirst),1ast, 39) ; create new customerinside cv GE0 码力 | 23 页 | 1020.10 KB | 6 月前3
2020: The Year of Sanitizers?Checks can plug into the analysis on the preprocessor level using PPCallbacks or on the AST level using AST Matchers clang-tidy28 2020 Victor Ciura | @ciura_victor - 2020: The Year of Sanitizers Checks can plug into the analysis on the preprocessor level using PPCallbacks or on the AST level using AST Matchers Checks can report issues in a similar way to how Clang diagnostics work. A fix-it0 码力 | 135 页 | 27.77 MB | 6 月前3
Express Your Expectations: A Fast, Compliant JSON Pull Parser for Writing Robust Applications2023-10-03 87What is a parser? A parser takes an input range and produces a sequence of parse events. DOM/AST: Collect parse events in a container. Jonathan Müller — @foonathan Express your expectations CppCon 2023-10-03 87What is a parser? A parser takes an input range and produces a sequence of parse events. DOM/AST: Collect parse events in a container. SAX/Push parser: Invoke a callback for each event. Jonathan 2023-10-03 87What is a parser? A parser takes an input range and produces a sequence of parse events. DOM/AST: Collect parse events in a container. SAX/Push parser: Invoke a callback for each event. Pull parser:0 码力 | 143 页 | 736.91 KB | 6 月前3
C++高性能并行编程与优化 - 课件 - 17 由浅入深学习 map 容器?因为 Python 作为老牌胶水语言,为了 用户体验做了些特殊处理。他的 ast 模块能自动识别 [] 位于等号左侧还是右侧,分成两个独立的函数 。 • 如果等号在左侧,则被他的 ast 模块视为写入上下文( store context ),翻译成 __setitem__ 。 • 如果等号在右侧,则被他的 ast 模块视为读取上下文( load context ),翻译成 __getitem__0 码力 | 90 页 | 8.76 MB | 1 年前3
C++20 Modules: The Packaging and Binary Redistribution Storyle.cpp:1:1: fatal error: malformed or corrupted AST file: 'could not find file '/root/foobarfoobar/p/b/fmt4ff89414aff58/b/src/fmt.cc' referenced by AST file '/root/.conan2/p/fmt7d4cc28edd661/p/bmi/fmt0 码力 | 76 页 | 2.09 MB | 6 月前3
LLVM's Realtime Safety Revolution: Tools for Modern Mission Critical SystemsIR Assembly Code Object Code Executable Other Libraries System Library C++ Runtime Clang AST RTSan Passes RTSan Runtime C++ Developer Preprocessor Translation Unit RTSan CodeGenCustomization“system IR Assembly Code Object Code Executable Other Libraries System Library C++ Runtime Clang AST RTsan Pass RTSan Runtime C++ Developer Preprocessor Translation Unit RTsan CodeGenBy detecting0 码力 | 153 页 | 1.38 MB | 6 月前3
Expressive Compile-time Parserscomplex | dsl::error; }(); static constexpr auto value = lexy::construct<ast::json_value>; };Lexy - Playground Visualize and try parsers in an online playgroundLexy - Performance my_macro)] struct MyStruct;Rust Macros – Overview Macro rules matches a syntax pattern and produces an AST macro_rules! vec { ( $( $x:expr ),* ) => { { let mut temp_vec = Vec::new(); $( temp_vec 0 码力 | 134 页 | 1.73 MB | 6 月前3
Symbolic Calculus for High-Performance Computing: From Scratch Using C++23= 2.5, t = 1.6, phi = 0) << std :: endl; 15 } Wait what, that’s all? Building and executing the AST is not that complicated once all the pieces are there. CppCon - Vincent Reverdy - October 4th, 2023 rule-based rewriting High-performance Since formulas have the entire information on the mathematical AST, it’s possible to generate different tasks for calculations (large matrix multiplications on GPUs,0 码力 | 70 页 | 1.80 MB | 6 月前3
共 72 条
- 1
- 2
- 3
- 4
- 5
- 6
- 8
相关搜索词
HowtoBuildYourFirstC++AutomatedRefactoringToolCppCon2023JustInTimeCompilationTheNextBigThingBackBasicsMoveSemantics2020YearofSanitizersExpressExpectationsFastCompliantJSONPullParserforWritingRobustApplications高性性能高性能并行编程优化课件1720ModulesPackagingandBinaryRedistributionStoryLLVMRealtimeSafetyRevolutionToolsModernMissionCriticalSystemsExpressiveCompiletimeParsersSymbolicCalculusHighPerformanceComputingFromScratchUsing23













