1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2024-12-26 18:29:54 +00:00

Updated all libs. Added ANTLR step in compilation.

This commit is contained in:
jespergravgaard 2021-12-24 00:18:04 +01:00
parent 763c228d33
commit 141e59fe4a
28 changed files with 113 additions and 15483 deletions

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: com.ibm.icu:icu4j:61.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/ibm/icu/icu4j/61.1/icu4j-61.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/ibm/icu/icu4j/61.1/icu4j-61.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/ibm/icu/icu4j/61.1/icu4j-61.1-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: com.ibm.icu:icu4j:69.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/com/ibm/icu/icu4j/69.1/icu4j-69.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/com/ibm/icu/icu4j/69.1/icu4j-69.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/com/ibm/icu/icu4j/69.1/icu4j-69.1-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: info.picocli:picocli:4.6.1">
<library name="Maven: info.picocli:picocli:4.6.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/info/picocli/picocli/4.6.1/picocli-4.6.1.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/info/picocli/picocli/4.6.2/picocli-4.6.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/info/picocli/picocli/4.6.1/picocli-4.6.1-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/info/picocli/picocli/4.6.2/picocli-4.6.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/info/picocli/picocli/4.6.1/picocli-4.6.1-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/info/picocli/picocli/4.6.2/picocli-4.6.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.antlr:ST4:4.3">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/ST4/4.3/ST4-4.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/ST4/4.3/ST4-4.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/ST4/4.3/ST4-4.3-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.antlr:ST4:4.3.1">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/ST4/4.3.1/ST4-4.3.1.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/ST4/4.3.1/ST4-4.3.1-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/ST4/4.3.1/ST4-4.3.1-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +0,0 @@
<component name="libraryTable">
<library name="Maven: org.antlr:antlr4:4.9.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4/4.9.2/antlr4-4.9.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4/4.9.2/antlr4-4.9.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4/4.9.2/antlr4-4.9.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -0,0 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.antlr:antlr4:4.9.3">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4/4.9.3/antlr4-4.9.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4/4.9.3/antlr4-4.9.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4/4.9.3/antlr4-4.9.3-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.antlr:antlr4-runtime:4.9.2">
<library name="Maven: org.antlr:antlr4-runtime:4.9.3">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4-runtime/4.9.2/antlr4-runtime-4.9.2.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4-runtime/4.9.3/antlr4-runtime-4.9.3.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4-runtime/4.9.2/antlr4-runtime-4.9.2-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4-runtime/4.9.3/antlr4-runtime-4.9.3-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4-runtime/4.9.2/antlr4-runtime-4.9.2-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/antlr/antlr4-runtime/4.9.3/antlr4-runtime-4.9.3-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.junit.jupiter:junit-jupiter-api:5.8.1">
<library name="Maven: org.junit.jupiter:junit-jupiter-api:5.8.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-api/5.8.1/junit-jupiter-api-5.8.1.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-api/5.8.2/junit-jupiter-api-5.8.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-api/5.8.1/junit-jupiter-api-5.8.1-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-api/5.8.2/junit-jupiter-api-5.8.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-api/5.8.1/junit-jupiter-api-5.8.1-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-api/5.8.2/junit-jupiter-api-5.8.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.junit.jupiter:junit-jupiter-engine:5.8.1">
<library name="Maven: org.junit.jupiter:junit-jupiter-engine:5.8.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-engine/5.8.1/junit-jupiter-engine-5.8.1.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-engine/5.8.2/junit-jupiter-engine-5.8.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-engine/5.8.1/junit-jupiter-engine-5.8.1-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-engine/5.8.2/junit-jupiter-engine-5.8.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-engine/5.8.1/junit-jupiter-engine-5.8.1-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/jupiter/junit-jupiter-engine/5.8.2/junit-jupiter-engine-5.8.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.junit.platform:junit-platform-commons:1.8.1">
<library name="Maven: org.junit.platform:junit-platform-commons:1.8.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-commons/1.8.1/junit-platform-commons-1.8.1.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-commons/1.8.2/junit-platform-commons-1.8.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-commons/1.8.1/junit-platform-commons-1.8.1-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-commons/1.8.2/junit-platform-commons-1.8.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-commons/1.8.1/junit-platform-commons-1.8.1-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-commons/1.8.2/junit-platform-commons-1.8.2-sources.jar!/" />
</SOURCES>
</library>
</component>

View File

@ -1,13 +1,13 @@
<component name="libraryTable">
<library name="Maven: org.junit.platform:junit-platform-engine:1.8.1">
<library name="Maven: org.junit.platform:junit-platform-engine:1.8.2">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-engine/1.8.1/junit-platform-engine-1.8.1.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-engine/1.8.2/junit-platform-engine-1.8.2.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-engine/1.8.1/junit-platform-engine-1.8.1-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-engine/1.8.2/junit-platform-engine-1.8.2-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-engine/1.8.1/junit-platform-engine-1.8.1-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/org/junit/platform/junit-platform-engine/1.8.2/junit-platform-engine-1.8.2-sources.jar!/" />
</SOURCES>
</library>
</component>

41
.idea/misc.xml generated
View File

