如何使用讽刺定义转义序列和字符文字

本文关键字:字符 文字 转义序列 定义 何使用 讽刺 | 更新日期: 2023-09-27 18:33:39

我正在实现一个语法,其中包含一些如下规则:

char-literal    ::= ' regular-char '  
    ∣    ' escape-sequence '  
escape-sequence ::= ' ( ' ∣  " ∣  ' ∣  n ∣  t ∣  b ∣  r ∣  space )  
    ∣    ' (0…9) (0…9) (0…9)  
    ∣    'x (0…9∣ A…F∣ a…f) (0…9∣ A…F∣ a…f) 

关键是,我不知道如何使用讽刺来定义字符文字。知道吗?

如何使用讽刺定义转义序列和字符文字

你可以看看一个讽刺样本,它们默认包含在内。

C# Irony 语法已经有一个例子:

StringLiteral CharLiteral = TerminalFactory.CreateCSharpChar("CharLiteral");

实现如下所示:

public static StringLiteral CreateCSharpChar(string name) { StringLiteral term = new StringLiteral(name, "'", StringOptions.IsChar); return term; }