Skip to content

Commit 33b1c23

Browse files
committed
#142 - регистрация перегрузок функции с параметрами по умолчанию
1 parent a38f558 commit 33b1c23

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

src/Application/HydraScript.Application.StaticAnalysis/Visitors/DeclarationVisitor.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,14 @@ public VisitUnit Visit(FunctionDeclaration visitable)
119119
}
120120

121121
_symbolTables[visitable.Parent.Scope].AddSymbol(functionSymbol);
122+
if (indexOfFirstDefaultArgument is not -1)
123+
{
124+
for (var i = indexOfFirstDefaultArgument; i < visitable.Arguments.Count; i++)
125+
{
126+
var overload = new FunctionSymbolId(visitable.Name, parameters[..i].Select(x => x.Type));
127+
_symbolTables[visitable.Parent.Scope].AddSymbol(functionSymbol, overload);
128+
}
129+
}
122130
return visitable.Statements.Accept(This);
123131
}
124132
}

0 commit comments

Comments
 (0)