# decaf-doc

## decaf-doc

- [Introduction](https://mashplant.gitbook.io/decaf-doc/master.md)
- [pa1a](https://mashplant.gitbook.io/decaf-doc/pa1a.md)
- [实验内容](https://mashplant.gitbook.io/decaf-doc/pa1a/shi-yan-nei-rong.md)
- [lalr1使用指导](https://mashplant.gitbook.io/decaf-doc/pa1a/lalr1-shi-yong-zhi-dao.md)
- [编写lexer](https://mashplant.gitbook.io/decaf-doc/pa1a/lalr1-shi-yong-zhi-dao/bian-xie-lexer.md)
- [impl块的可选属性](https://mashplant.gitbook.io/decaf-doc/pa1a/lalr1-shi-yong-zhi-dao/impl-kuai-de-ke-xuan-shu-xing.md)
- [产生式和语法动作](https://mashplant.gitbook.io/decaf-doc/pa1a/lalr1-shi-yong-zhi-dao/chan-sheng-shi-he-yu-fa-dong-zuo.md)
- [解决冲突](https://mashplant.gitbook.io/decaf-doc/pa1a/lalr1-shi-yong-zhi-dao/jie-jue-chong-tu.md)
- [一个完整的例子](https://mashplant.gitbook.io/decaf-doc/pa1a/lalr1-shi-yong-zhi-dao/yi-ge-wan-zheng-de-li-zi.md)
- [抽象语法树](https://mashplant.gitbook.io/decaf-doc/pa1a/chou-xiang-yu-fa-shu.md)
- [框架中部分实现的解释](https://mashplant.gitbook.io/decaf-doc/pa1a/kuang-jia-zhong-bu-fen-shi-xian-de-jie-shi.md)
- [文件结构](https://mashplant.gitbook.io/decaf-doc/pa1a/wen-jian-jie-gou.md)
- [pa1b](https://mashplant.gitbook.io/decaf-doc/pa1b.md)
- [实验内容](https://mashplant.gitbook.io/decaf-doc/pa1b/shi-yan-nei-rong.md)
- [lalr1使用指导](https://mashplant.gitbook.io/decaf-doc/pa1b/lalr1-shi-yong-zhi-dao.md)
- [错误恢复](https://mashplant.gitbook.io/decaf-doc/pa1b/cuo-wu-hui-fu.md)
- [文件结构](https://mashplant.gitbook.io/decaf-doc/pa1b/wen-jian-jie-gou.md)
- [pa2](https://mashplant.gitbook.io/decaf-doc/pa2.md)
- [实验内容](https://mashplant.gitbook.io/decaf-doc/pa2/shi-yan-nei-rong.md)
- [语义分析](https://mashplant.gitbook.io/decaf-doc/pa2/yu-yi-fen-xi.md)
- [符号表](https://mashplant.gitbook.io/decaf-doc/pa2/fu-hao-biao.md)
- [语句的返回类型](https://mashplant.gitbook.io/decaf-doc/pa2/yu-ju-de-fan-hui-lei-xing.md)
- [visitor模式](https://mashplant.gitbook.io/decaf-doc/pa2/visitor-mo-shi.md)
- [框架中部分实现的解释](https://mashplant.gitbook.io/decaf-doc/pa2/kuang-jia-zhong-bu-fen-shi-xian-de-jie-shi.md)
- [pa3](https://mashplant.gitbook.io/decaf-doc/pa3.md)
- [实验内容](https://mashplant.gitbook.io/decaf-doc/pa3/shi-yan-nei-rong.md)
- [中间代码](https://mashplant.gitbook.io/decaf-doc/pa3/zhong-jian-dai-ma.md)
- [中间代码中的类型信息](https://mashplant.gitbook.io/decaf-doc/pa3/zhong-jian-dai-ma-zhong-de-lei-xing-xin-xi.md)
- [运行时存储布局](https://mashplant.gitbook.io/decaf-doc/pa3/yun-hang-shi-cun-chu-bu-ju.md)
- [面向对象机制](https://mashplant.gitbook.io/decaf-doc/pa3/mian-xiang-dui-xiang-ji-zhi.md)
- [tacvm介绍](https://mashplant.gitbook.io/decaf-doc/pa3/tacvm-jie-shao.md)
- [pa4](https://mashplant.gitbook.io/decaf-doc/pa4.md)
- [实验内容](https://mashplant.gitbook.io/decaf-doc/pa4/shi-yan-nei-rong.md)
- [基本块](https://mashplant.gitbook.io/decaf-doc/pa4/ji-ben-kuai.md)
- [数据流分析概述](https://mashplant.gitbook.io/decaf-doc/pa4/shu-ju-liu-fen-xi-gai-shu.md)
- [数据流优化概述](https://mashplant.gitbook.io/decaf-doc/pa4/shu-ju-liu-you-hua-gai-shu.md)
- [公共表达式提取](https://mashplant.gitbook.io/decaf-doc/pa4/gong-gong-biao-da-shi-ti-qu.md)
- [复写传播](https://mashplant.gitbook.io/decaf-doc/pa4/fu-xie-chuan-bo.md)
- [常量传播](https://mashplant.gitbook.io/decaf-doc/pa4/chang-liang-chuan-bo.md)
- [死代码消除](https://mashplant.gitbook.io/decaf-doc/pa4/si-dai-ma-xiao-chu.md)
- [pa5](https://mashplant.gitbook.io/decaf-doc/pa5.md)
- [实验内容](https://mashplant.gitbook.io/decaf-doc/pa5/shi-yan-nei-rong.md)
- [图着色基本原理](https://mashplant.gitbook.io/decaf-doc/pa5/tu-zhuo-se-ji-ben-yuan-li.md)
- [改进干涉图节点](https://mashplant.gitbook.io/decaf-doc/pa5/gai-jin-gan-she-tu-jie-dian.md)
- [着色算法](https://mashplant.gitbook.io/decaf-doc/pa5/zhuo-se-suan-fa.md)
- [预着色节点](https://mashplant.gitbook.io/decaf-doc/pa5/yu-zhuo-se-jie-dian.md)
- [干涉图节点合并](https://mashplant.gitbook.io/decaf-doc/pa5/gan-she-tu-jie-dian-he-bing.md)
- [调用约定](https://mashplant.gitbook.io/decaf-doc/pa5/tiao-yong-yue-ding.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information, you can query the documentation dynamically by asking a question.
Perform an HTTP GET request on a page URL with the `ask` query parameter:
```
GET https://mashplant.gitbook.io/decaf-doc/master.md?ask=<question>
```
The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.
Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
