Skip to content

T_Cyjb_Compilers_Lexers_LexerData_1

CYJB edited this page Mar 23, 2024 · 8 revisions

LexerData(T) 类

表示词法分析器的数据。

继承层次

System.Object
  Cyjb.Compilers.Lexers.LexerData(T)
Namespace: Cyjb.Compilers.Lexers
Assembly: Cyjb.Compilers.Runtime (in Cyjb.Compilers.Runtime.dll) Version: 1.0.20+d347ea0351607fb282fdf60a5301f9cccb3ab27e

语法

C#

public class LexerData<T>
where T : struct, new()

类型参数

 

T
词法单元标识符的类型,一般是一个枚举类型。
  The LexerData(T) type exposes the following members.

构造函数

 

名称 说明
公共方法 LexerData(T) 使用指定的词法分析器数据初始化 LexerData(T) 类的新实例。
  Back to Top

属性

 

名称 说明
公共属性 CharClasses 获取词法分析的字符类映射。
公共属性 ContainsBeginningOfLine 获取词法分析中是否包含与行首匹配对应的头节点。
公共属性 Contexts 获取词法分析的上下文数据。
公共属性 ControllerType 获取词法分析控制器的类型。
公共属性 Rejectable 获取是否用到了 Reject 动作。
公共属性 States 获取 DFA 的状态列表。
公共属性 Terminals 获取词法分析的终结符列表。
公共属性 TrailingType 获取词法分析的向前看符号的类型。
公共属性 Trans 获取 DF 的状态转移。
公共属性 UseShortest 获取是否用到了最短匹配。
  Back to Top

方法

 

名称 说明
公共方法 Equals Determines whether the specified object is equal to the current object. (继承自 Object。)
受保护的方法 Finalize Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (继承自 Object。)
公共方法 GetHashCode Serves as the default hash function. (继承自 Object。)
公共方法 GetSymbols 返回指定状态对应的符号。
公共方法 GetType Gets the Type of the current instance. (继承自 Object。)
受保护的方法 MemberwiseClone Creates a shallow copy of the current Object. (继承自 Object。)
公共方法 NextState 返回指定状态使用指定字符转移后的状态。
公共方法 ToString Returns a string that represents the current object. (继承自 Object。)
  Back to Top

Remarks

LexerData(T) 类包含了用于构造词法分析器的全部信息, 可以用于构造词法分析器。也可以使用默认的词法分析器工厂 LexerFactory(T)

关于如何构造自己的词法分析器,可以参考我的博文 《C# 词法分析器(六)构造词法分析器》

参见

Reference

Cyjb.Compilers.Lexers 命名空间

Other Resources

《C# 词法分析器(六)构造词法分析器》
Clone this wiki locally