This commit is contained in:
nub31
2025-05-27 09:18:31 +02:00
parent cae1c03ed5
commit 2b666f168b
9 changed files with 347 additions and 284 deletions

View File

@@ -117,7 +117,7 @@ public class Parser
}
var body = ParseBlock();
var isGlobal = modifiers.RemoveAll(x => x.Modifier == Modifier.Global) > 0;
var exported = modifiers.RemoveAll(x => x.Modifier == Modifier.Export) > 0;
if (modifiers.Count != 0)
{
@@ -128,7 +128,7 @@ public class Parser
.Build());
}
return new LocalFuncDefinitionNode(GetTokensForNode(startIndex), documentation, name.Value, parameters, body, returnType, isGlobal);
return new LocalFuncDefinitionNode(GetTokensForNode(startIndex), documentation, name.Value, parameters, body, returnType, exported);
}
private StructDefinitionNode ParseStruct(int startIndex, List<ModifierToken> _, Optional<string> documentation)
@@ -414,6 +414,7 @@ public class Parser
{
case SymbolToken { Symbol: Symbol.DoubleColon }:
{
Next();
var name = ExpectIdentifier();
ExpectSymbol(Symbol.OpenParen);
var parameters = new List<ExpressionNode>();
@@ -435,6 +436,7 @@ public class Parser
}
case SymbolToken { Symbol: Symbol.OpenParen }:
{
Next();
var parameters = new List<ExpressionNode>();
while (!TryExpectSymbol(Symbol.CloseParen))
{