@ -3,26 +3,6 @@
<component name="ANTLRGenerationPreferences">
<option name="perGrammarGenerationSettings">
<list>
<PerGrammarGenerationSettings>
<option name="fileName" value="$PROJECT_DIR$/src/main/java/dk/camelot64/kickc/parser/KickCParser.g4" />
<option name="autoGen" value="true" />
<option name="outputDir" value="$PROJECT_DIR$/src/main/java" />
<option name="libDir" value="" />
<option name="encoding" value="" />
<option name="pkg" value="" />
<option name="language" value="" />
<option name="generateVisitor" value="true" />
</PerGrammarGenerationSettings>
<PerGrammarGenerationSettings>
<option name="fileName" value="$PROJECT_DIR$/src/main/java/dk/camelot64/kickc/parser/KickCLexer.g4" />
<option name="autoGen" value="true" />
<option name="outputDir" value="$PROJECT_DIR$/src/main/java" />
<option name="libDir" value="" />
<option name="encoding" value="" />
<option name="pkg" value="" />
<option name="language" value="" />
<option name="generateVisitor" value="true" />
</PerGrammarGenerationSettings>
<PerGrammarGenerationSettings>
<option name="fileName" value="$PROJECT_DIR$/src/test/java/dk/camelot64/kickc/parsing/typedef/Typedef.g4" />
<option name="autoGen" value="true" />
@ -33,6 +13,25 @@
<option name="language" value="" />
<option name="generateVisitor" value="true" />
</PerGrammarGenerationSettings>
<PerGrammarGenerationSettings>
<option name="fileName" value="$PROJECT_DIR$/src/main/antlr4/dk/camelot64/kickc/parser/KickCLexer.g4" />
<option name="autoGen" value="true" />
<option name="outputDir" value="$PROJECT_DIR$/target/generated-sources/antlr4/" />
<option name="libDir" value="" />
<option name="encoding" value="" />
<option name="pkg" value="dk.camelot64.kickc.parser" />
<option name="language" value="" />
<option name="generateVisitor" value="true" />
</PerGrammarGenerationSettings>
<PerGrammarGenerationSettings>
<option name="fileName" value="$PROJECT_DIR$/src/main/antlr4/dk/camelot64/kickc/parser/KickCParser.g4" />
<option name="outputDir" value="$PROJECT_DIR$/target/generated-sources/antlr4/" />
<option name="libDir" value="$PROJECT_DIR$/target/generated-sources/antlr4/" />
<option name="encoding" value="" />
<option name="pkg" value="dk.camelot64.kickc.parser" />
<option name="language" value="" />
<option name="generateVisitor" value="true" />
</PerGrammarGenerationSettings>
</list>
</option>
</component>
@ -43,7 +42,7 @@
</list>
</option>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="false" project-jdk-name="17" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>

View File

@ -1,10 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" />
</set>
</option>
</component>
</project>

View File

@ -7,23 +7,24 @@
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/target/generated-sources/antlr4" isTestSource="false" generated="true" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" scope="PROVIDED" name="Maven: org.antlr:antlr4:4.9.2" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: org.antlr:antlr4:4.9.3" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: org.antlr:antlr-runtime:3.5.2" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: org.antlr:ST4:4.3" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: org.antlr:ST4:4.3.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: org.abego.treelayout:org.abego.treelayout.core:1.0.3" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.ibm.icu:icu4j:61.1" level="project" />
<orderEntry type="library" name="Maven: org.antlr:antlr4-runtime:4.9.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.8.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-engine:1.8.1" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.ibm.icu:icu4j:69.1" level="project" />
<orderEntry type="library" name="Maven: org.antlr:antlr4-runtime:4.9.3" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-engine:5.8.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-engine:1.8.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.opentest4j:opentest4j:1.2.0" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-commons:1.8.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-api:5.8.1" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.junit.platform:junit-platform-commons:1.8.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.junit.jupiter:junit-jupiter-api:5.8.2" level="project" />
<orderEntry type="library" scope="TEST" name="Maven: org.apiguardian:apiguardian-api:1.1.2" level="project" />
<orderEntry type="library" name="Maven: info.picocli:picocli:4.6.1" level="project" />
<orderEntry type="library" name="Maven: info.picocli:picocli:4.6.2" level="project" />
<orderEntry type="library" name="Maven: javax.json:javax.json-api:1.1.4" level="project" />
<orderEntry type="library" name="Maven: org.glassfish:javax.json:1.1.4" level="project" />
<orderEntry type="library" name="Maven: cml.kickass:kickassembler:5.22-65ce02.a" level="project" />

24
pom.xml
View File

