Enviar búsqueda
Cargar
函数调用关系工具-Lite
•
Descargar como PPTX, PDF
•
1 recomendación
•
657 vistas
W
Wu Liang
Seguir
函数调用关系工具的精简版本
Leer menos
Leer más
Diseño
Tecnología
Denunciar
Compartir
Denunciar
Compartir
1 de 24
Descargar ahora
Recomendados
Java DSL与动态代码生成技术的应用 (上集:DSL部分)
Java DSL与动态代码生成技术的应用 (上集:DSL部分)
悦 温
为什么要学Python
为什么要学Python
Depeng Cong
函数调用关系工具-2011-孙光福
函数调用关系工具-2011-孙光福
Wu Liang
01 opening remarks
01 opening remarks
Wu Liang
sarna canina
sarna canina
HugoM0ra
Hmaster
Hmaster
Wu Liang
Bst svn专项培训
Bst svn专项培训
Wu Liang
检查实现类
检查实现类
Wu Liang
Recomendados
Java DSL与动态代码生成技术的应用 (上集:DSL部分)
Java DSL与动态代码生成技术的应用 (上集:DSL部分)
悦 温
为什么要学Python
为什么要学Python
Depeng Cong
函数调用关系工具-2011-孙光福
函数调用关系工具-2011-孙光福
Wu Liang
01 opening remarks
01 opening remarks
Wu Liang
sarna canina
sarna canina
HugoM0ra
Hmaster
Hmaster
Wu Liang
Bst svn专项培训
Bst svn专项培训
Wu Liang
检查实现类
检查实现类
Wu Liang
Hcsm lect-20120913
Hcsm lect-20120913
lusecheng
C+
C+
LohasBicycle
C#
C#
LohasBicycle
第1章 概论
第1章 概论
tjpucompiler
Test
Test
bluewind3541
from Source to Binary: How GNU Toolchain Works
from Source to Binary: How GNU Toolchain Works
National Cheng Kung University
Go
Go
Feng Yu
Interactive Data Language
Interactive Data Language
siufu
Android JNI
Android JNI
艾鍗科技
TypeScript 開發實戰:開發即時互動的 html5 websocket 聊天室應用程式
TypeScript 開發實戰:開發即時互動的 html5 websocket 聊天室應用程式
Will Huang
Ch01
Ch01
jashliao
系統程式 -- 第 8 章
系統程式 -- 第 8 章
鍾誠 陳鍾誠
Jni文档
Jni文档
woshiwzy
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
National Cheng Kung University
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
National Cheng Kung University
软件工程 第七章
软件工程 第七章
浒 刘
系統程式 -- 第 1 章
系統程式 -- 第 1 章
鍾誠 陳鍾誠
beidakejian
beidakejian
hanxuebing
How A Compiler Works: GNU Toolchain
How A Compiler Works: GNU Toolchain
National Cheng Kung University
從 Java programmer 的觀點看 ruby
從 Java programmer 的觀點看 ruby
建興 王
Smart pointer
Smart pointer
Wu Liang
cppcheck源码分析
cppcheck源码分析
Wu Liang
Más contenido relacionado
Similar a 函数调用关系工具-Lite
Hcsm lect-20120913
Hcsm lect-20120913
lusecheng
C+
C+
LohasBicycle
C#
C#
LohasBicycle
第1章 概论
第1章 概论
tjpucompiler
Test
Test
bluewind3541
from Source to Binary: How GNU Toolchain Works
from Source to Binary: How GNU Toolchain Works
National Cheng Kung University
Go
Go
Feng Yu
Interactive Data Language
Interactive Data Language
siufu
Android JNI
Android JNI
艾鍗科技
TypeScript 開發實戰:開發即時互動的 html5 websocket 聊天室應用程式
TypeScript 開發實戰:開發即時互動的 html5 websocket 聊天室應用程式
Will Huang
Ch01
Ch01
jashliao
系統程式 -- 第 8 章
系統程式 -- 第 8 章
鍾誠 陳鍾誠
Jni文档
Jni文档
woshiwzy
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
National Cheng Kung University
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
National Cheng Kung University
软件工程 第七章
软件工程 第七章
浒 刘
系統程式 -- 第 1 章
系統程式 -- 第 1 章
鍾誠 陳鍾誠
beidakejian
beidakejian
hanxuebing
How A Compiler Works: GNU Toolchain
How A Compiler Works: GNU Toolchain
National Cheng Kung University
從 Java programmer 的觀點看 ruby
從 Java programmer 的觀點看 ruby
建興 王
Similar a 函数调用关系工具-Lite
(20)
Hcsm lect-20120913
Hcsm lect-20120913
C+
C+
C#
C#
第1章 概论
第1章 概论
Test
Test
from Source to Binary: How GNU Toolchain Works
from Source to Binary: How GNU Toolchain Works
Go
Go
Interactive Data Language
Interactive Data Language
Android JNI
Android JNI
TypeScript 開發實戰:開發即時互動的 html5 websocket 聊天室應用程式
TypeScript 開發實戰:開發即時互動的 html5 websocket 聊天室應用程式
Ch01
Ch01
系統程式 -- 第 8 章
系統程式 -- 第 8 章
Jni文档
Jni文档
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
開放原始碼作為新事業: 台灣本土經驗談 (COSCUP 2011)
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
软件工程 第七章
软件工程 第七章
系統程式 -- 第 1 章
系統程式 -- 第 1 章
beidakejian
beidakejian
How A Compiler Works: GNU Toolchain
How A Compiler Works: GNU Toolchain
從 Java programmer 的觀點看 ruby
從 Java programmer 的觀點看 ruby
Más de Wu Liang
Smart pointer
Smart pointer
Wu Liang
cppcheck源码分析
cppcheck源码分析
Wu Liang
Dynamo cassandra
Dynamo cassandra
Wu Liang
Cppcheck分析
Cppcheck分析
Wu Liang
向量空间模型与动态规划分享
向量空间模型与动态规划分享
Wu Liang
Trie树分享
Trie树分享
Wu Liang
Más de Wu Liang
(6)
Smart pointer
Smart pointer
cppcheck源码分析
cppcheck源码分析
Dynamo cassandra
Dynamo cassandra
Cppcheck分析
Cppcheck分析
向量空间模型与动态规划分享
向量空间模型与动态规划分享
Trie树分享
Trie树分享
函数调用关系工具-Lite
1.
函数调用关系工具 2011年8月
2.
目录 原理 Antlr
Eclipse CDT 函数调用关系工具 工具目标 工具设计思路 实现过程 问题
3.
4.
提供了一个框架,构造语言识别器,编 译器和解释器
5.
基于LL(*)的识别:自顶向下分析的编译方法,最左推导
6.
7.
支持多种语言
8.
9.
Antlr内部机理 Character Stream
Lexer(词法分析器) 形成token Parser(语法分析器) 处理一系列的token,形成AST Abstract Syntax Tree(AST) 得到的解析树 Tree Parser 处理AST Lexer Token Stream Parser AST Tree Parser Text Output
10.
11.
Antlr使用一般步骤 (1) 输入一个grammar(xx.g)
(2) java org.antlr.Toolxx.g (3) 产生Class (4) 使用Class进行相应的应用 Antlrworks?
12.
13.
A:a;来表示规则,“:”代替了“=>”
14.
选择“|”A:a|b|c符号A可以推导出a或b或c
15.
连接“ ”A:abc;。此规则接收句型abc
16.
重复“*,+” A:a*,A:a+;
17.
18.
“~”: ~’B’;(除B之外的所有字符)
19.
20.
Antlr-一个简单的例子 识别加、减、乘、除 算术表达式
2+3; 2+(3*4);
21.
Antlr-解析编程语言 http://www.antlr.org/ 开源的语法文件(grammar)
C.g, Cpp.g, Java.g, Python.g, js.g …
22.
23.
为Eclipse 平台提供功能完全的 C/C++IDE
24.
开放的源代码,免费
25.
26.
C/C++调试器
27.
C/C++解析器
28.
29.
CDT——如何访问AST 创建一个新的 ASTVisitor
调用 IASTTranslationUnit.accept(ASTVisitor) visit方法() PROCESS_SKIP PROCESS_ABORT PROCESS_CONTINUE 表 1 显示了 Boolean 字段来确定访问器是否对访问此节点感兴趣。 该字段控制哪种类型的节点能够调用访问程序的 visit() 方法。默认情况下,它们都被设为 false,所以永远都不会调用 visit()。
30.
CDT——API #include <math.h>
double circu(double diam){ return diam*M_PI; } IASTTranslationUnit:main.c IASTDeclaration … IASTFunctionDefinition IASTCompoudStatement IASTDeclSpecifier: double IASTFunctionDeclarator IASTParameterDeclaration: IASTName:cicru IASTReturnStatement IASTDeclSpecifier:double IASTDelarator IASTBinaryExpression:* IASTIdExpression IASTLiteralExpression:3.1415 IASTName:diam IASTName:diam
31.
CDT-API IBinding ILabel
IVariable ICompositeType IEnumberation ITypedef IParameter IField IFunction IType IFunctionType ICPPFunction ICPPClassType ICPPMethod
32.
Eclipse-CDT 一个简单的例子 获取sourceCode当中所有方法的定义?
33.
34.
35.
函数调用关系工具-设计思路
36.
37.
38.
函数调用关系工具-问题 (1) 多态?
(2) 隐式类型转换? (3) 模板? (4) 执行速度的优化?
39.
Thank You!
Descargar ahora