summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2026-01-13 04:10:54 +0100
committerAmlal El Mahrouss <amlal@nekernel.org>2026-01-13 04:10:54 +0100
commit68dcaf3c8909ae09e2197a069f0fb84cfd4a5444 (patch)
treeb79457c4739e3dc6251ea3076fb8a9bddaa2d4d5 /src
parent0d7337aef0eb32f49b25ea7ce7b12af727121381 (diff)
feat: Nectar specs V1, introduce LibGL.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'src')
-rw-r--r--src/CompilerKit/src/Compilers/NectarCompiler+AMD64.cc10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/CompilerKit/src/Compilers/NectarCompiler+AMD64.cc b/src/CompilerKit/src/Compilers/NectarCompiler+AMD64.cc
index 56ae555..825c5c2 100644
--- a/src/CompilerKit/src/Compilers/NectarCompiler+AMD64.cc
+++ b/src/CompilerKit/src/Compilers/NectarCompiler+AMD64.cc
@@ -568,7 +568,7 @@ CompilerKit::SyntaxLeafList::SyntaxLeaf CompilerFrontendNectarAMD64::Compile(
valueOfVar = text.substr(text.find("-=") + 2);
} else if (keyword.first.fKeywordKind ==
CompilerKit::KeywordKind::kKeywordKindVariableAssign) {
- valueOfVar = text.substr(text.find(":=") + 2);
+ valueOfVar = text.substr(text.find(keyword.first.fKeywordName) + keyword.first.fKeywordName.size());
} else if (keyword.first.fKeywordKind == CompilerKit::KeywordKind::kKeywordKindEndInstr) {
break;
}
@@ -591,7 +591,7 @@ CompilerKit::SyntaxLeafList::SyntaxLeaf CompilerFrontendNectarAMD64::Compile(
varName.erase(varName.find("-="));
} else if (keyword.first.fKeywordKind ==
CompilerKit::KeywordKind::kKeywordKindVariableAssign) {
- varName.erase(varName.find(":="));
+ varName.erase(varName.find(keyword.first.fKeywordName));
} else if (keyword.first.fKeywordKind == CompilerKit::KeywordKind::kKeywordKindEndInstr) {
varName.erase(varName.find(";"));
}
@@ -599,7 +599,7 @@ CompilerKit::SyntaxLeafList::SyntaxLeaf CompilerFrontendNectarAMD64::Compile(
static bool typeFound = false;
for (auto& keyword : kKeywords) {
- if (keyword.fKeywordKind == CompilerKit::KeywordKind::kKeywordKindType) {
+ if (keyword.fKeywordKind == CompilerKit::KeywordKind::kKeywordKindVariable) {
if (text.find(keyword.fKeywordName) != CompilerKit::STLString::npos) {
if (text[text.find(keyword.fKeywordName)] == ' ') {
typeFound = false;
@@ -625,7 +625,7 @@ CompilerKit::SyntaxLeafList::SyntaxLeaf CompilerFrontendNectarAMD64::Compile(
}
if (keyword.second > 0 && kKeywords[keyword.second - 1].fKeywordKind ==
- CompilerKit::KeywordKind::kKeywordKindType) {
+ CompilerKit::KeywordKind::kKeywordKindVariable) {
syntax_tree.fUserValue += "\n";
continue;
}
@@ -1222,13 +1222,13 @@ NECTAR_MODULE(CompilerNectarAMD64) {
kKeywords.emplace_back("struct", CompilerKit::KeywordKind::kKeywordKindClass);
kKeywords.emplace_back("{", CompilerKit::KeywordKind::kKeywordKindBodyStart);
kKeywords.emplace_back("}", CompilerKit::KeywordKind::kKeywordKindBodyEnd);
- kKeywords.emplace_back("let", CompilerKit::KeywordKind::kKeywordKindType);
kKeywords.emplace_back("(", CompilerKit::KeywordKind::kKeywordKindFunctionStart);
kKeywords.emplace_back(")", CompilerKit::KeywordKind::kKeywordKindFunctionEnd);
kKeywords.emplace_back(":=", CompilerKit::KeywordKind::kKeywordKindVariableAssign);
kKeywords.emplace_back("+=", CompilerKit::KeywordKind::kKeywordKindVariableInc);
kKeywords.emplace_back("-=", CompilerKit::KeywordKind::kKeywordKindVariableDec);
kKeywords.emplace_back("const", CompilerKit::KeywordKind::kKeywordKindConstant);
+ kKeywords.emplace_back("let", CompilerKit::KeywordKind::kKeywordKindVariable);
kKeywords.emplace_back("->", CompilerKit::KeywordKind::kKeywordKindPtrAccess);
kKeywords.emplace_back(".", CompilerKit::KeywordKind::kKeywordKindAccess);
kKeywords.emplace_back(",", CompilerKit::KeywordKind::kKeywordKindArgSeparator);