@ -47,24 +47,24 @@
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4</artifactId>
<version>4.9.2</version>
<version>4.9.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
<version>4.9.2</version>
<version>4.9.3</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>5.8.1</version>
<version>5.8.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>info.picocli</groupId>
<artifactId>picocli</artifactId>
<version>4.6.1</version>
<version>4.6.2</version>
</dependency>
<dependency>
<groupId>javax.json</groupId>
@ -120,6 +120,22 @@
</testResources>
<plugins>
<plugin>
<groupId>org.antlr</groupId>
<artifactId>antlr4-maven-plugin</artifactId>
<version>4.9.3</version>
<executions>
<execution>
<id>antlr</id>
<goals>
<goal>antlr4</goal>
</goals>
</execution>
</executions>
<configuration>
<visitor>true</visitor>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@ -1,223 +0,0 @@
TYPEDEFNAME=1
CURLY_BEGIN=2
CURLY_END=3
BRACKET_BEGIN=4
BRACKET_END=5
PAR_BEGIN=6
PAR_END=7
SEMICOLON=8
COLON=9
COMMA=10
RANGE=11
PARAM_LIST=12
CONDITION=13
DOT=14
ARROW=15
PLUS=16
MINUS=17
ASTERISK=18
DIVIDE=19
MODULO=20
INC=21
DEC=22
AND=23
BIT_NOT=24
BIT_XOR=25
BIT_OR=26
SHIFT_LEFT=27
SHIFT_RIGHT=28
EQUAL=29
NOT_EQUAL=30
LESS_THAN=31
LESS_THAN_EQUAL=32
GREATER_THAN_EQUAL=33
GREATER_THAN=34
LOGIC_AND=35
LOGIC_OR=36
ASSIGN=37
ASSIGN_COMPOUND=38
TYPEDEF=39
CONST=40
EXTERN=41
EXPORT=42
ALIGN=43
INLINE=44
VOLATILE=45
STATIC=46
INTERRUPT=47
REGISTER=48
LOCAL_RESERVE=49
ADDRESS=50
ADDRESS_ZEROPAGE=51
ADDRESS_MAINMEM=52
FORM_SSA=53
FORM_MA=54
INTRINSIC=55
CALLINGCONVENTION=56
IF=57
ELSE=58
WHILE=59
DO=60
FOR=61
SWITCH=62
RETURN=63
BREAK=64
CONTINUE=65
GOTO=66
ASM=67
DEFAULT=68
CASE=69
STRUCT=70
UNION=71
ENUM=72
SIZEOF=73
TYPEID=74
DEFINED=75
KICKASM=76
LOGIC_NOT=77
SIMPLETYPE=78
BOOLEAN=79
KICKASM_BODY=80
IMPORT=81
INCLUDE=82
PRAGMA=83
DEFINE=84
DEFINE_CONTINUE=85
UNDEF=86
IFDEF=87
IFNDEF=88
IFIF=89
ELIF=90
IFELSE=91
ENDIF=92
ERROR=93
TOKEN_STRINGIZE=94
TOKEN_MERGE=95
NUMBER=96
NUMFLOAT=97
BINFLOAT=98
DECFLOAT=99
HEXFLOAT=100
NUMINT=101
BININTEGER=102
DECINTEGER=103
HEXINTEGER=104
NAME=105
STRING=106
CHAR=107
WS=108
COMMENT_LINE=109
COMMENT_BLOCK=110
ASM_BYTE=111
ASM_MNEMONIC=112
ASM_IMM=113
ASM_COLON=114
ASM_COMMA=115
ASM_PAR_BEGIN=116
ASM_PAR_END=117
ASM_BRACKET_BEGIN=118
ASM_BRACKET_END=119
ASM_DOT=120
ASM_SHIFT_LEFT=121
ASM_SHIFT_RIGHT=122
ASM_PLUS=123
ASM_MINUS=124
ASM_LESS_THAN=125
ASM_GREATER_THAN=126
ASM_MULTIPLY=127
ASM_DIVIDE=128
ASM_CURLY_BEGIN=129
ASM_CURLY_END=130
ASM_NUMBER=131
ASM_NUMFLOAT=132
ASM_BINFLOAT=133
ASM_DECFLOAT=134
ASM_HEXFLOAT=135
ASM_NUMINT=136
ASM_BININTEGER=137
ASM_DECINTEGER=138
ASM_HEXINTEGER=139
ASM_CHAR=140
ASM_MULTI_REL=141
ASM_MULTI_NAME=142
ASM_NAME=143
ASM_TAG=144
ASM_WS=145
ASM_COMMENT_LINE=146
ASM_COMMENT_BLOCK=147
IMPORT_SYSTEMFILE=148
IMPORT_LOCALFILE=149
IMPORT_WS=150
IMPORT_COMMENT_LINE=151
IMPORT_COMMENT_BLOCK=152
';'=8
'..'=11
'...'=12
'?'=13
'->'=15
'%'=20
'++'=21
'--'=22
'&'=23
'~'=24
'^'=25
'|'=26
'=='=29
'!='=30
'<='=32
'>='=33
'&&'=35
'||'=36
'='=37
'typedef'=39
'const'=40
'extern'=41
'__export'=42
'__align'=43
'inline'=44
'volatile'=45
'static'=46
'__interrupt'=47
'register'=48
'__zp_reserve'=49
'__address'=50
'__zp'=51
'__mem'=52
'__ssa'=53
'__ma'=54
'__intrinsic'=55
'if'=57
'else'=58
'while'=59
'do'=60
'for'=61
'switch'=62
'return'=63
'break'=64
'continue'=65
'goto'=66
'asm'=67
'default'=68
'case'=69
'struct'=70
'union'=71
'enum'=72
'sizeof'=73
'typeid'=74
'defined'=75
'kickasm'=76
'!'=77
'#import'=81
'#include'=82
'#pragma'=83
'#define'=84
'#undef'=86
'#ifdef'=87
'#ifndef'=88
'#if'=89
'#elif'=90
'#else'=91
'#endif'=92
'#error'=93
'.byte'=111
'#'=113

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@ -1,223 +0,0 @@
TYPEDEFNAME=1
CURLY_BEGIN=2
CURLY_END=3
BRACKET_BEGIN=4
BRACKET_END=5
PAR_BEGIN=6
PAR_END=7
SEMICOLON=8
COLON=9
COMMA=10
RANGE=11
PARAM_LIST=12
CONDITION=13
DOT=14
ARROW=15
PLUS=16
MINUS=17
ASTERISK=18
DIVIDE=19
MODULO=20
INC=21
DEC=22
AND=23
BIT_NOT=24
BIT_XOR=25
BIT_OR=26
SHIFT_LEFT=27
SHIFT_RIGHT=28
EQUAL=29
NOT_EQUAL=30
LESS_THAN=31
LESS_THAN_EQUAL=32
GREATER_THAN_EQUAL=33
GREATER_THAN=34
LOGIC_AND=35
LOGIC_OR=36
ASSIGN=37
ASSIGN_COMPOUND=38
TYPEDEF=39
CONST=40
EXTERN=41
EXPORT=42
ALIGN=43
INLINE=44
VOLATILE=45
STATIC=46
INTERRUPT=47
REGISTER=48
LOCAL_RESERVE=49
ADDRESS=50
ADDRESS_ZEROPAGE=51
ADDRESS_MAINMEM=52
FORM_SSA=53
FORM_MA=54
INTRINSIC=55
CALLINGCONVENTION=56
IF=57
ELSE=58
WHILE=59
DO=60
FOR=61
SWITCH=62
RETURN=63
BREAK=64
CONTINUE=65
GOTO=66
ASM=67
DEFAULT=68
CASE=69
STRUCT=70
UNION=71
ENUM=72
SIZEOF=73
TYPEID=74
DEFINED=75
KICKASM=76
LOGIC_NOT=77
SIMPLETYPE=78
BOOLEAN=79
KICKASM_BODY=80
IMPORT=81
INCLUDE=82
PRAGMA=83
DEFINE=84
DEFINE_CONTINUE=85
UNDEF=86
IFDEF=87
IFNDEF=88
IFIF=89
ELIF=90
IFELSE=91
ENDIF=92
ERROR=93
TOKEN_STRINGIZE=94
TOKEN_MERGE=95
NUMBER=96
NUMFLOAT=97
BINFLOAT=98
DECFLOAT=99
HEXFLOAT=100
NUMINT=101
BININTEGER=102
DECINTEGER=103
HEXINTEGER=104
NAME=105
STRING=106
CHAR=107
WS=108
COMMENT_LINE=109
COMMENT_BLOCK=110
ASM_BYTE=111
ASM_MNEMONIC=112
ASM_IMM=113
ASM_COLON=114
ASM_COMMA=115
ASM_PAR_BEGIN=116
ASM_PAR_END=117
ASM_BRACKET_BEGIN=118
ASM_BRACKET_END=119
ASM_DOT=120
ASM_SHIFT_LEFT=121
ASM_SHIFT_RIGHT=122
ASM_PLUS=123
ASM_MINUS=124
ASM_LESS_THAN=125
ASM_GREATER_THAN=126
ASM_MULTIPLY=127
ASM_DIVIDE=128
ASM_CURLY_BEGIN=129
ASM_CURLY_END=130
ASM_NUMBER=131
ASM_NUMFLOAT=132
ASM_BINFLOAT=133
ASM_DECFLOAT=134
ASM_HEXFLOAT=135
ASM_NUMINT=136
ASM_BININTEGER=137
ASM_DECINTEGER=138
ASM_HEXINTEGER=139
ASM_CHAR=140
ASM_MULTI_REL=141
ASM_MULTI_NAME=142
ASM_NAME=143
ASM_TAG=144
ASM_WS=145
ASM_COMMENT_LINE=146
ASM_COMMENT_BLOCK=147
IMPORT_SYSTEMFILE=148
IMPORT_LOCALFILE=149
IMPORT_WS=150
IMPORT_COMMENT_LINE=151
IMPORT_COMMENT_BLOCK=152
';'=8
'..'=11
'...'=12
'?'=13
'->'=15
'%'=20
'++'=21
'--'=22
'&'=23
'~'=24
'^'=25
'|'=26
'=='=29
'!='=30
'<='=32
'>='=33
'&&'=35
'||'=36
'='=37
'typedef'=39
'const'=40
'extern'=41
'__export'=42
'__align'=43
'inline'=44
'volatile'=45
'static'=46
'__interrupt'=47
'register'=48
'__zp_reserve'=49
'__address'=50
'__zp'=51
'__mem'=52
'__ssa'=53
'__ma'=54
'__intrinsic'=55
'if'=57
'else'=58
'while'=59
'do'=60
'for'=61
'switch'=62
'return'=63
'break'=64
'continue'=65
'goto'=66
'asm'=67
'default'=68
'case'=69
'struct'=70
'union'=71
'enum'=72
'sizeof'=73
'typeid'=74
'defined'=75
'kickasm'=76
'!'=77
'#import'=81
'#include'=82
'#pragma'=83
'#define'=84
'#undef'=86
'#ifdef'=87
'#ifndef'=88
'#if'=89
'#elif'=90
'#else'=91
'#endif'=92
'#error'=93
'.byte'=111
'#'=113

