1
0
mirror of https://gitlab.com/camelot/kickc.git synced 2025-04-08 14:37:40 +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

@ -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>

@ -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>

@ -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>

@ -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>

@ -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>

@ -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>

@ -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>

@ -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>

@ -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>

@ -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>

@ -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>

@ -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

@ -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>

@ -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>

@ -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

@ -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

@ -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

@ -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 it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -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);
}