- Roslyn Cookbook
- Manish Vasani
- 193字
- 2021-07-15 17:07:31
Creating a syntax node analyzer to report issues about language syntax
A syntax node analyzer registers action callbacks to analyze one or more kinds of syntax nodes, such as operators, identifiers, expressions, declarations, and so on, and reports semantic issues about syntax. These analyzers generally need to fetch semantic information about different syntax nodes being analyzed and use the compiler semantic model APIs to get this information.
In this section, we will create a syntax analyzer that analyzes VariableDeclarationSyntax nodes for local declarations and reports a diagnostic recommending use of the explicit type instead of an implicitly typed declaration, that is, variables defined with the keyword var, such as var i = new X();. Analyzer will not report diagnostics if there is a compiler syntax error (implicitly typed declarations cannot define more than one variable), or the right side of the assignment has an error type or special System type such as int, char, string, and so on. For example, the analyzer will not flag locals local1, local2, and local3 here, but will flag local4.
int local1 = 0;
Class1 local2 = new Class1();
var local3 = 0;
var local4 = new Class1();
- Google Flutter Mobile Development Quick Start Guide
- 精通搜索分析
- x86匯編語言:從實模式到保護模式(第2版)
- Learning Neo4j 3.x(Second Edition)
- Web程序設計(第二版)
- RabbitMQ Essentials
- 微服務從小白到專家:Spring Cloud和Kubernetes實戰
- Linux Shell核心編程指南
- Swift 4從零到精通iOS開發
- Domain-Driven Design in PHP
- 零基礎學C語言第2版
- Android傳感器開發與智能設備案例實戰
- 精通MySQL 8(視頻教學版)
- C語言程序設計實訓教程與水平考試指導
- Learning Jakarta Struts 1.2: a concise and practical tutorial