自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(68)
  • 资源 (30)
  • 收藏
  • 关注

原创 函数拼写错误检查

祖传代码中函数按CamelCase,snake_case,混合模式命名,存在大量相同概念命名不统一,函数功能重复,单词拼写错误等问题,这里使用Python脚本先将函数拆分问单词,然后检查函数拼写,梳理拼写错误和相同概念的多个不同命名问题。结果输出到文件:sm/tool/SpellCheck/Function/spell-check-result.txt,允许的命名添加到sm/tool/SpellCheck/Function/ignore_list.txt备案。

2024-10-12 16:55:36 169

原创 tree-sitter自定义解析器转为wasm

tree-sitter 支持生成 WebAssembly 形式的解析器。你可以通过 tree-sitter-cli 将解析器生成为 WASM 代码。假设你已经有一个自定义语言解析器在 my_language 目录中。使用生成 WASM 文件和 JavaScript API。将生成的 .wasm 和 .js 文件放入你的 Web 项目。在 HTML 或 JavaScript 项目中通过 import 加载并使用解析器。运行一个简单的 Web 服务器以查看解析结果。

2024-09-25 19:15:30 859

原创 Rust调用tree-sitter支持自定义语言解析

首先,你需要创建一个 tree-sitter 语言定义。在 grammar.js 中定义你的语言语法。rules: {// 规则定义),'=',),});接下来,你需要在你的 Rust 项目中使用这个自定义语言解析器。

2024-09-25 10:44:35 660

原创 Rust调用tree-sitter解析C语言

通过以上步骤,你应该能够解决链接过程中找不到 tree_sitter_c 函数的问题。如果在执行这些步骤后仍然遇到问题,请提供具体的错误信息或描述,以便进一步诊断问题。

2024-09-24 20:15:08 1167

原创 开源vscode AI插件

1、twinny - AI Code Completion and Chat

2024-09-04 22:31:24 324

原创 gcc -finstrument-functions输出程序运行函数记录

gcc -finstrument-functions输出程序运行函数记录

2024-08-04 01:48:36 338

原创 TypeScript+Jest测试

typescript+jest搭建测试工程

2024-03-23 10:37:47 361

原创 vscode语言插件开发资料

vscode插件开发

2022-09-12 20:59:48 238 1

原创 5GC核心网开源实现:

5GC核心网开源实现:oai-cn,http://www.openairinterface.org/free5gc,open5gs,https://github.com/open5gs www.openupf.nethttps://gitee.com/openupf/openupfhttps://github.com/5GOpenUPFhttp://freepcrf.com/iots/

2021-03-08 20:35:17 3499 2

原创 VS Code调试TypeScript项目

1 安装VS Codehttps://code.visualstudio.com/安装VS Code插件:JavaScript and TypeScript NightlyTypeScript Extension PackVisual Studio IntelliCodeProject ManagerMaterial Icon Theme2 安装Node.js为了方便后续VS Code插件开发,这里选择安装与当前VS Code使得Node.js版本(Help->About):V

2021-01-01 10:42:11 7516 2

原创 afl-fuzz资源汇总

初探AFL-FuzzFL漏洞挖掘技术漫谈(一):用AFL开始你的第一次FuzzingAFL漏洞挖掘技术漫谈(二):Fuzz结果分析和代码覆盖率AFL++实战(一)-黑盒测试FFmpeg使用AFL进行fuzz如何Fuzz ELF文件中的任意函数如何使用AFL进行一次完整的fuzz过程使用Afl-fuzz (American Fuzzy Lop) 进行Fuzzing测试...

2020-11-28 00:04:16 1471

原创 Trace Event Format

https://docs.google.com/document/d/1CvAClvFfyA5R-PhYUmn5OOQtYMH4h6I0nSsKchNAySU/edithttps://www.gamasutra.com/view/news/176420/Indepth_Using_Chrometracing_to_view_your_inline_profiling_data.phphttps://aras-p.info/blog/2017/01/23/Chrome-Tracing-as-Profil.

2020-10-18 21:40:33 561

原创 -ftime-trace(clang)

1 clang/llvm编译器设置设置clang编译器:export CC=/usr/bin/clangexport CXX=/usr/bin/clang++设置clang编译器-ftime-trace参数:set(CMAKE_C_COMPILER "/usr/bin/clang")set(CMAKE_CXX_COMPILER "/usr/bin/clang++")set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ftim

2020-10-18 17:16:32 3610 2

翻译 -ftime-report/-ftime-report-details(gcc/clang)

gcc/clang都支持-ftime-report,可以打印编译过程每个阶段的时间摘要信息,但是打印信息不直观,更像是给编译器开发人员自己使用的工具,而不是给编译器用户使用的工具。1 demo source code#include <vector>#include <string>#include <unordered_map>#include <regex>int main(){ std::vector<int> v(10

2020-10-18 12:01:37 1279 1

原创 ANTLR使用入门

IDEA配置antlr4环境和使用快速上手ANTLR–在Windows环境下解析计算器指令语法Antlr4入门(一)IDEA中Antlr的安装与使用

2020-10-02 11:59:52 453

原创 clang资料汇总

https://blog.csdn.net/dashuniuniu/article/details/50773316https://www.jianshu.com/p/7e2c65dcf632https://releases.llvm.org/10.0.0/tools/clang/docs/index.htmlhttps://www.zhihu.com/question/31425289https://segmentfault.com/a/1190000021343181https://segm.

2020-07-05 20:47:39 226

原创 vim插件安装

let g:NERDTreeDirArrowExpandable = '▸'let g:NERDTreeDirArrowCollapsible = '▾'let NERDTreeIgnore = ['\.pyc$']let g:NERDTreeChDirMode = 2 "Change current folder as rootlet NERDTreeMinimalUI = 1let NERDTreeDirArrows = 1

2020-06-26 20:17:51 276

原创 ubuntu14.04安装llvm/clang 9.0预编译版本

1 ubuntu14.04安装llvm/clang 9.0预编译版本下载llvm/clang prebuild:https://releases.llvm.org/download.html#9.0.0https://download.csdn.net/download/wwchao2012/12391517xz -d clang+llvm-9.0.0-x86_64-linux-gnu-u...

2020-05-06 19:34:19 2138

原创 perf资料整理

http://www.brendangregg.com/perf.htmlhttps://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/tools/perf/Documentation/examples.txthttps://www.cnblogs.com/arnoldlu/p/6241297.htmlhttp...

2020-05-03 22:20:53 294

翻译 combine_traces.py

#!/usr/bin/env python3"""Combine JSON from multiple -ftime-traces into one.Run with (e.g.): python combine_traces.py foo.json bar.json.""" import jsonimport sys if __name__ == '__main__':...

2020-05-03 11:51:29 179

原创 ClangBuildAnalyzer(-ftime-trace)

1 编译/安装ClangBuildAnalyzerclang参数-ftime-trace需要与ClangBuildAnalyzer工具一起工作,输出每个文件的编译时长统计,首先下载ClangBuildAnalyzer:git clone https://github.com/aras-p/ClangBuildAnalyzer.gitorgit clone https://gitee.com...

2020-05-03 00:00:34 2122

原创 include-what-you-use消除头文件重复包含

安装https://github.com/include-what-you-use/include-what-you-use使用https://blog.csdn.net/u013597671/article/details/70173849

2020-05-02 12:53:43 785

原创 ubuntu18.04编译安装clang/llvm

https://www.cnblogs.com/whuwzp/p/ubuntu_vim_2.htmlhttps://www.jianshu.com/p/f071f2486bachttps://www.jianshu.com/p/1590ab2bb444https://releases.llvm.org/download.html#10.0.0

2020-05-02 12:05:27 9298 1

原创 valgrind抑制误报

1 指定多个抑制文件当valgrind检测出来的错误位于系统库(glibc)、第三方库,或者检测出来的错误不方便修改,但又不想每次都输出到错误列表中,可以使用自定义抑制文件抑制错误报告。抑制文件是文本文件,文件名无要求,一般定义为*.supp。需要抑制的错误较多时,可以用多个抑制文件,每个抑制文件都需要设置为--suppressions=<filename>.supp,如下:val...

2020-04-19 21:52:54 1141

原创 使用valgrind的开源项目

wiresharkpythonpostgresqlmariadbmysqlnodejsllvmredisthrifflex&bisonopencv

2020-04-19 20:28:37 185

原创 gcc编译选项

-Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Werror=pointer-to-int-cast -Werror=int-to-pointer-cast

2020-04-07 08:33:52 697

翻译 IDL(Interface Description Language)

An interface description language or interface definition language (IDL), is a specification language used to describe a software component’s application programming interface (API). IDLs describe an ...

2020-02-02 14:03:47 776 1

原创 transaction-dsl

https://github.com/godsme/transaction-dsl

2019-12-28 12:47:10 1533 2

转载 SHELL运行时长统计

**#!/bin/bashstarttime=`date +'%Y-%m-%d %H:%M:%S'`#执行程序endtime=`date +'%Y-%m-%d %H:%M:%S'`start_seconds=$(date --date="$starttime" +%s);end_seconds=$(date --date="$endtime" +%s);echo "本次运行时间:...

2019-12-08 18:57:13 593

原创 bfg.jar清理.git中的大文件

https://rtyley.github.io/bfg-repo-cleaner/

2019-11-21 20:32:40 466

原创 日志打印

1 日志概述日志等级描述DEBUG指出细粒度信息事件对调试应用程序是非常有帮助的,一般认为比较重要的方法执行需要详细查看运行情况的则开启DEBUGINFO表明消息在粗粒度级别上突出强调应用程序的运行过程,只需要了解该方法是否运行的可以使用INFOWARN表明会出现潜在错误的情形ERROR指出虽然发生错误事件,但仍然不影响系统的继续运行。一般异常处理等...

2019-10-17 19:54:32 164

原创 TAL+资料汇总

1 入门博客学习 TLA+ - 介绍学习 TLA+ - 基础数学知识学习 TLA+ - Example学习 TLA+ - Percolator Transaction如何用数学验证软件的正确性——TLA+学习总结2 官方资料The TLA+ Toolbox Office SiteTAL Toolbox Downlinkhttps://github.com/tlaplus...

2019-09-20 17:55:42 574

原创 抽象语法树(Abstract Syntax Tree, AST)

1 JavaScript1.1 esprimahttps://esprima.org/demo/parse.htmlhttps://github.com/jquery/esprima1.2 babelhttps://github.com/babel1.3 acorn1.4 the-super-tiny-compiler1.5 jscodeshift1.6 Prettier...

2019-09-03 22:57:36 767

原创 ANTLR/JavaCC/Flex&Bison工程应用

文章目录1 ANTLR2 JavaCC3 Flex&Bison1 ANTLRApache HiveSparkGrovvyAtlasBeamEagleIncubator-shardingsphereSystemml2 JavaCCApache PigQuick SQL3 Flex&Bison

2019-09-03 10:17:08 846

原创 C++学习资料整理

1 书籍C++ Primer (5th Edition)C++ Primer Plus (6th Edition)Effective C++More Effective C++Effective Modern C++C++ API设计深入理解C++11STL源码剖析C++ Templates Complete Guide 2nd.edition2 网络资源CppCore...

2019-06-01 16:04:10 478

原创 SHELL命令--sed

sed

2018-11-25 01:27:25 160

原创 SHELL命令--grep

示例-1:if grep -q &quot;BAD\!\|^FATAL:&quot; echo_client.log; then echo &quot;************** Found bug! ***************&quot; echo &quot;Check echo_client.log for client logs&quot; exit 1fi

2018-11-25 01:24:38 268

原创 SHELL命令--find

示例-1: 查找指定文件find . -name &amp;amp;amp;amp;amp;amp;quot;*.proto&amp;amp;amp;amp;amp;amp;quot; --&amp;amp;amp;amp;amp;amp;amp;gt; 查找以.proto为扩展名的文件

2018-11-25 00:39:48 241

原创 批处理脚本命令行参数解析(getops)

示例-1: \Python-3.7.0b4.tar\Python-3.7.0b4\Tools\msi\buildrelease.bat@setlocal@echo offrem This script is intended for building official releases of Python.rem To use it to build alternative releas...

2018-11-17 21:31:18 1550

原创 批处理文件 SETLOCAL & ENDLOCAL

1 SETLOCAL &amp;amp;amp;amp;amp;amp; ENDLOCALSETLOCAL: 开始批处理文件中环境改动的本地化操作;ENDLOCAL: 结束批处理文件中环境改动的本地化操作;在执行 SETLOCAL之后所做的环境改动只限于批处理文件。要还原原先的设置,必须执行ENDLOCAL。达到批处理文件结尾时,对于该批处理文件的每个尚未执行的 SETLOCAL 命令,都会有一个隐含的 ENDLOCAL 被执...

2018-11-17 20:10:17 652

cpptools-linux-wwchao.7z

The C/C++ extension adds language support for C/C++ to Visual Studio Code, including features such as IntelliSense and debugging.

2021-09-27

GUI-cachegrind.zip

Callgrind is a profiling tool that records the call history among functions in a program's run as a call-graph. By default, the collected data consists of the number of instructions executed, their relationship to source lines, the caller/callee relationship between functions, and the numbers of suc

2021-01-31

mirrors-llvm-project-release-11.x.zip

The LLVM Compiler Infrastructure This directory and its sub-directories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and run-time environments. The README briefly describes how to get started with building LLVM. For more information on how

2021-01-24

mirrors-llvm-project-master.zip

The LLVM Compiler Infrastructure This directory and its sub-directories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and run-time environments. The README briefly describes how to get started with building LLVM. For more information on how

2021-01-24

cppcheck-2.3.tar.gz

Cppcheck is a static analysis tool for C/C++ code. It provides unique code analysis to detect bugs and focuses on detecting undefined behaviour and dangerous coding constructs. The goal is to have very few false positives. Cppcheck is designed to be able to analyze your C/C++ code even if it has non

2021-01-10

cmake-3.18.4-Linux-x86_64.tar.gz

CMake is a cross-platform, open-source build system generator. For full documentation visit the CMake Home Page and the CMake Documentation Page. The CMake Community Wiki also references useful guides and recipes.

2020-10-22

cmake-3.6.2-Linux-x86_64.tar.gz

CMake is a cross-platform, open-source build system generator. For full documentation visit the CMake Home Page and the CMake Documentation Page. The CMake Community Wiki also references useful guides and recipes. CMake is maintained and supported by Kitware and developed in collaboration with a pr

2020-10-22

Trace Event Format - Google Docs.pdf

Trace-Viewer is the javascript frontend for Chrome about:tracing and Android systrace. https://github.com/catapult-project/catapult/tree/master/tracing

2020-10-19

demo.cc.json

-ftime-trace功能允许以友好的格式生成时间跟踪分析数据,对于开发人员更好地理解编译器将大部分时间花在何处以及其他需要改进的领域非常有用。

2020-10-18

draw.io-13.2.4-windows-installer.exe

drawio-desktop is a diagrams.net desktop app based on Electron. draw.io is the old name for diagrams.net, we just don't want the hassle of changing all the binary's names.

2020-06-21

infer-linux64-v0.17.0.tar.xz

Infer is a static analysis tool for Java, C++, Objective-C, and C. Infer is written in OCaml. Read our Getting Started page for details on how to install packaged versions of Infer. To build Infer from source, see INSTALL.md.

2020-05-23

cppcheck-2.0.tar.gz

Cppcheck is a static analysis tool for C/C++ code. It provides unique code analysis to detect bugs and focuses on detecting undefined behaviour and dangerous coding constructs. The goal is to have very few false positives. Cppcheck is designed to be able to analyze your C/C++ code even if it has non-standard syntax (common in embedded projects).

2020-05-23

cppcheck-2.0.zip

Cppcheck is a static analysis tool for C/C++ code. It provides unique code analysis to detect bugs and focuses on detecting undefined behaviour and dangerous coding constructs. The goal is to have very few false positives. Cppcheck is designed to be able to analyze your C/C++ code even if it has non-standard syntax (common in embedded projects).

2020-05-23

clang+llvm-9.0.0-x86_64-linux-gnu-ubuntu-14.04.tar.xz

LLVM是构架编译器(compiler)的框架系统,以C++编写而成,用于优化以任意程序语言编写的程序的编译时间(compile-time)、链接时间(link-time)、运行时间(run-time)以及空闲时间(idle-time),对开发者保持开放,并兼容已有脚本。 LLVM计划启动于2000年,最初由美国UIUC大学的Chris Lattner博士主持开展。2006年Chris Lattner加盟Apple Inc.并致力于LLVM在Apple开发体系中的应用。Apple也是LLVM计划的主要资助者。 prebuild binary版本

2020-05-05

llvm-project-master.zip

LLVM是构架编译器(compiler)的框架系统,以C++编写而成,用于优化以任意程序语言编写的程序的编译时间(compile-time)、链接时间(link-time)、运行时间(run-time)以及空闲时间(idle-time),对开发者保持开放,并兼容已有脚本。 LLVM计划启动于2000年,最初由美国UIUC大学的Chris Lattner博士主持开展。2006年Chris Lattner加盟Apple Inc.并致力于LLVM在Apple开发体系中的应用。Apple也是LLVM计划的主要资助者。 目前LLVM已经被苹果IOS开发工具、Xilinx Vivado、Facebook、Google等各大公司采用。 公司内网访问github太慢,无法访问gitee,故在此中转,请审核通过,谢谢!

2020-05-04

wangwenchaonj-llvm-project-master.zip

LLVM是构架编译器(compiler)的框架系统,以C++编写而成,用于优化以任意程序语言编写的程序的编译时间(compile-time)、链接时间(link-time)、运行时间(run-time)以及空闲时间(idle-time),对开发者保持开放,并兼容已有脚本。 LLVM计划启动于2000年,最初由美国UIUC大学的Chris Lattner博士主持开展。2006年Chris Lattner加盟Apple Inc.并致力于LLVM在Apple开发体系中的应用。Apple也是LLVM计划的主要资助者。 目前LLVM已经被苹果IOS开发工具、Xilinx Vivado、Facebook、Google等各大公司采用。 废弃

2020-05-04

chapter1.zip

To get the most from this book, you should already know C++. We describe the details of a particular language feature, not the fundamentals of the language itself. You should be familiar with the concepts of classes and inheritance, and you should be able to write C++ programs using components such as IOstreams and containers from the C++ standard library. You should also be familiar with the basic features of “Modern C++”, such as auto, decltype, move semantics, and lambdas. Nevertheless, we review more subtle issues as the need arises, even when such issues aren’t directly related to templates. This ensures that the text is accessible to experts and intermediate programmers alike.

2020-01-01

herrington_src_cgia_bc10.tar

Code generation is the technique of building and using programs to write other programs. A concrete example is using a code generator to build database access code or remote procedure layers. The central idea is to create consistent and high quality code more quickly.

2019-11-21

snort-2.0-2.8-2.9-3.0.zip

在1998年,Martin Roesch用C语言开发了开放源代码(Open Source)的入侵检测系统Snort。直至今天,Snort已发展成为一个具有多平台(Multi-Platform)、实时(Real-Time)流量分析、网络IP数据包(Pocket)记录等特性的强大的网络入侵检测/防御系统(Network Intrusion Detection/Prevention System),即NIDS/NIPS。Snort符合通用公共许可(GPL——GNU General Pubic License),在网上可以通过免费下载获得Snort,并且只需要几分钟就可以安装并开始使用。

2019-11-17

word_counter.zip

CMake is an open-source, cross-platform family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files, and generate native makefiles and workspaces that can be used in the compiler environment of your choice. The suite of CMake tools were created by Kitware in response to the need for a powerful, cross-platform build environment for open-source projects such as ITK and VTK

2019-11-15

word_counter.zip

CMake is an open-source, cross-platform family of tools designed to build, test and package software. CMake is used to control the software compilation process using simple platform and compiler independent configuration files, and generate native makefiles and workspaces that can be used in the compiler environment of your choice. The suite of CMake tools were created by Kitware in response to the need for a powerful, cross-platform build environment for open-source projects such as ITK and VTK

2019-11-15

Redis源码解读.7z

Redis源码解读,讲解Redis内部实现机制。 Redis(全称:Remote Dictionary Server 远程字典服务)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API

2019-10-12

jdk-8u221-windows-i586.zip

jdk-8u221-windows-i586.zip jdk-8u221-windows-i586.zip

2019-09-21

jdk-8u221-windows-x64.zip

jdk-8u221-windows-x64.zip jdk-8u221-windows-x64.zip jdk-8u221-windows-x64.zip

2019-09-21

Robinson Crusoe

鲁滨逊漂流记英文原版,可用来测试bloomfilter、KMP/BM、AC自动机、Trie树、Wu-manber算法的匹配效果.

2018-01-17

KMP/BM字符串匹配算法源码

BF/KMP/BM 字符串单模匹配算法, 用途广泛; BF/KMP/BM 字符串单模匹配算法, 用途广泛; BF/KMP/BM 字符串单模匹配算法, 用途广泛;

2018-01-13

chromedriver 64位

将其放在Python的安装目录,用以解决selenium无法启动Chrome浏览器的问题

2017-08-27

GNU Make Manual / GNU.Make.Book / Managing.Projects.with.GNU.Make

GNU Make Manual 4.0 / GNU.Make.Book / Managing.Projects.with.GNU.Make 英文版,文字清晰、排版良好, 是学习make/makefile的最佳资源

2017-07-02

*.las文件格式说明(1.0/1.1/1.2/1.3/1.4)

*.las文件格式说明(1.0/1.1/1.2/1.3/1.4)

2015-10-11

ListView 虚拟列表技术(vs2013)

ListView 虚拟列表技术,vs2013实现,有兴趣的可以看看。

2015-04-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除