Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
lexer.l File Reference
#include <math.h>
#include <string.h>
#include <errno.h>
#include <limits.h>
#include <sys/types.h>
#include <sys/stat.h>
#include "avrdude.h"
#include "libavrdude.h"
#include "config.h"
#include "config_gram.h"
+ Include dependency graph for lexer.l:

Go to the source code of this file.

Macros

#define YYERRCODE   256
 

Functions

int yylex (void)
 
 pyytext ()
 

Variables

string_buf_ptr = '\t'
 
return YYERRCODE { yyerror("unterminated character constant")
 
return K_ALLOWFULLPAGEBITSTREAM { yylval=NULL
 
return K_AVR910_DEVCODE { yylval=NULL
 
return K_PAGE_SIZE { yylval=NULL
 
return K_PAGED { yylval=NULL
 
return K_BAUDRATE { yylval=NULL
 
return K_BLOCKSIZE { yylval=NULL
 
return K_BS2 { yylval=NULL
 
return K_BUFF { yylval=NULL
 
return K_BYTEDELAY { yylval=NULL
 
return K_CHIP_ERASE { yylval=new_token(K_CHIP_ERASE)
 
return K_CHIP_ERASE_DELAY { yylval=NULL
 
return K_CHIPERASEPOLLTIMEOUT { yylval=NULL
 
return K_CHIPERASEPULSEWIDTH { yylval=NULL
 
return K_CHIPERASETIME { yylval=NULL
 
return K_CMDEXEDELAY { yylval=NULL
 
return K_CONNTYPE { yylval=NULL
 
return K_DEDICATED { yylval=new_token(K_DEDICATED)
 
return K_DEFAULT_BITCLOCK { yylval=NULL
 
return K_DEFAULT_PARALLEL { yylval=NULL
 
return K_DEFAULT_PROGRAMMER { yylval=NULL
 
return K_DEFAULT_SAFEMODE { yylval=NULL
 
return K_DEFAULT_SERIAL { yylval=NULL
 
return K_DELAY { yylval=NULL
 
return K_DESC { yylval=NULL
 
return K_DEVICECODE { yylval=NULL
 
return K_EECR { yylval=NULL
 
return K_EEPROM { yylval=NULL
 
return K_EEPROM_INSTR { yylval=NULL
 
return K_ENABLEPAGEPROGRAMMING { yylval=NULL
 
return K_ERRLED { yylval=NULL
 
return K_FLASH { yylval=NULL
 
return K_FLASH_INSTR { yylval=NULL
 
return K_HAS_DW { yylval=NULL
 
return K_HAS_JTAG { yylval=NULL
 
return K_HAS_PDI { yylval=NULL
 
return K_HAS_TPI { yylval=NULL
 
return K_HVENTERSTABDELAY { yylval=NULL
 
return K_HVLEAVESTABDELAY { yylval=NULL
 
return K_HVSP_CONTROLSTACK { yylval=NULL
 
return K_HVSPCMDEXEDELAY { yylval=NULL
 
return K_ID { yylval=NULL
 
return K_IDR { yylval=NULL
 
return K_IO { yylval=new_token(K_IO)
 
return K_IS_AT90S1200 { yylval=NULL
 
return K_IS_AVR32 { yylval=NULL
 
return K_LATCHCYCLES { yylval=NULL
 
return K_LOAD_EXT_ADDR { yylval=new_token(K_LOAD_EXT_ADDR)
 
return K_LOADPAGE_HI { yylval=new_token(K_LOADPAGE_HI)
 
return K_LOADPAGE_LO { yylval=new_token(K_LOADPAGE_LO)
 
return K_MAX_WRITE_DELAY { yylval=NULL
 
return K_MCU_BASE { yylval=NULL
 
return K_MEMORY { yylval=NULL
 
return K_MIN_WRITE_DELAY { yylval=NULL
 
return K_MISO { yylval=NULL
 
return K_MODE { yylval=NULL
 
return K_MOSI { yylval=NULL
 
return K_NO { yylval=new_token(K_NO)
 
return K_NUM_PAGES { yylval=NULL
 
return K_NVM_BASE { yylval=NULL
 
return K_OCDREV { yylval=NULL
 
return K_OFFSET { yylval=NULL
 
return K_PAGEL { yylval=NULL
 
return K_PARALLEL { yylval=NULL
 
return K_PARENT { yylval=NULL
 
return K_PART { yylval=NULL
 
return K_PGM_ENABLE { yylval=new_token(K_PGM_ENABLE)
 
return K_PGMLED { yylval=NULL
 
return K_POLLINDEX { yylval=NULL
 
return K_POLLMETHOD { yylval=NULL
 
return K_POLLVALUE { yylval=NULL
 
return K_POSTDELAY { yylval=NULL
 
return K_POWEROFFDELAY { yylval=NULL
 
return K_PP_CONTROLSTACK { yylval=NULL
 
return K_PREDELAY { yylval=NULL
 
return K_PROGMODEDELAY { yylval=NULL
 
return K_PROGRAMFUSEPOLLTIMEOUT { yylval=NULL
 
return K_PROGRAMFUSEPULSEWIDTH { yylval=NULL
 
return K_PROGRAMLOCKPOLLTIMEOUT { yylval=NULL
 
return K_PROGRAMLOCKPULSEWIDTH { yylval=NULL
 
return K_PROGRAMMER { yylval=NULL
 
return K_PSEUDO { yylval=new_token(K_PSEUDO)
 
return K_PWROFF_AFTER_WRITE { yylval=NULL
 
return K_RAMPZ { yylval=NULL
 
return K_RDYLED { yylval=NULL
 
return K_READ { yylval=new_token(K_READ)
 
return K_READ_HI { yylval=new_token(K_READ_HI)
 
return K_READ_LO { yylval=new_token(K_READ_LO)
 
return K_READBACK_P1 { yylval=NULL
 
return K_READBACK_P2 { yylval=NULL
 
return K_READSIZE { yylval=NULL
 
return K_RESET { yylval=new_token(K_RESET)
 
return K_RESETDELAY { yylval=NULL
 
return K_RESETDELAYMS { yylval=NULL
 
return K_RESETDELAYUS { yylval=NULL
 
return K_RETRY_PULSE { yylval=NULL
 
return K_SCK { yylval=new_token(K_SCK)
 
return K_SERIAL { yylval=NULL
 
return K_SIGNATURE { yylval=NULL
 
return K_SIZE { yylval=NULL
 
return K_SPMCR { yylval=NULL
 
return K_STABDELAY { yylval=NULL
 
return K_STK500_DEVCODE { yylval=NULL
 
return K_SYNCHCYCLES { yylval=NULL
 
return K_SYNCHLOOPS { yylval=NULL
 
return K_TIMEOUT { yylval=NULL
 
return K_TOGGLEVTG { yylval=NULL
 
return K_TYPE { yylval=NULL
 
return K_USB { yylval=NULL
 
return K_USBDEV { yylval=NULL
 
return K_USBPID { yylval=NULL
 
return K_USBPRODUCT { yylval=NULL
 
return K_USBSN { yylval=NULL
 
return K_USBVENDOR { yylval=NULL
 
return K_USBVID { yylval=NULL
 
return K_VCC { yylval=NULL
 
return K_VFYLED { yylval=NULL
 
return K_WRITE { yylval=new_token(K_WRITE)
 
return K_WRITE_HI { yylval=new_token(K_WRITE_HI)
 
return K_WRITE_LO { yylval=new_token(K_WRITE_LO)
 
return K_WRITEPAGE { yylval=new_token(K_WRITEPAGE)
 
return K_YES { yylval=new_token(K_YES)
 
return TKN_COMMA
 
return TKN_EQUAL
 
return TKN_SEMI
 
return TKN_TILDE
 
return TKN_LEFT_PAREN
 
return TKN_RIGHT_PAREN
 

Macro Definition Documentation

◆ YYERRCODE

#define YYERRCODE   256

Function Documentation

◆ pyytext()

pyytext ( )
300{
301#if DEBUG
302 avrdude_message(MSG_INFO, "TOKEN: \"%s\"\n", yytext);
#define MSG_INFO
Definition avrdude.h:51
int avrdude_message(const int msglvl, const char *format,...)
Definition main.c:93
char * yytext
Definition lexer.c:956
303#endif
304}

References avrdude_message(), MSG_INFO, and yytext.

+ Here is the call graph for this function:

◆ yylex()

int yylex ( void  )
59 {SIGN}*{DIGIT}+ { yylval = number(yytext); return TKN_NUMBER; }
TOKEN * number(char *text)
Definition config.c:176
YYSTYPE yylval
Definition config_gram.c:1566
#define TKN_NUMBER
Definition config_gram.c:398
60#{SIGN}*{DIGIT}+"."{DIGIT}* { yylval = number_real(yytext); return TKN_NUMBER_REAL; }
61#{SIGN}*"."{DIGIT}* { yylval = number_real(yytext); return TKN_NUMBER_REAL; }
62{DIGIT}+ { yylval = number(yytext); return TKN_NUMBER; }
63{DIGIT}+"."{DIGIT}* { yylval = number_real(yytext); return TKN_NUMBER_REAL; }
64"."{DIGIT}+ { yylval = number_real(yytext); return TKN_NUMBER_REAL; }
65
66"\"" { string_buf_ptr = string_buf; BEGIN(strng); }
67
680x{HEXDIGIT}+ { yylval = hexnumber(yytext); return TKN_NUMBER; }
69
70
71
72# { /* The following eats '#' style comments to end of line */
73 BEGIN(comment); }
#define comment
Definition lexer.c:1004
#define BEGIN
Definition lexer.c:117

Referenced by yyparse().

+ Here is the caller graph for this function:

Variable Documentation

◆ K_ALLOWFULLPAGEBITSTREAM

return K_ALLOWFULLPAGEBITSTREAM { yylval=NULL

◆ K_AVR910_DEVCODE

return K_AVR910_DEVCODE { yylval=NULL

◆ K_BAUDRATE

return K_BAUDRATE { yylval=NULL

◆ K_BLOCKSIZE

return K_BLOCKSIZE { yylval=NULL

◆ K_BS2

return K_BS2 { yylval=NULL

◆ K_BUFF

return K_BUFF { yylval=NULL

◆ K_BYTEDELAY

return K_BYTEDELAY { yylval=NULL

◆ K_CHIP_ERASE

return K_CHIP_ERASE { yylval=new_token(K_CHIP_ERASE)

◆ K_CHIP_ERASE_DELAY

return K_CHIP_ERASE_DELAY { yylval=NULL

◆ K_CHIPERASEPOLLTIMEOUT

return K_CHIPERASEPOLLTIMEOUT { yylval=NULL

◆ K_CHIPERASEPULSEWIDTH

return K_CHIPERASEPULSEWIDTH { yylval=NULL

◆ K_CHIPERASETIME

return K_CHIPERASETIME { yylval=NULL

◆ K_CMDEXEDELAY

return K_CMDEXEDELAY { yylval=NULL

◆ K_CONNTYPE

return K_CONNTYPE { yylval=NULL

◆ K_DEDICATED

return K_DEDICATED { yylval=new_token(K_DEDICATED)

◆ K_DEFAULT_BITCLOCK

return K_DEFAULT_BITCLOCK { yylval=NULL

◆ K_DEFAULT_PARALLEL

return K_DEFAULT_PARALLEL { yylval=NULL

◆ K_DEFAULT_PROGRAMMER

return K_DEFAULT_PROGRAMMER { yylval=NULL

◆ K_DEFAULT_SAFEMODE

return K_DEFAULT_SAFEMODE { yylval=NULL

◆ K_DEFAULT_SERIAL

return K_DEFAULT_SERIAL { yylval=NULL

◆ K_DELAY

return K_DELAY { yylval=NULL

◆ K_DESC

return K_DESC { yylval=NULL

◆ K_DEVICECODE

return K_DEVICECODE { yylval=NULL

◆ K_EECR

return K_EECR { yylval=NULL

◆ K_EEPROM

return K_EEPROM { yylval=NULL

◆ K_EEPROM_INSTR

return K_EEPROM_INSTR { yylval=NULL

◆ K_ENABLEPAGEPROGRAMMING

return K_ENABLEPAGEPROGRAMMING { yylval=NULL

◆ K_ERRLED

return K_ERRLED { yylval=NULL

◆ K_FLASH

return K_FLASH { yylval=NULL

◆ K_FLASH_INSTR

return K_FLASH_INSTR { yylval=NULL

◆ K_HAS_DW

return K_HAS_DW { yylval=NULL

◆ K_HAS_JTAG

return K_HAS_JTAG { yylval=NULL

◆ K_HAS_PDI

return K_HAS_PDI { yylval=NULL

◆ K_HAS_TPI

return K_HAS_TPI { yylval=NULL

◆ K_HVENTERSTABDELAY

return K_HVENTERSTABDELAY { yylval=NULL

◆ K_HVLEAVESTABDELAY

return K_HVLEAVESTABDELAY { yylval=NULL

◆ K_HVSP_CONTROLSTACK

return K_HVSP_CONTROLSTACK { yylval=NULL

◆ K_HVSPCMDEXEDELAY

return K_HVSPCMDEXEDELAY { yylval=NULL

◆ K_ID

return K_ID { yylval=NULL

◆ K_IDR

return K_IDR { yylval=NULL

◆ K_IO

return K_IO { yylval=new_token(K_IO)

◆ K_IS_AT90S1200

return K_IS_AT90S1200 { yylval=NULL

◆ K_IS_AVR32

return K_IS_AVR32 { yylval=NULL

◆ K_LATCHCYCLES

return K_LATCHCYCLES { yylval=NULL

◆ K_LOAD_EXT_ADDR

return K_LOAD_EXT_ADDR { yylval=new_token(K_LOAD_EXT_ADDR)

◆ K_LOADPAGE_HI

return K_LOADPAGE_HI { yylval=new_token(K_LOADPAGE_HI)

◆ K_LOADPAGE_LO

return K_LOADPAGE_LO { yylval=new_token(K_LOADPAGE_LO)

◆ K_MAX_WRITE_DELAY

return K_MAX_WRITE_DELAY { yylval=NULL

◆ K_MCU_BASE

return K_MCU_BASE { yylval=NULL

◆ K_MEMORY

return K_MEMORY { yylval=NULL

◆ K_MIN_WRITE_DELAY

return K_MIN_WRITE_DELAY { yylval=NULL

◆ K_MISO

return K_MISO { yylval=NULL

◆ K_MODE

return K_MODE { yylval=NULL

◆ K_MOSI

return K_MOSI { yylval=NULL

◆ K_NO

return K_NO { yylval=new_token(K_NO)

◆ K_NUM_PAGES

return K_NUM_PAGES { yylval=NULL

◆ K_NVM_BASE

return K_NVM_BASE { yylval=NULL

◆ K_OCDREV

return K_OCDREV { yylval=NULL

◆ K_OFFSET

return K_OFFSET { yylval=NULL

◆ K_PAGE_SIZE

return K_PAGE_SIZE { yylval=NULL

◆ K_PAGED

return K_PAGED { yylval=NULL

◆ K_PAGEL

return K_PAGEL { yylval=NULL

◆ K_PARALLEL

return K_PARALLEL { yylval=NULL

◆ K_PARENT

return K_PARENT { yylval=NULL

◆ K_PART

return K_PART { yylval=NULL

◆ K_PGM_ENABLE

return K_PGM_ENABLE { yylval=new_token(K_PGM_ENABLE)

◆ K_PGMLED

return K_PGMLED { yylval=NULL

◆ K_POLLINDEX

return K_POLLINDEX { yylval=NULL

◆ K_POLLMETHOD

return K_POLLMETHOD { yylval=NULL

◆ K_POLLVALUE

return K_POLLVALUE { yylval=NULL

◆ K_POSTDELAY

return K_POSTDELAY { yylval=NULL

◆ K_POWEROFFDELAY

return K_POWEROFFDELAY { yylval=NULL

◆ K_PP_CONTROLSTACK

return K_PP_CONTROLSTACK { yylval=NULL

◆ K_PREDELAY

return K_PREDELAY { yylval=NULL

◆ K_PROGMODEDELAY

return K_PROGMODEDELAY { yylval=NULL

◆ K_PROGRAMFUSEPOLLTIMEOUT

return K_PROGRAMFUSEPOLLTIMEOUT { yylval=NULL

◆ K_PROGRAMFUSEPULSEWIDTH

return K_PROGRAMFUSEPULSEWIDTH { yylval=NULL

◆ K_PROGRAMLOCKPOLLTIMEOUT

return K_PROGRAMLOCKPOLLTIMEOUT { yylval=NULL

◆ K_PROGRAMLOCKPULSEWIDTH

return K_PROGRAMLOCKPULSEWIDTH { yylval=NULL

◆ K_PROGRAMMER

return K_PROGRAMMER { yylval=NULL

◆ K_PSEUDO

return K_PSEUDO { yylval=new_token(K_PSEUDO)

◆ K_PWROFF_AFTER_WRITE

return K_PWROFF_AFTER_WRITE { yylval=NULL

◆ K_RAMPZ

return K_RAMPZ { yylval=NULL

◆ K_RDYLED

return K_RDYLED { yylval=NULL

◆ K_READ

return K_READ { yylval=new_token(K_READ)

◆ K_READ_HI

return K_READ_HI { yylval=new_token(K_READ_HI)

◆ K_READ_LO

return K_READ_LO { yylval=new_token(K_READ_LO)

◆ K_READBACK_P1

return K_READBACK_P1 { yylval=NULL

◆ K_READBACK_P2

return K_READBACK_P2 { yylval=NULL

◆ K_READSIZE

return K_READSIZE { yylval=NULL

◆ K_RESET

return K_RESET { yylval=new_token(K_RESET)

◆ K_RESETDELAY

return K_RESETDELAY { yylval=NULL

◆ K_RESETDELAYMS

return K_RESETDELAYMS { yylval=NULL

◆ K_RESETDELAYUS

return K_RESETDELAYUS { yylval=NULL

◆ K_RETRY_PULSE

return K_RETRY_PULSE { yylval=NULL

◆ K_SCK

return K_SCK { yylval=new_token(K_SCK)

◆ K_SERIAL

return K_SERIAL { yylval=NULL

◆ K_SIGNATURE

return K_SIGNATURE { yylval=NULL

◆ K_SIZE

return K_SIZE { yylval=NULL

◆ K_SPMCR

return K_SPMCR { yylval=NULL

◆ K_STABDELAY

return K_STABDELAY { yylval=NULL

◆ K_STK500_DEVCODE

return K_STK500_DEVCODE { yylval=NULL

◆ K_SYNCHCYCLES

return K_SYNCHCYCLES { yylval=NULL

◆ K_SYNCHLOOPS

return K_SYNCHLOOPS { yylval=NULL

◆ K_TIMEOUT

return K_TIMEOUT { yylval=NULL

◆ K_TOGGLEVTG

return K_TOGGLEVTG { yylval=NULL

◆ K_TYPE

return K_TYPE { yylval=NULL

◆ K_USB

return K_USB { yylval=NULL

◆ K_USBDEV

return K_USBDEV { yylval=NULL

◆ K_USBPID

return K_USBPID { yylval=NULL

◆ K_USBPRODUCT

return K_USBPRODUCT { yylval=NULL

◆ K_USBSN

return K_USBSN { yylval=NULL

◆ K_USBVENDOR

return K_USBVENDOR { yylval=NULL

◆ K_USBVID

return K_USBVID { yylval=NULL

◆ K_VCC

return K_VCC { yylval=NULL

◆ K_VFYLED

return K_VFYLED { yylval=NULL

◆ K_WRITE

return K_WRITE { yylval=new_token(K_WRITE)

◆ K_WRITE_HI

return K_WRITE_HI { yylval=new_token(K_WRITE_HI)

◆ K_WRITE_LO

return K_WRITE_LO { yylval=new_token(K_WRITE_LO)

◆ K_WRITEPAGE

return K_WRITEPAGE { yylval=new_token(K_WRITEPAGE)

◆ K_YES

return K_YES { yylval=new_token(K_YES)

◆ string_buf_ptr

while yptr* string_buf_ptr = '\t'

◆ TKN_COMMA

return TKN_COMMA

◆ TKN_EQUAL

return TKN_EQUAL

◆ TKN_LEFT_PAREN

return TKN_LEFT_PAREN

◆ TKN_RIGHT_PAREN

return TKN_RIGHT_PAREN

◆ TKN_SEMI

return TKN_SEMI

◆ TKN_TILDE

return TKN_TILDE

◆ YYERRCODE

return YYERRCODE { yyerror("unterminated character constant")