KiCad PCB EDA Suite
dsnlexer.h File Reference
#include <cstdio>
#include <hashtables.h>
#include <string>
#include <vector>
#include <richio.h>

Go to the source code of this file.

Classes

struct  KEYWORD
 Hold a keyword string and its unique integer token. More...
 
class  DSNLEXER
 Implement a lexical analyzer for the SPECCTRA DSN file format. More...
 

Enumerations

enum  DSN_SYNTAX_T {
  DSN_NONE = -11 , DSN_COMMENT = -10 , DSN_STRING_QUOTE = -9 , DSN_QUOTE_DEF = -8 ,
  DSN_DASH = -7 , DSN_SYMBOL = -6 , DSN_NUMBER = -5 , DSN_RIGHT = -4 ,
  DSN_LEFT = -3 , DSN_STRING = -2 , DSN_EOF = -1
}
 List all the DSN lexer's tokens that are supported in lexing. More...
 

Enumeration Type Documentation

◆ DSN_SYNTAX_T

List all the DSN lexer's tokens that are supported in lexing.

It is up to the parser if it wants also to support them.

Enumerator
DSN_NONE 
DSN_COMMENT 
DSN_STRING_QUOTE 
DSN_QUOTE_DEF 
DSN_DASH 
DSN_SYMBOL 
DSN_NUMBER 
DSN_RIGHT 
DSN_LEFT 
DSN_STRING 
DSN_EOF 

Definition at line 57 of file dsnlexer.h.

58{
59 DSN_NONE = -11,
60 DSN_COMMENT = -10,
62 DSN_QUOTE_DEF = -8,
63 DSN_DASH = -7,
64 DSN_SYMBOL = -6,
65 DSN_NUMBER = -5,
66 DSN_RIGHT = -4, // right bracket, ')'
67 DSN_LEFT = -3, // left bracket, '('
68 DSN_STRING = -2, // a quoted string, stripped of the quotes
69 DSN_EOF = -1 // special case for end of file
70};
@ DSN_QUOTE_DEF
Definition: dsnlexer.h:62
@ DSN_STRING_QUOTE
Definition: dsnlexer.h:61
@ DSN_LEFT
Definition: dsnlexer.h:67
@ DSN_RIGHT
Definition: dsnlexer.h:66
@ DSN_NUMBER
Definition: dsnlexer.h:65
@ DSN_NONE
Definition: dsnlexer.h:59
@ DSN_DASH
Definition: dsnlexer.h:63
@ DSN_SYMBOL
Definition: dsnlexer.h:64
@ DSN_COMMENT
Definition: dsnlexer.h:60
@ DSN_STRING
Definition: dsnlexer.h:68
@ DSN_EOF
Definition: dsnlexer.h:69