View File

@ -1,986 +0,0 @@
// Generated from /Users/jespergravgaard/c64/kickc/src/main/java/dk/camelot64/kickc/parser/KickCParser.g4 by ANTLR 4.9.1
package dk.camelot64.kickc.parser;
import org.antlr.v4.runtime.tree.ParseTreeVisitor;
/**
* This interface defines a complete generic visitor for a parse tree produced
* by {@link KickCParser}.
*
* @param <T> The return type of the visit operation. Use {@link Void} for
* operations with no return type.
*/
public interface KickCParserVisitor<T> extends ParseTreeVisitor<T> {
/**
* Visit a parse tree produced by {@link KickCParser#file}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitFile(KickCParser.FileContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#asmFile}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmFile(KickCParser.AsmFileContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#declSeq}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclSeq(KickCParser.DeclSeqContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#decl}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDecl(KickCParser.DeclContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#declVariables}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclVariables(KickCParser.DeclVariablesContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#declaratorInitList}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclaratorInitList(KickCParser.DeclaratorInitListContext ctx);
/**
* Visit a parse tree produced by the {@code declVariableInitExpr}
* labeled alternative in {@link KickCParser#declaratorInit}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclVariableInitExpr(KickCParser.DeclVariableInitExprContext ctx);
/**
* Visit a parse tree produced by the {@code declVariableInitKasm}
* labeled alternative in {@link KickCParser#declaratorInit}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclVariableInitKasm(KickCParser.DeclVariableInitKasmContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#typeDef}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeDef(KickCParser.TypeDefContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#declType}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclType(KickCParser.DeclTypeContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#typeName}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeName(KickCParser.TypeNameContext ctx);
/**
* Visit a parse tree produced by the {@code typeNameDeclaratorArray}
* labeled alternative in {@link KickCParser#typeNameDeclarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeNameDeclaratorArray(KickCParser.TypeNameDeclaratorArrayContext ctx);
/**
* Visit a parse tree produced by the {@code typeNameDeclaratorPar}
* labeled alternative in {@link KickCParser#typeNameDeclarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeNameDeclaratorPar(KickCParser.TypeNameDeclaratorParContext ctx);
/**
* Visit a parse tree produced by the {@code typeNameDeclaratorName}
* labeled alternative in {@link KickCParser#typeNameDeclarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeNameDeclaratorName(KickCParser.TypeNameDeclaratorNameContext ctx);
/**
* Visit a parse tree produced by the {@code typeNameDeclaratorProcedure}
* labeled alternative in {@link KickCParser#typeNameDeclarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeNameDeclaratorProcedure(KickCParser.TypeNameDeclaratorProcedureContext ctx);
/**
* Visit a parse tree produced by the {@code typeNameDeclaratorPointer}
* labeled alternative in {@link KickCParser#typeNameDeclarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeNameDeclaratorPointer(KickCParser.TypeNameDeclaratorPointerContext ctx);
/**
* Visit a parse tree produced by the {@code declaratorPointer}
* labeled alternative in {@link KickCParser#declarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclaratorPointer(KickCParser.DeclaratorPointerContext ctx);
/**
* Visit a parse tree produced by the {@code declaratorArray}
* labeled alternative in {@link KickCParser#declarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclaratorArray(KickCParser.DeclaratorArrayContext ctx);
/**
* Visit a parse tree produced by the {@code declaratorPar}
* labeled alternative in {@link KickCParser#declarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclaratorPar(KickCParser.DeclaratorParContext ctx);
/**
* Visit a parse tree produced by the {@code declaratorName}
* labeled alternative in {@link KickCParser#declarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclaratorName(KickCParser.DeclaratorNameContext ctx);
/**
* Visit a parse tree produced by the {@code declaratorProcedure}
* labeled alternative in {@link KickCParser#declarator}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclaratorProcedure(KickCParser.DeclaratorProcedureContext ctx);
/**
* Visit a parse tree produced by the {@code typeSimple}
* labeled alternative in {@link KickCParser#type}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeSimple(KickCParser.TypeSimpleContext ctx);
/**
* Visit a parse tree produced by the {@code typeStructDef}
* labeled alternative in {@link KickCParser#type}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeStructDef(KickCParser.TypeStructDefContext ctx);
/**
* Visit a parse tree produced by the {@code typeStructRef}
* labeled alternative in {@link KickCParser#type}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeStructRef(KickCParser.TypeStructRefContext ctx);
/**
* Visit a parse tree produced by the {@code typeEnumDef}
* labeled alternative in {@link KickCParser#type}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeEnumDef(KickCParser.TypeEnumDefContext ctx);
/**
* Visit a parse tree produced by the {@code typeEnumRef}
* labeled alternative in {@link KickCParser#type}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeEnumRef(KickCParser.TypeEnumRefContext ctx);
/**
* Visit a parse tree produced by the {@code typeNamedRef}
* labeled alternative in {@link KickCParser#type}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitTypeNamedRef(KickCParser.TypeNamedRefContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#structRef}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStructRef(KickCParser.StructRefContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#structDef}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStructDef(KickCParser.StructDefContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#structMembers}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStructMembers(KickCParser.StructMembersContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#enumRef}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitEnumRef(KickCParser.EnumRefContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#enumDef}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitEnumDef(KickCParser.EnumDefContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#enumMemberList}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitEnumMemberList(KickCParser.EnumMemberListContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#enumMember}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitEnumMember(KickCParser.EnumMemberContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#declFunction}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDeclFunction(KickCParser.DeclFunctionContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#parameterListDecl}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitParameterListDecl(KickCParser.ParameterListDeclContext ctx);
/**
* Visit a parse tree produced by the {@code parameterDeclTypeDeclarator}
* labeled alternative in {@link KickCParser#parameterDecl}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitParameterDeclTypeDeclarator(KickCParser.ParameterDeclTypeDeclaratorContext ctx);
/**
* Visit a parse tree produced by the {@code parameterDeclTypeName}
* labeled alternative in {@link KickCParser#parameterDecl}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitParameterDeclTypeName(KickCParser.ParameterDeclTypeNameContext ctx);
/**
* Visit a parse tree produced by the {@code parameterDeclList}
* labeled alternative in {@link KickCParser#parameterDecl}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitParameterDeclList(KickCParser.ParameterDeclListContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#pragma}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitPragma(KickCParser.PragmaContext ctx);
/**
* Visit a parse tree produced by the {@code pragmaParamNumber}
* labeled alternative in {@link KickCParser#pragmaParam}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitPragmaParamNumber(KickCParser.PragmaParamNumberContext ctx);
/**
* Visit a parse tree produced by the {@code pragmaParamRange}
* labeled alternative in {@link KickCParser#pragmaParam}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitPragmaParamRange(KickCParser.PragmaParamRangeContext ctx);
/**
* Visit a parse tree produced by the {@code pragmaParamName}
* labeled alternative in {@link KickCParser#pragmaParam}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitPragmaParamName(KickCParser.PragmaParamNameContext ctx);
/**
* Visit a parse tree produced by the {@code pragmaParamString}
* labeled alternative in {@link KickCParser#pragmaParam}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitPragmaParamString(KickCParser.PragmaParamStringContext ctx);
/**
* Visit a parse tree produced by the {@code pragmaParamCallingConvention}
* labeled alternative in {@link KickCParser#pragmaParam}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitPragmaParamCallingConvention(KickCParser.PragmaParamCallingConventionContext ctx);
/**
* Visit a parse tree produced by the {@code directiveConst}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveConst(KickCParser.DirectiveConstContext ctx);
/**
* Visit a parse tree produced by the {@code directiveAlign}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveAlign(KickCParser.DirectiveAlignContext ctx);
/**
* Visit a parse tree produced by the {@code directiveRegister}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveRegister(KickCParser.DirectiveRegisterContext ctx);
/**
* Visit a parse tree produced by the {@code directiveMemoryAreaZp}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveMemoryAreaZp(KickCParser.DirectiveMemoryAreaZpContext ctx);
/**
* Visit a parse tree produced by the {@code directiveMemoryAreaMain}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveMemoryAreaMain(KickCParser.DirectiveMemoryAreaMainContext ctx);
/**
* Visit a parse tree produced by the {@code directiveMemoryAreaAddress}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveMemoryAreaAddress(KickCParser.DirectiveMemoryAreaAddressContext ctx);
/**
* Visit a parse tree produced by the {@code directiveVolatile}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveVolatile(KickCParser.DirectiveVolatileContext ctx);
/**
* Visit a parse tree produced by the {@code directiveStatic}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveStatic(KickCParser.DirectiveStaticContext ctx);
/**
* Visit a parse tree produced by the {@code directiveFormSsa}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveFormSsa(KickCParser.DirectiveFormSsaContext ctx);
/**
* Visit a parse tree produced by the {@code directiveFormMa}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveFormMa(KickCParser.DirectiveFormMaContext ctx);
/**
* Visit a parse tree produced by the {@code directiveExtern}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveExtern(KickCParser.DirectiveExternContext ctx);
/**
* Visit a parse tree produced by the {@code directiveExport}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveExport(KickCParser.DirectiveExportContext ctx);
/**
* Visit a parse tree produced by the {@code directiveInline}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveInline(KickCParser.DirectiveInlineContext ctx);
/**
* Visit a parse tree produced by the {@code directiveIntrinsic}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveIntrinsic(KickCParser.DirectiveIntrinsicContext ctx);
/**
* Visit a parse tree produced by the {@code directiveInterrupt}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveInterrupt(KickCParser.DirectiveInterruptContext ctx);
/**
* Visit a parse tree produced by the {@code directiveReserveZp}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveReserveZp(KickCParser.DirectiveReserveZpContext ctx);
/**
* Visit a parse tree produced by the {@code directiveCallingConvention}
* labeled alternative in {@link KickCParser#directive}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitDirectiveCallingConvention(KickCParser.DirectiveCallingConventionContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#stmtSeq}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtSeq(KickCParser.StmtSeqContext ctx);
/**
* Visit a parse tree produced by the {@code stmtDeclVar}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtDeclVar(KickCParser.StmtDeclVarContext ctx);
/**
* Visit a parse tree produced by the {@code stmtBlock}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtBlock(KickCParser.StmtBlockContext ctx);
/**
* Visit a parse tree produced by the {@code stmtExpr}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtExpr(KickCParser.StmtExprContext ctx);
/**
* Visit a parse tree produced by the {@code stmtIfElse}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtIfElse(KickCParser.StmtIfElseContext ctx);
/**
* Visit a parse tree produced by the {@code stmtWhile}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtWhile(KickCParser.StmtWhileContext ctx);
/**
* Visit a parse tree produced by the {@code stmtDoWhile}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtDoWhile(KickCParser.StmtDoWhileContext ctx);
/**
* Visit a parse tree produced by the {@code stmtFor}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtFor(KickCParser.StmtForContext ctx);
/**
* Visit a parse tree produced by the {@code stmtSwitch}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtSwitch(KickCParser.StmtSwitchContext ctx);
/**
* Visit a parse tree produced by the {@code stmtReturn}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtReturn(KickCParser.StmtReturnContext ctx);
/**
* Visit a parse tree produced by the {@code stmtBreak}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtBreak(KickCParser.StmtBreakContext ctx);
/**
* Visit a parse tree produced by the {@code stmtContinue}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtContinue(KickCParser.StmtContinueContext ctx);
/**
* Visit a parse tree produced by the {@code stmtAsm}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtAsm(KickCParser.StmtAsmContext ctx);
/**
* Visit a parse tree produced by the {@code stmtDeclKasm}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtDeclKasm(KickCParser.StmtDeclKasmContext ctx);
/**
* Visit a parse tree produced by the {@code stmtEmpty}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtEmpty(KickCParser.StmtEmptyContext ctx);
/**
* Visit a parse tree produced by the {@code stmtLabel}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtLabel(KickCParser.StmtLabelContext ctx);
/**
* Visit a parse tree produced by the {@code stmtGoto}
* labeled alternative in {@link KickCParser#stmt}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitStmtGoto(KickCParser.StmtGotoContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#switchCases}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitSwitchCases(KickCParser.SwitchCasesContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#switchCase}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitSwitchCase(KickCParser.SwitchCaseContext ctx);
/**
* Visit a parse tree produced by the {@code forClassic}
* labeled alternative in {@link KickCParser#forLoop}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitForClassic(KickCParser.ForClassicContext ctx);
/**
* Visit a parse tree produced by the {@code forRange}
* labeled alternative in {@link KickCParser#forLoop}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitForRange(KickCParser.ForRangeContext ctx);
/**
* Visit a parse tree produced by the {@code forClassicInitDecl}
* labeled alternative in {@link KickCParser#forClassicInit}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitForClassicInitDecl(KickCParser.ForClassicInitDeclContext ctx);
/**
* Visit a parse tree produced by the {@code forClassicInitExpr}
* labeled alternative in {@link KickCParser#forClassicInit}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitForClassicInitExpr(KickCParser.ForClassicInitExprContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#forClassicCondition}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitForClassicCondition(KickCParser.ForClassicConditionContext ctx);
/**
* Visit a parse tree produced by the {@code commaNone}
* labeled alternative in {@link KickCParser#commaExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitCommaNone(KickCParser.CommaNoneContext ctx);
/**
* Visit a parse tree produced by the {@code commaSimple}
* labeled alternative in {@link KickCParser#commaExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitCommaSimple(KickCParser.CommaSimpleContext ctx);
/**
* Visit a parse tree produced by the {@code exprPtr}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprPtr(KickCParser.ExprPtrContext ctx);
/**
* Visit a parse tree produced by the {@code exprTypeId}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprTypeId(KickCParser.ExprTypeIdContext ctx);
/**
* Visit a parse tree produced by the {@code exprPostMod}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprPostMod(KickCParser.ExprPostModContext ctx);
/**
* Visit a parse tree produced by the {@code exprUnary}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprUnary(KickCParser.ExprUnaryContext ctx);
/**
* Visit a parse tree produced by the {@code exprNumber}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprNumber(KickCParser.ExprNumberContext ctx);
/**
* Visit a parse tree produced by the {@code exprArrow}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprArrow(KickCParser.ExprArrowContext ctx);
/**
* Visit a parse tree produced by the {@code exprCast}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprCast(KickCParser.ExprCastContext ctx);
/**
* Visit a parse tree produced by the {@code exprPar}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprPar(KickCParser.ExprParContext ctx);
/**
* Visit a parse tree produced by the {@code exprId}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprId(KickCParser.ExprIdContext ctx);
/**
* Visit a parse tree produced by the {@code exprTernary}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprTernary(KickCParser.ExprTernaryContext ctx);
/**
* Visit a parse tree produced by the {@code exprAssignment}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprAssignment(KickCParser.ExprAssignmentContext ctx);
/**
* Visit a parse tree produced by the {@code exprPreMod}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprPreMod(KickCParser.ExprPreModContext ctx);
/**
* Visit a parse tree produced by the {@code exprBinary}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprBinary(KickCParser.ExprBinaryContext ctx);
/**
* Visit a parse tree produced by the {@code exprTypeIdType}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprTypeIdType(KickCParser.ExprTypeIdTypeContext ctx);
/**
* Visit a parse tree produced by the {@code exprChar}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprChar(KickCParser.ExprCharContext ctx);
/**
* Visit a parse tree produced by the {@code exprDot}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprDot(KickCParser.ExprDotContext ctx);
/**
* Visit a parse tree produced by the {@code exprSizeOfType}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprSizeOfType(KickCParser.ExprSizeOfTypeContext ctx);
/**
* Visit a parse tree produced by the {@code initList}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitInitList(KickCParser.InitListContext ctx);
/**
* Visit a parse tree produced by the {@code exprCall}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprCall(KickCParser.ExprCallContext ctx);
/**
* Visit a parse tree produced by the {@code exprSizeOf}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprSizeOf(KickCParser.ExprSizeOfContext ctx);
/**
* Visit a parse tree produced by the {@code exprString}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprString(KickCParser.ExprStringContext ctx);
/**
* Visit a parse tree produced by the {@code exprAssignmentCompound}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprAssignmentCompound(KickCParser.ExprAssignmentCompoundContext ctx);
/**
* Visit a parse tree produced by the {@code exprBool}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprBool(KickCParser.ExprBoolContext ctx);
/**
* Visit a parse tree produced by the {@code exprDefined}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprDefined(KickCParser.ExprDefinedContext ctx);
/**
* Visit a parse tree produced by the {@code exprArray}
* labeled alternative in {@link KickCParser#expr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitExprArray(KickCParser.ExprArrayContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#parameterList}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitParameterList(KickCParser.ParameterListContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#kasmContent}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitKasmContent(KickCParser.KasmContentContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#asmDirectives}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmDirectives(KickCParser.AsmDirectivesContext ctx);
/**
* Visit a parse tree produced by the {@code asmDirectiveString}
* labeled alternative in {@link KickCParser#asmDirective}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmDirectiveString(KickCParser.AsmDirectiveStringContext ctx);
/**
* Visit a parse tree produced by the {@code asmDirectiveName}
* labeled alternative in {@link KickCParser#asmDirective}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmDirectiveName(KickCParser.AsmDirectiveNameContext ctx);
/**
* Visit a parse tree produced by the {@code asmDirectiveExpr}
* labeled alternative in {@link KickCParser#asmDirective}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmDirectiveExpr(KickCParser.AsmDirectiveExprContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#asmLines}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmLines(KickCParser.AsmLinesContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#asmLine}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmLine(KickCParser.AsmLineContext ctx);
/**
* Visit a parse tree produced by the {@code asmLabelName}
* labeled alternative in {@link KickCParser#asmLabel}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmLabelName(KickCParser.AsmLabelNameContext ctx);
/**
* Visit a parse tree produced by the {@code asmLabelReplace}
* labeled alternative in {@link KickCParser#asmLabel}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmLabelReplace(KickCParser.AsmLabelReplaceContext ctx);
/**
* Visit a parse tree produced by the {@code asmLabelMulti}
* labeled alternative in {@link KickCParser#asmLabel}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmLabelMulti(KickCParser.AsmLabelMultiContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#asmInstruction}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmInstruction(KickCParser.AsmInstructionContext ctx);
/**
* Visit a parse tree produced by {@link KickCParser#asmBytes}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmBytes(KickCParser.AsmBytesContext ctx);
/**
* Visit a parse tree produced by the {@code asmModeAbs}
* labeled alternative in {@link KickCParser#asmParamMode}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmModeAbs(KickCParser.AsmModeAbsContext ctx);
/**
* Visit a parse tree produced by the {@code asmModeImm}
* labeled alternative in {@link KickCParser#asmParamMode}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmModeImm(KickCParser.AsmModeImmContext ctx);
/**
* Visit a parse tree produced by the {@code asmModeAbsXY}
* labeled alternative in {@link KickCParser#asmParamMode}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmModeAbsXY(KickCParser.AsmModeAbsXYContext ctx);
/**
* Visit a parse tree produced by the {@code asmModeIndIdxXY}
* labeled alternative in {@link KickCParser#asmParamMode}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmModeIndIdxXY(KickCParser.AsmModeIndIdxXYContext ctx);
/**
* Visit a parse tree produced by the {@code asmModeIndLongIdxXY}
* labeled alternative in {@link KickCParser#asmParamMode}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmModeIndLongIdxXY(KickCParser.AsmModeIndLongIdxXYContext ctx);
/**
* Visit a parse tree produced by the {@code asmModeSPIndIdx}
* labeled alternative in {@link KickCParser#asmParamMode}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmModeSPIndIdx(KickCParser.AsmModeSPIndIdxContext ctx);
/**
* Visit a parse tree produced by the {@code asmModeIdxIndXY}
* labeled alternative in {@link KickCParser#asmParamMode}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmModeIdxIndXY(KickCParser.AsmModeIdxIndXYContext ctx);
/**
* Visit a parse tree produced by the {@code asmModeInd}
* labeled alternative in {@link KickCParser#asmParamMode}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmModeInd(KickCParser.AsmModeIndContext ctx);
/**
* Visit a parse tree produced by the {@code asmModeIndLong}
* labeled alternative in {@link KickCParser#asmParamMode}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmModeIndLong(KickCParser.AsmModeIndLongContext ctx);
/**
* Visit a parse tree produced by the {@code asmExprReplace}
* labeled alternative in {@link KickCParser#asmExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmExprReplace(KickCParser.AsmExprReplaceContext ctx);
/**
* Visit a parse tree produced by the {@code asmExprLabelRel}
* labeled alternative in {@link KickCParser#asmExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmExprLabelRel(KickCParser.AsmExprLabelRelContext ctx);
/**
* Visit a parse tree produced by the {@code asmExprPar}
* labeled alternative in {@link KickCParser#asmExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmExprPar(KickCParser.AsmExprParContext ctx);
/**
* Visit a parse tree produced by the {@code asmExprBinary}
* labeled alternative in {@link KickCParser#asmExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmExprBinary(KickCParser.AsmExprBinaryContext ctx);
/**
* Visit a parse tree produced by the {@code asmExprLabel}
* labeled alternative in {@link KickCParser#asmExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmExprLabel(KickCParser.AsmExprLabelContext ctx);
/**
* Visit a parse tree produced by the {@code asmExprInt}
* labeled alternative in {@link KickCParser#asmExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmExprInt(KickCParser.AsmExprIntContext ctx);
/**
* Visit a parse tree produced by the {@code asmExprUnary}
* labeled alternative in {@link KickCParser#asmExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmExprUnary(KickCParser.AsmExprUnaryContext ctx);
/**
* Visit a parse tree produced by the {@code asmExprChar}
* labeled alternative in {@link KickCParser#asmExpr}.
* @param ctx the parse tree
* @return the visitor result
*/
T visitAsmExprChar(KickCParser.AsmExprCharContext ctx);
}