C# Class LexicalAnalysis.FSAChar

The FSA for scanning a C character. Note that this FSA doesn't scan the surrounding quotes. It is used in both FSACharConst and FSAString. There are multiple ways to represent a character: * A normal character : any character other than \\ \n or [quote] Note that [quote] might be \' or \" depending on the context. For example, inside a String, single quote are allowed, which means that the following code is legal: Char *str = "single quote here: ' see that?"; However, if we need a double quote inside a String, we have to use an escape character, like this: Char *str = "double quote needs to be escaped: \" "; Inside a Char, double quotes are allowed while single quotes need to be escaped. Char double_quote = '"'; // allowed Char single_quote = '\''; // needs to be escaped * An escape character : \a \b \f \n \r \t \v \' \" \\ \? Note that even though \' and \" might not needs to be escaped, you can always use them as escaped. If you escape a character not listed above, the behavior is undefined in the standard. I'll just assume you need the unescaped character. For example, if you typed '\c', then I'll just treat it as 'c'. * An octal number after a backslash. For example : \123. * A hexadecimal number after a backslash and an 'x' or 'X'. FOr example : \xFF.
Inheritance: FSA
Afficher le fichier Open project: phisiart/C-Compiler Class Usage Examples

Méthodes publiques

Méthode Description
FSAChar ( Char quote ) : System
GetStatus ( ) : FSAStatus
ReadChar ( Char ch ) : void
ReadEOF ( ) : void
Reset ( ) : void
RetrieveChar ( ) : Char
RetrieveRaw ( ) : String
RetrieveToken ( ) : Token

Private Methods

Méthode Description
IsChar ( Char ch ) : System.Boolean

Method Details

FSAChar() public méthode

public FSAChar ( Char quote ) : System
quote Char
Résultat System

GetStatus() public méthode

public GetStatus ( ) : FSAStatus
Résultat FSAStatus

ReadChar() public méthode

public ReadChar ( Char ch ) : void
ch Char
Résultat void

ReadEOF() public méthode

public ReadEOF ( ) : void
Résultat void

Reset() public méthode

public Reset ( ) : void
Résultat void

RetrieveChar() public méthode

public RetrieveChar ( ) : Char
Résultat Char

RetrieveRaw() public méthode

public RetrieveRaw ( ) : String
Résultat String

RetrieveToken() public méthode

public RetrieveToken ( ) : Token
Résultat Token